SineStarFactory
public class GeometricShapeFactory
extends java.lang.Object
Example of usage:
GeometricShapeFactory gsf = new GeometricShapeFactory(); gsf.setSize(100); gsf.setNumPoints(100); gsf.setBase(new Coordinate(100, 100)); gsf.setRotation(0.5); Polygon rect = gsf.createRectangle();
Constructor | Description |
---|---|
GeometricShapeFactory() |
Create a shape factory which will create shapes using the default
GeometryFactory . |
GeometricShapeFactory(GeometryFactory geomFact) |
Create a shape factory which will create shapes using the given
GeometryFactory . |
Modifier and Type | Method | Description |
---|---|---|
LineString |
createArc(double startAng,
double angExtent) |
Creates an elliptical arc, as a
LineString . |
Polygon |
createArcPolygon(double startAng,
double angExtent) |
Creates an elliptical arc polygon.
|
Polygon |
createCircle() |
Creates a circular or elliptical
Polygon . |
Polygon |
createEllipse() |
Creates an elliptical
Polygon . |
Polygon |
createRectangle() |
Creates a rectangular
Polygon . |
Polygon |
createSquircle() |
Creates a squircular
Polygon . |
Polygon |
createSupercircle(double power) |
Creates a supercircular
Polygon
of a given positive power. |
void |
setBase(Coordinate base) |
Sets the location of the shape by specifying the base coordinate
(which in most cases is the
lower left point of the envelope containing the shape).
|
void |
setCentre(Coordinate centre) |
Sets the location of the shape by specifying the centre of
the shape's bounding box
|
void |
setEnvelope(Envelope env) |
|
void |
setHeight(double height) |
Sets the height of the shape.
|
void |
setNumPoints(int nPts) |
Sets the total number of points in the created
Geometry . |
void |
setRotation(double radians) |
Sets the rotation angle to use for the shape.
|
void |
setSize(double size) |
Sets the size of the extent of the shape in both x and y directions.
|
void |
setWidth(double width) |
Sets the width of the shape.
|
public GeometricShapeFactory()
GeometryFactory
.public GeometricShapeFactory(GeometryFactory geomFact)
GeometryFactory
.geomFact
- the factory to usepublic void setEnvelope(Envelope env)
public void setBase(Coordinate base)
base
- the base coordinate of the shapepublic void setCentre(Coordinate centre)
centre
- the centre coordinate of the shapepublic void setNumPoints(int nPts)
Geometry
.
The created geometry will have no more than this number of points,
unless more are needed to create a valid geometry.public void setSize(double size)
size
- the size of the shape's extentpublic void setWidth(double width)
width
- the width of the shapepublic void setHeight(double height)
height
- the height of the shapepublic void setRotation(double radians)
radians
- the rotation angle in radians.public Polygon createRectangle()
Polygon
.public Polygon createCircle()
Polygon
.public Polygon createEllipse()
Polygon
.
If the supplied envelope is square the
result will be a circle.public Polygon createSupercircle(double power)
Polygon
of a given positive power.public LineString createArc(double startAng, double angExtent)
LineString
.
The arc is always created in a counter-clockwise direction.
This can easily be reversed if required by using
{#link LineString.reverse()}startAng
- start angle in radiansangExtent
- size of angle in radianspublic Polygon createArcPolygon(double startAng, double angExtent)
startAng
- start angle in radiansangExtent
- size of angle in radiansCopyright © 2018. All rights reserved.