|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.deegree.geometry.SimpleGeometryFactory org.deegree.geometry.GeometryFactory
public class GeometryFactory
Augments the SimpleGeometryFactory
with additional methods for building complex Geometry
and
geometry-related objects (CurveSegment
s and SurfacePatch
es).
SimpleGeometryFactory
,
GeometryInspector
Field Summary |
---|
Fields inherited from class org.deegree.geometry.SimpleGeometryFactory |
---|
inspectors, pm |
Constructor Summary | |
---|---|
GeometryFactory()
|
|
GeometryFactory(PrecisionModel pm)
|
Method Summary | |
---|---|
Arc |
createArc(Point p1,
Point p2,
Point p3)
Creates an Arc curve segment. |
ArcByBulge |
createArcByBulge(Point p1,
Point p2,
double bulge,
Point normal)
Creates an ArcByBulge curve segment. |
ArcByCenterPoint |
createArcByCenterPoint(Point midPoint,
Length radius,
Angle startAngle,
Angle endAngle)
Creates an ArcByCenterPoint curve segment. |
ArcString |
createArcString(Points points)
Creates an ArcString curve segment. |
ArcStringByBulge |
createArcStringByBulge(Points points,
double[] bulges,
Points normals)
Creates an ArcStringByBulge curve segment. |
Bezier |
createBezier(Points points,
int degree,
Knot knot1,
Knot knot2)
Creates a Bezier curve segment. |
BSpline |
createBSpline(Points points,
int degree,
List<Knot> knots,
boolean isPolynomial)
Creates a BSpline curve segment. |
Circle |
createCircle(Point p1,
Point p2,
Point p3)
Creates a Circle curve segment. |
CircleByCenterPoint |
createCircleByCenterPoint(Point midPoint,
Length radius,
Angle startAngle)
Creates an CircleByCenterPoint curve segment. |
Clothoid |
createClothoid(AffinePlacement referenceLocation,
double scaleFactor,
double startParameter,
double endParameter)
Creates a Clothoid curve segment. |
CompositeCurve |
createCompositeCurve(String id,
ICRS crs,
List<Curve> members)
Creates a CompositeCurve from a list of passed Curve s. |
CompositeGeometry<GeometricPrimitive> |
createCompositeGeometry(String id,
ICRS crs,
List<GeometricPrimitive> memberPrimitives)
Creates a general CompositeGeometry from a list of primitive geometries. |
CompositeSolid |
createCompositeSolid(String id,
ICRS crs,
List<Solid> memberSolids)
Creates a CompositeSolid from a list of passed Solid s. |
CompositeSurface |
createCompositeSurface(String id,
ICRS crs,
List<Surface> memberSurfaces)
Creates a CompositeSurface from a list of passed Surface s. |
Cone |
createCone(List<Points> grid)
Creates a Cone surface patch. |
CubicSpline |
createCubicSpline(Points points,
Point vectorAtStart,
Point vectorAtEnd)
Creates a Clothoid curve segment. |
Curve |
createCurve(String id,
ICRS crs,
CurveSegment... segments)
Creates a segmented Curve from one or more CurveSegment s. |
Cylinder |
createCylinder(List<Points> grid)
Creates a Cylinder surface patch. |
Geodesic |
createGeodesic(Point p1,
Point p2)
Creates a Geodesic curve segment. |
GeodesicString |
createGeodesicString(Points points)
Creates a GeodesicString curve segment. |
GriddedSurfacePatch |
createGriddedSurfacePatch(List<Points> grid)
Creates a GriddedSurfacePatch from the given list of points, each element denotes a row in the grid. |
LinearRing |
createLinearRing(String id,
ICRS crs,
Points points)
Creates a simple LinearRing from a list of passed Point s. |
LineStringSegment |
createLineStringSegment(Points points)
Creates a LineStringSegment curve segment. |
MultiCurve |
createMultiCurve(String id,
ICRS crs,
List<Curve> members)
Creates a MultiCurve from a list of passed Curve s. |
MultiSolid |
createMultiSolid(String id,
ICRS crs,
List<Solid> members)
Creates a MultiSolid from a list of passed Solid s. |
MultiSurface |
createMultiSurface(String id,
ICRS crs,
List<Surface> members)
Creates a MultiSurface from a list of passed Surface s. |
OffsetCurve |
createOffsetCurve(Curve baseCurve,
Point direction,
Length distance)
Creates an OffsetCurve curve segment. |
OrientableCurve |
createOrientableCurve(String id,
ICRS crs,
Curve baseCurve,
boolean isReversed)
Creates an OrientableCurve . |
OrientableSurface |
createOrientableSurface(String id,
ICRS crs,
Surface baseSurface,
boolean isReversed)
Creates an OrientableSurface . |
PolygonPatch |
createPolygonPatch(Ring exteriorRing,
List<Ring> interiorRings)
Creates a PolygonPatch surface patch. |
PolyhedralSurface |
createPolyhedralSurface(String id,
ICRS crs,
List<PolygonPatch> memberPatches)
Creates a PolyhedralSurface . |
Rectangle |
createRectangle(LinearRing exterior)
Creates a Rectangle surface patch. |
Ring |
createRing(String id,
ICRS crs,
List<Curve> members)
Creates a Ring from a list of passed Curve s. |
Solid |
createSolid(String id,
ICRS crs,
Surface exteriorSurface,
List<Surface> interiorSurfaces)
Creates a Solid . |
Sphere |
createSphere(List<Points> grid)
Creates a Sphere surface patch. |
Surface |
createSurface(String id,
List<SurfacePatch> patches,
ICRS crs)
Creates a Surface that consists of a number of SurfacePatch instances. |
Tin |
createTin(String id,
ICRS crs,
List<List<LineStringSegment>> stopLines,
List<List<LineStringSegment>> breakLines,
Length maxLength,
Points controlPoints,
List<Triangle> patches)
Creates a Tin . |
Triangle |
createTriangle(LinearRing exterior)
Creates a Triangle surface patch. |
TriangulatedSurface |
createTriangulatedSurface(String id,
ICRS crs,
List<Triangle> memberPatches)
Creates a TriangulatedSurface . |
Methods inherited from class org.deegree.geometry.SimpleGeometryFactory |
---|
addInspector, createEnvelope, createEnvelope, createEnvelope, createLineString, createMultiGeometry, createMultiLineString, createMultiPoint, createMultiPolygon, createPoint, createPoint, createPoint, createPoints, createPolygon, inspect, inspect |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public GeometryFactory()
public GeometryFactory(PrecisionModel pm)
Method Detail |
---|
public Curve createCurve(String id, ICRS crs, CurveSegment... segments)
Curve
from one or more CurveSegment
s. The last Point
of segment
i
must equal the first Point
of segment i+1
.
id
- identifier of the new geometry instancecrs
- coordinate reference systemsegments
- segments a curve shall be created from
Curve
public LineStringSegment createLineStringSegment(Points points)
LineStringSegment
curve segment.
points
- points to create the LineStringSegment
from
CurveSegment
public Arc createArc(Point p1, Point p2, Point p3)
Arc
curve segment.
p1
- first control pointp2
- second control pointp3
- third control point
Arc
public ArcByBulge createArcByBulge(Point p1, Point p2, double bulge, Point normal)
ArcByBulge
curve segment.
p1
- first control pointp2
- second control pointbulge
- height of the arc (multiplier for the normals)normal
- normal vector, in 2D only one coordinate is necessary
ArcStringByBulge
public ArcByCenterPoint createArcByCenterPoint(Point midPoint, Length radius, Angle startAngle, Angle endAngle)
ArcByCenterPoint
curve segment.
midPoint
- radius
- startAngle
- endAngle
-
ArcByCenterPoint
public ArcString createArcString(Points points)
ArcString
curve segment.
points
- control points, must contain 2 * k + 1
points (k >= 1)
ArcString
public ArcStringByBulge createArcStringByBulge(Points points, double[] bulges, Points normals)
ArcStringByBulge
curve segment.
This variant of the arc computes the mid points of the arcs instead of storing the coordinates directly. The control point sequence consists of the start and end points of each arc plus the bulge.
points
- list of control points, must contain at least two pointsbulges
- heights of the arcs (multipliers for the normals)normals
- normal vectors
ArcStringByBulge
public Bezier createBezier(Points points, int degree, Knot knot1, Knot knot2)
Bezier
curve segment.
points
- list of control pointsdegree
- polynomial degree of the splineknot1
- first of the two knots that define the spline basis functionsknot2
- second of the two knots that define the spline basis functions
Bezier
public BSpline createBSpline(Points points, int degree, List<Knot> knots, boolean isPolynomial)
BSpline
curve segment.
points
- list of control pointsdegree
- polynomial degree of the splineknots
- sequence of distinct knots that define the spline basis functionsisPolynomial
- set to true if this is a polynomial spline, otherwise it's a rational spline
BSpline
public Circle createCircle(Point p1, Point p2, Point p3)
Circle
curve segment.
p1
- first control pointp2
- second control pointp3
- third control point
Arc
public CircleByCenterPoint createCircleByCenterPoint(Point midPoint, Length radius, Angle startAngle)
CircleByCenterPoint
curve segment.
midPoint
- radius
- startAngle
-
CircleByCenterPoint
public Geodesic createGeodesic(Point p1, Point p2)
Geodesic
curve segment.
p1
- first control pointp2
- second control point
Geodesic
public GeodesicString createGeodesicString(Points points)
GeodesicString
curve segment.
points
- control points, at least two
GeodesicString
public OffsetCurve createOffsetCurve(Curve baseCurve, Point direction, Length distance)
OffsetCurve
curve segment.
baseCurve
- the base geometrydirection
- the direction of the offsetdistance
- the distance from the base curve
GeodesicString
public Surface createSurface(String id, List<SurfacePatch> patches, ICRS crs)
Surface
that consists of a number of SurfacePatch
instances. The passed patches must
touch in a topological sense to form a valid Surface
.
id
- identifier of the new geometry instancepatches
- patches to create a surfacecrs
- coordinate reference system, may be null
Surface
public PolygonPatch createPolygonPatch(Ring exteriorRing, List<Ring> interiorRings)
PolygonPatch
surface patch.
exteriorRing
- ring that defines the outer boundary, this may be null (see section 9.2.2.5 of GML spec)interiorRings
- list of rings that define the inner boundaries, may be empty or null
PolygonPatch
public Ring createRing(String id, ICRS crs, List<Curve> members)
Ring
from a list of passed Curve
s.
id
- identifier, may be nullcrs
- coordinate reference system, may be nullmembers
- the Curve
s that compose the Ring
Ring
public LinearRing createLinearRing(String id, ICRS crs, Points points)
LinearRing
from a list of passed Point
s.
id
- identifier, may be nullcrs
- coordinate reference system, may be nullpoints
- control points
Ring
public OrientableCurve createOrientableCurve(String id, ICRS crs, Curve baseCurve, boolean isReversed)
OrientableCurve
.
id
- identifier, may be nullcrs
- coordinate reference system, may be nullbaseCurve
- base curveisReversed
- set to true, if the orientation of the base curve shall be reversed in the created geometry
OrientableCurve
public Triangle createTriangle(LinearRing exterior)
Triangle
surface patch.
exterior
- ring that contains exactly four planar points, the first and last point must be coincident
Triangle
public Rectangle createRectangle(LinearRing exterior)
Rectangle
surface patch.
exterior
- ring that contains exactly five planar points, the first and last point must match
Rectangle
public OrientableSurface createOrientableSurface(String id, ICRS crs, Surface baseSurface, boolean isReversed)
OrientableSurface
.
id
- identifier, may be nullcrs
- coordinate reference system, may be nullbaseSurface
- base surfaceisReversed
- set to true, if the orientation of the base surface shall be reversed
OrientableCurve
public PolyhedralSurface createPolyhedralSurface(String id, ICRS crs, List<PolygonPatch> memberPatches)
PolyhedralSurface
.
id
- identifier, may be nullcrs
- coordinate reference system, may be nullmemberPatches
- patches that constitute the surface
PolyhedralSurface
public TriangulatedSurface createTriangulatedSurface(String id, ICRS crs, List<Triangle> memberPatches)
TriangulatedSurface
.
id
- identifier, may be nullcrs
- coordinate reference system, may be nullmemberPatches
- patches that constitute the surface
TriangulatedSurface
public Tin createTin(String id, ICRS crs, List<List<LineStringSegment>> stopLines, List<List<LineStringSegment>> breakLines, Length maxLength, Points controlPoints, List<Triangle> patches)
Tin
.
id
- identifier, may be nullcrs
- coordinate reference system, may be nullstopLines
- breakLines
- maxLength
- controlPoints
- patches
-
Tin
public Clothoid createClothoid(AffinePlacement referenceLocation, double scaleFactor, double startParameter, double endParameter)
Clothoid
curve segment.
referenceLocation
- the affine mapping that places the curve defined by the Fresnel Integrals into the coordinate
reference system of this objectscaleFactor
- the value for the constant in the Fresnel's integralsstartParameter
- the arc length distance from the inflection point that will be the start point for this curve segmentendParameter
- the arc length distance from the inflection point that will be the end point for this curve segment
Clothoid
public Cone createCone(List<Points> grid)
Cone
surface patch.
grid
- the grid of control points that defines the Cone
Cone
public Cylinder createCylinder(List<Points> grid)
Cylinder
surface patch.
grid
- the grid of control points that defines the Cylinder
Cylinder
public Sphere createSphere(List<Points> grid)
Sphere
surface patch.
grid
- the grid of control points that defines the Sphere
Sphere
public CubicSpline createCubicSpline(Points points, Point vectorAtStart, Point vectorAtEnd)
Clothoid
curve segment.
points
- control points, at least twovectorAtStart
- the unit tangent vector at the start point of the splinevectorAtEnd
- the unit tangent vector at the end point of the spline
Clothoid
public Solid createSolid(String id, ICRS crs, Surface exteriorSurface, List<Surface> interiorSurfaces)
Solid
.
id
- identifier, may be nullcrs
- coordinate reference system, may be nullexteriorSurface
- the exterior surface (shell) of the solid, may be nullinteriorSurfaces
- the interior surfaces of the solid, may be null or empty
Solid
public MultiCurve createMultiCurve(String id, ICRS crs, List<Curve> members)
MultiCurve
from a list of passed Curve
s.
id
- identifier, may be nullcrs
- coordinate reference system, may be nullmembers
- curves that constitute the collection
MultiCurve
public MultiSurface createMultiSurface(String id, ICRS crs, List<Surface> members)
MultiSurface
from a list of passed Surface
s.
id
- identifier, may be nullcrs
- coordinate reference system, may be nullmembers
- surfaces that constitute the collection
MultiSurface
public MultiSolid createMultiSolid(String id, ICRS crs, List<Solid> members)
MultiSolid
from a list of passed Solid
s.
id
- identifier, may be nullcrs
- coordinate reference system, may be nullmembers
- solids that constitute the collection
MultiSolid
public CompositeCurve createCompositeCurve(String id, ICRS crs, List<Curve> members)
CompositeCurve
from a list of passed Curve
s.
id
- identifier, may be nullcrs
- coordinate reference system, may be nullmembers
- curves that constitute the composited curve, each curve must end at the start point of the subsequent
curve in the list
CompositeCurve
public CompositeSurface createCompositeSurface(String id, ICRS crs, List<Surface> memberSurfaces)
CompositeSurface
from a list of passed Surface
s.
id
- identifier, may be nullcrs
- coordinate reference system, may be nullmemberSurfaces
- surfaces that constitute the composited surface, the surfaces must join in pairs on common boundary
curves and must, when considered as a whole, form a single surface
CompositeSurface
public CompositeSolid createCompositeSolid(String id, ICRS crs, List<Solid> memberSolids)
CompositeSolid
from a list of passed Solid
s.
id
- identifier, may be nullcrs
- coordinate reference system, may be nullmemberSolids
- solids that constitute the composited solid, the solids must join in pairs on common boundary surfaces
and which, when considered as a whole, form a single solid
CompositeSolid
public CompositeGeometry<GeometricPrimitive> createCompositeGeometry(String id, ICRS crs, List<GeometricPrimitive> memberPrimitives)
CompositeGeometry
from a list of primitive geometries.
id
- identifier, may be nullcrs
- coordinate reference system, may be nullmemberPrimitives
-
CompositeGeometry
public GriddedSurfacePatch createGriddedSurfacePatch(List<Points> grid)
GriddedSurfacePatch
from the given list of points, each element denotes a row in the grid.
grid
- containing the rows of the grid.
GriddedSurfacePatch
.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |