public class Circle extends Object implements Shape
| Modifier and Type | Field and Description |
|---|---|
protected Point2d |
centre |
protected float |
radius |
| Constructor and Description |
|---|
Circle(Circle c)
Construct a circle with the given circle
|
Circle(float x,
float y,
float radius)
Construct a circle with the given position and radius
|
Circle(Point2d centre,
float radius)
Construct a circle with the given position and radius
|
| Modifier and Type | Method and Description |
|---|---|
Polygon |
asPolygon()
Convert the shape to a polygon representation
|
double |
calculateArea()
Calculate the area of the shape
|
Point2d |
calculateCentroid()
Calculate the centroid of the shape
|
double |
calculatePerimeter()
Calculate the perimeter of the shape
|
Rectangle |
calculateRegularBoundingBox()
Compute the regular (oriented to the axes) bounding box of the shape.
|
Circle |
clone() |
boolean |
equals(Object obj) |
double |
getHeight() |
float |
getRadius() |
double |
getWidth() |
float |
getX() |
float |
getY() |
double |
intersectionArea(Shape that)
Calls
Polygon.intersectionArea(Shape, int) with 1 step per pixel
dimension. |
double |
intersectionArea(Shape that,
int nStepsPerDimention)
Return an estimate for the area of the intersection of this polygon and
another polygon.
|
boolean |
isConvex()
Test if the shape is convex.
|
boolean |
isInside(Point2d point)
Test whether the point p is inside the shape.
|
double |
maxX() |
double |
maxY() |
RotatedRectangle |
minimumBoundingRectangle()
Compute the minimum size rotated bounding rectangle that contains this
shape.
|
double |
minX() |
double |
minY() |
void |
scale(float sc)
Scale the shape by the given amount about (0,0).
|
void |
scale(Point2d centre,
float sc)
Scale the shape by the given amount about the given point.
|
void |
scaleCentroid(float sc)
Scale the shape about its centroid.
|
void |
setRadius(float r)
Set the radius of the circle.
|
void |
setX(float x)
Set the x-ordinate of the centre of the circle.
|
void |
setY(float y)
Set the y-ordinate of the centre of the circle.
|
String |
toString() |
Shape |
transform(Jama.Matrix transform)
Apply a 3x3 transform matrix to a copy of the
GeometricObject and
return it |
void |
translate(float x,
float y)
Translate the shapes position
|
public Circle(float x, float y, float radius)
x - the x-coordinate of the centrey - the y-coordinate of the centreradius - the radiuspublic Circle(Point2d centre, float radius)
centre - the coordinate of the centreradius - the radiuspublic boolean isInside(Point2d point)
Shapepublic Rectangle calculateRegularBoundingBox()
GeometricObjectcalculateRegularBoundingBox in interface GeometricObjectpublic void translate(float x, float y)
GeometricObjecttranslate in interface GeometricObjectx - x-translationy - y-translationpublic void scale(float sc)
GeometricObjectscale in interface GeometricObjectsc - the scale factor.public void scale(Point2d centre, float sc)
GeometricObjectscale in interface GeometricObjectcentre - the centre of the scaling operationsc - the scale factorpublic void scaleCentroid(float sc)
GeometricObjectscaleCentroid in interface GeometricObjectsc - the scale factorpublic Point2d calculateCentroid()
GeometricObjectcalculateCentroid in interface GeometricObjectpublic double calculateArea()
ShapecalculateArea in interface Shapepublic double minX()
minX in interface GeometricObjectpublic double minY()
minY in interface GeometricObjectpublic double maxX()
maxX in interface GeometricObjectpublic double maxY()
maxY in interface GeometricObjectpublic double getWidth()
getWidth in interface GeometricObjectpublic double getHeight()
getHeight in interface GeometricObjectpublic Shape transform(Jama.Matrix transform)
ShapeGeometricObject and
return ittransform in interface GeometricObjecttransform in interface Shapetransform - 3x3 transform matrixpublic Polygon asPolygon()
Shapepublic void setX(float x)
x - The x-ordinatepublic void setY(float y)
y - The y-ordinatepublic void setRadius(float r)
r - The radius.public float getX()
public float getY()
public float getRadius()
public double intersectionArea(Shape that)
ShapePolygon.intersectionArea(Shape, int) with 1 step per pixel
dimension. Subsequently this function returns the shared whole pixels of
this polygon and that.intersectionArea in interface Shapepublic double intersectionArea(Shape that, int nStepsPerDimention)
ShapeintersectionArea in interface Shapepublic double calculatePerimeter()
ShapecalculatePerimeter in interface Shapepublic RotatedRectangle minimumBoundingRectangle()
ShapeminimumBoundingRectangle in interface Shape