org.geotools.geometry.iso.primitive
Class SolidImpl
java.lang.Object
org.geotools.geometry.iso.root.GeometryImpl
org.geotools.geometry.iso.primitive.PrimitiveImpl
org.geotools.geometry.iso.primitive.SolidImpl
- All Implemented Interfaces:
- java.io.Serializable, org.opengis.geometry.Geometry, org.opengis.geometry.primitive.Primitive, org.opengis.geometry.primitive.Solid, org.opengis.geometry.TransfiniteSet
public class SolidImpl
- extends PrimitiveImpl
- implements org.opengis.geometry.primitive.Solid
Solid , a subclass of Primitive, is the basis for 3-dimensional geometry. The
globelExtent of a solid is defined by the boundary surfaces.
- Author:
- Jackson Roehrig & Sanjay Jena
- See Also:
- Serialized Form
Field Summary |
protected org.opengis.geometry.Envelope |
envelope
|
Constructor Summary |
SolidImpl(org.opengis.geometry.primitive.SolidBoundary boundary)
Since this standard is limited to 3-dimensional coordinate reference
systems, any solid is definable by its boundary. |
Method Summary |
double |
area()
The operation "area" shall return the sum of the surface areas of all of
the boundary components of a solid. |
SolidImpl |
clone()
|
int |
dimension(DirectPositionImpl point)
The method dimension returns the inherent dimension of
this Object, which is less than or equal to the coordinate dimension. |
double |
getArea()
|
org.opengis.geometry.primitive.SolidBoundary |
getBoundary()
The operation "boundary" specializes the boundary operation defined at
Object and at Primitive with the appropriate return type. |
int |
getDimension(org.opengis.geometry.DirectPosition point)
|
org.opengis.geometry.Envelope |
getEnvelope()
|
org.opengis.geometry.primitive.OrientablePrimitive[] |
getProxy()
|
org.opengis.geometry.DirectPosition |
getRepresentativePoint()
|
double |
getVolume()
|
boolean |
isSimple()
|
double |
volume()
The operation "volume" shall return the volume of this Solid. |
Methods inherited from class org.geotools.geometry.iso.root.GeometryImpl |
castToGeometryImpl, castToGeometryImpl, contains, contains, cRelate, crosses, difference, disjoint, distance, equals, getBuffer, getCentroid, getClosure, getConvexHull, getCoordinateDimension, getCoordinateReferenceSystem, getDistance, getMbRegion, getPositionFactory, getPrecision, intersection, intersects, isCycle, isMutable, overlaps, relate, symmetricDifference, toImmutable, touches, transform, transform, union, within |
Methods inherited from class java.lang.Object |
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.opengis.geometry.primitive.Primitive |
getComplexes, getComposite, getContainedPrimitives, getContainingPrimitives |
Methods inherited from interface org.opengis.geometry.Geometry |
distance, getBuffer, getCentroid, getClosure, getConvexHull, getCoordinateDimension, getCoordinateReferenceSystem, getMaximalComplex, getMbRegion, getPrecision, isCycle, isMutable, toImmutable, transform, transform |
Methods inherited from interface org.opengis.geometry.TransfiniteSet |
contains, contains, difference, equals, intersection, intersects, symmetricDifference, union |
envelope
protected org.opengis.geometry.Envelope envelope
SolidImpl
public SolidImpl(org.opengis.geometry.primitive.SolidBoundary boundary)
- Since this standard is limited to 3-dimensional coordinate reference
systems, any solid is definable by its boundary. The default constructor
for a Solid is from a properly structured set of Shells organized as a
SolidBoundary. Solid::Solid(boundary : SolidBoundary) : Solid
- Parameters:
boundary
-
area
public double area()
- The operation "area" shall return the sum of the surface areas of all of
the boundary components of a solid.
Solid::area() : Area
The class Set has a "column operation" called "area" that
accumulates the area of the components of the set. Using this, it can be
said that for a Solid; Solid: area() = boundary().area()
- Returns:
- Area
volume
public double volume()
- The operation "volume" shall return the volume of this Solid. This is the
volume interior to the exterior boundary shell minus the sum of the
volumes interior to any interior boundary shell.
Solid::volume() : Volume
- Returns:
- Volume
getBoundary
public org.opengis.geometry.primitive.SolidBoundary getBoundary()
- The operation "boundary" specializes the boundary operation defined at
Object and at Primitive with the appropriate return type. It shall return
a sequence of sets of Surfaces that limit the globelExtent of this Solid.
These surfaces shall be organized into one set of surfaces for each
boundary component of the Solid. Each of these shells shall be a cycle
(closed composite surface without boundary).
Solid::boundary() : SolidBoundary
NOTE The exterior shell of a solid is defined only because the embedding
coordinate space is always a 3D Euclidean one. In general, a solid in a
bounded 3-dimensional manifold has no distinguished exterior boundary. In
cases where "exterior" boundary is not well defined, all the shells of
the SolidBoundary shall be listed as "interior". The OrientableSurfaces
that bound a solid shall be oriented outward that is, the "top" of each
Surface as defined by its orientation shall face away from the interior
of the solid. Each Shell, when viewed as a composite surface, shall be a
cycle (see 6.2.2.6).
- Specified by:
getBoundary
in interface org.opengis.geometry.Geometry
- Specified by:
getBoundary
in interface org.opengis.geometry.primitive.Primitive
- Specified by:
getBoundary
in interface org.opengis.geometry.primitive.Solid
- Specified by:
getBoundary
in class PrimitiveImpl
- Returns:
- the solid boundary
dimension
public int dimension(DirectPositionImpl point)
- The method
dimension
returns the inherent dimension of
this Object, which is less than or equal to the coordinate dimension. The
dimension of a collection of geometric objects is the largest dimension
of any of its pieces. Points are 0-dimensional, curves are 1-dimensional,
surfaces are 2-dimensional, and solids are 3-dimensional. Locally, the
dimension of a geometric object at a point is the dimension of a local
neighborhood of the point - that is the dimension of any coordinate
neighborhood of the point. Dimension is unambiguously defined only for
DirectPositions interior to this Object. If the passed DirectPosition2D
is NULL, then the method returns the largest possible dimension for any
DirectPosition2D in this Object.
- Parameters:
point
- a DirectPosition2D
value
- Returns:
- an
int
value
clone
public SolidImpl clone()
throws java.lang.CloneNotSupportedException
- Specified by:
clone
in interface org.opengis.geometry.Geometry
- Specified by:
clone
in class GeometryImpl
- Throws:
java.lang.CloneNotSupportedException
getProxy
public org.opengis.geometry.primitive.OrientablePrimitive[] getProxy()
- Specified by:
getProxy
in interface org.opengis.geometry.primitive.Primitive
- Specified by:
getProxy
in interface org.opengis.geometry.primitive.Solid
- Specified by:
getProxy
in class PrimitiveImpl
isSimple
public boolean isSimple()
- Specified by:
isSimple
in interface org.opengis.geometry.Geometry
getArea
public double getArea()
- Specified by:
getArea
in interface org.opengis.geometry.primitive.Solid
getVolume
public double getVolume()
- Specified by:
getVolume
in interface org.opengis.geometry.primitive.Solid
getDimension
public int getDimension(org.opengis.geometry.DirectPosition point)
- Specified by:
getDimension
in interface org.opengis.geometry.Geometry
- Specified by:
getDimension
in class GeometryImpl
getEnvelope
public org.opengis.geometry.Envelope getEnvelope()
- Specified by:
getEnvelope
in interface org.opengis.geometry.Geometry
- Specified by:
getEnvelope
in class GeometryImpl
getRepresentativePoint
public org.opengis.geometry.DirectPosition getRepresentativePoint()
- Specified by:
getRepresentativePoint
in interface org.opengis.geometry.Geometry
- Specified by:
getRepresentativePoint
in class GeometryImpl
Copyright © 1996-2010 Geotools. All Rights Reserved.