public class Circle extends Object
Date: Oct 15, 2007
Modifier and Type | Class and Description |
---|---|
class |
Circle.Arc |
Modifier | Constructor and Description |
---|---|
protected |
Circle()
Creates a circle whose center is at the origin and whose radius is 0.
|
|
Circle(Coordinate point1,
Coordinate point2,
Coordinate point3)
Three point method of circle construction.
|
|
Circle(Coordinate center,
double radius)
Create a circle with a defined center and radius
|
|
Circle(double xCenter,
double yCenter,
double radius)
Create a circle using the x/y coordinates for the center.
|
|
Circle(double xLeft,
double yUpper,
double xRight,
double yLower)
Creates a circle based on bounding box.
|
|
Circle(double x1,
double y1,
double x2,
double y2,
double x3,
double y3)
Three point method of circle construction.
|
Modifier and Type | Method and Description |
---|---|
Circle.Arc |
createArc(Coordinate p1,
Coordinate p2,
Coordinate p3) |
double |
distanceFromCenter(Coordinate p) |
boolean |
equals(Object o) |
double |
getAngle(Coordinate p)
Returns the angle of the point from the center and the horizontal line from the center.
|
Coordinate |
getCenter() |
Coordinate |
getPoint(double angle) |
double |
getRadius() |
int |
hashCode() |
Coordinate[] |
linearizeArc(Coordinate p1,
Coordinate p2,
Coordinate p3,
double tolerence)
Given 2 points defining an arc on the circle, interpolates the circle into a collection of
points that provide connected chords that approximate the arc based on the tolerance value.
|
static Coordinate[] |
linearizeArc(double x1,
double y1,
double x2,
double y2,
double x3,
double y3)
Given 2 points defining an arc on the circle, interpolates the circle into a collection of
points that provide connected chords that approximate the arc based on the tolerance value.
|
static Coordinate[] |
linearizeArc(double x1,
double y1,
double x2,
double y2,
double x3,
double y3,
double tolerence)
Given 2 points defining an arc on the circle, interpolates the circle into a collection of
points that provide connected chords that approximate the arc based on the tolerance value.
|
static Coordinate[] |
linearizeCircle(Coordinate p1,
Coordinate p2,
Coordinate p3,
double tolerance)
Given a circle defined by the 3 points, creates a linearized interpolation of the circle
starting and ending on the first coordinate.
|
static Coordinate[] |
linearizeCircle(double x1,
double y1,
double x2,
double y2,
double x3,
double y3)
Given a circle defined by the 3 points, creates a linearized interpolation of the circle
starting and ending on the first coordinate.
|
void |
move(double x,
double y)
Move the circle to a new center
|
static double |
normalizeAngle(double angle)
Returns an angle between 0 and 2*PI.
|
void |
shift(double deltaX,
double deltaY)
shift the center of the circle by delta X and delta Y
|
static double |
subtractAngles(double a1,
double a2)
Returns the angle between the angles a1 and a2 in radians.
|
String |
toString() |
protected Circle()
public Circle(Coordinate center, double radius)
center
- The coordinate representing the center of the circleradius
- The radius of the circlepublic Circle(double xCenter, double yCenter, double radius)
xCenter
- The x coordinate of the circle's centeryCenter
- The y coordinate of the circle's centerradius
- the radius of the circlepublic Circle(double xLeft, double yUpper, double xRight, double yLower)
public Circle(Coordinate point1, Coordinate point2, Coordinate point3)
public Circle(double x1, double y1, double x2, double y2, double x3, double y3)
public void shift(double deltaX, double deltaY)
public void move(double x, double y)
public Coordinate getCenter()
public double getRadius()
public static Coordinate[] linearizeArc(double x1, double y1, double x2, double y2, double x3, double y3, double tolerence)
x1
- x coordinate of point 1y1
- y coordinate of point 1x2
- x coordinate of point 2y2
- y coordinate of point 2x3
- x coordinate of point 3y3
- y coordinate of point 3tolerence
- maximum distance between the center of the chord and the outer edge of the
circlepublic static Coordinate[] linearizeArc(double x1, double y1, double x2, double y2, double x3, double y3)
x1
- x coordinate of point 1y1
- y coordinate of point 1x2
- x coordinate of point 2y2
- y coordinate of point 2x3
- x coordinate of point 3y3
- y coordinate of point 3public static Coordinate[] linearizeCircle(double x1, double y1, double x2, double y2, double x3, double y3)
x1
- x coordinate of point 1y1
- y coordinate of point 1x2
- x coordinate of point 2y2
- y coordinate of point 2x3
- x coordinate of point 3y3
- y coordinate of point 3public static Coordinate[] linearizeCircle(Coordinate p1, Coordinate p2, Coordinate p3, double tolerance)
p1
- coordinate on the circlep2
- another coordinate on the circlep3
- yet another coordinate on the circletolerance
- maximum distance between the center of the chord and the outer edge of the
circlepublic Coordinate[] linearizeArc(Coordinate p1, Coordinate p2, Coordinate p3, double tolerence)
p1
- begin coordinate of the arcp2
- any other point on the arcp3
- end coordinate of the arctolerence
- maximum distance between the center of the chord and the outer edge of the
circlepublic double getAngle(Coordinate p)
p
- a point in spacepublic Coordinate getPoint(double angle)
public double distanceFromCenter(Coordinate p)
p
- A point in spacepublic Circle.Arc createArc(Coordinate p1, Coordinate p2, Coordinate p3)
public static double normalizeAngle(double angle)
angle
- an angle in radians to normalizepublic static double subtractAngles(double a1, double a2)
a1
- first anglea2
- second angleCopyright © 1996–2023 Geotools. All rights reserved.