// Path: src/main/java/com/orange/dgil/trail/android/drawingtool/InvalidateArea.java
// @Getter
// @Setter
// public class InvalidateArea {
//   private final Rect rect = new Rect();
//   private int radius;
// 
//   public void setOrigin(int x, int y) {
//     rect.set(x - radius, y - radius, x + radius, y + radius);
//   }
//   public void setOrigin(Point p) {
//     setOrigin(p.x, p.y);
//   }
// 
//   public void add(int x, int y) {
//     rect.union(x - radius, y - radius, x + radius, y + radius);
//   }
//   public void add(Point p) {
//     add(p.x, p.y);
//   }
// 
//   public void setEmpty() {
//     rect.setEmpty();
//   }
// }
// 
// Path: src/main/java/com/orange/dgil/trail/core/common/TrailPoint.java
// @Getter
// @NoArgsConstructor
// public class TrailPoint {
//   private int x = -1;
//   private int y = -1;
// 
//   public TrailPoint(int x, int y) {
//     set(x, y);
//   }
// 
//   public void set(int x, int y) {
//     this.x = x;
//     this.y = y;
//   }
// 
//   public boolean isSameAs(TrailPoint point) {
//     return x == point.x && y == point.y;
//   }
// 
//   public double getDistanceTo(TrailPoint point) {
//     int dx = x - point.getX();
//     int dy = y - point.getY();
//     return Math.sqrt(dx * dx + dy * dy);
//   }
// 
//   public void deepCopy(TrailPoint point) {
//     x = point.x;
//     y = point.y;
//   }
// }
// 
// Path: src/main/java/com/orange/dgil/trail/core/common/TrailRect.java
// @Getter
// public class TrailRect {
//   private int left;
//   private int top;
//   private int right;
//   private int bottom;
// 
//   public void initAtPoint(int x, int y) {
//     left = x;
//     top = y;
//     right = x;
//     bottom = y;
//   }
// 
//   public void union(int x, int y) {
//     left = Math.min(left, x);
//     right = Math.max(right, x);
//     top = Math.min(top, y);
//     bottom = Math.max(bottom, y);
//   }
// }


import android.view.View;
import com.orange.dgil.trail.android.drawingtool.InvalidateArea;
import com.orange.dgil.trail.core.common.TrailPoint;
import com.orange.dgil.trail.core.common.TrailRect;
import lombok.RequiredArgsConstructor;
/**
 * Trail drawing library
 * Copyright (C) 2014 Orange
 * Authors: christophe.maldivi@orange.com, eric.petit@orange.com
 *
 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
 */
package com.orange.dgil.trail.android.drawingtool.quillpen;




@RequiredArgsConstructor
class TrailBounds {

  private final QuillParameters quillParameters;
// Path: src/main/java/com/orange/dgil/trail/android/drawingtool/InvalidateArea.java
// @Getter
// @Setter
// public class InvalidateArea {
//   private final Rect rect = new Rect();
//   private int radius;
// 
//   public void setOrigin(int x, int y) {
//     rect.set(x - radius, y - radius, x + radius, y + radius);
//   }
//   public void setOrigin(Point p) {
//     setOrigin(p.x, p.y);
//   }
// 
//   public void add(int x, int y) {
//     rect.union(x - radius, y - radius, x + radius, y + radius);
//   }
//   public void add(Point p) {
//     add(p.x, p.y);
//   }
// 
//   public void setEmpty() {
//     rect.setEmpty();
//   }
// }
// 
// Path: src/main/java/com/orange/dgil/trail/core/common/TrailPoint.java
// @Getter
// @NoArgsConstructor
// public class TrailPoint {
//   private int x = -1;
//   private int y = -1;
// 
//   public TrailPoint(int x, int y) {
//     set(x, y);
//   }
// 
//   public void set(int x, int y) {
//     this.x = x;
//     this.y = y;
//   }
// 
//   public boolean isSameAs(TrailPoint point) {
//     return x == point.x && y == point.y;
//   }
// 
//   public double getDistanceTo(TrailPoint point) {
//     int dx = x - point.getX();
//     int dy = y - point.getY();
//     return Math.sqrt(dx * dx + dy * dy);
//   }
// 
//   public void deepCopy(TrailPoint point) {
//     x = point.x;
//     y = point.y;
//   }
// }
// 
// Path: src/main/java/com/orange/dgil/trail/core/common/TrailRect.java
// @Getter
// public class TrailRect {
//   private int left;
//   private int top;
//   private int right;
//   private int bottom;
// 
//   public void initAtPoint(int x, int y) {
//     left = x;
//     top = y;
//     right = x;
//     bottom = y;
//   }
// 
//   public void union(int x, int y) {
//     left = Math.min(left, x);
//     right = Math.max(right, x);
//     top = Math.min(top, y);
//     bottom = Math.max(bottom, y);
//   }
// }


// Path: src/main/java/com/orange/dgil/trail/android/drawingtool/quillpen/TrailBounds.java
import android.view.View;
import com.orange.dgil.trail.android.drawingtool.InvalidateArea;
import com.orange.dgil.trail.core.common.TrailPoint;
import com.orange.dgil.trail.core.common.TrailRect;
import lombok.RequiredArgsConstructor;

/**
 * Trail drawing library
 * Copyright (C) 2014 Orange
 * Authors: christophe.maldivi@orange.com, eric.petit@orange.com
 *
 * This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
 */
package com.orange.dgil.trail.android.drawingtool.quillpen;




@RequiredArgsConstructor
class TrailBounds {

  private final QuillParameters quillParameters;
  private final TrailRect trailRect;