org.geotools.geometry.iso.complex
Class CompositeSurfaceImpl

java.lang.Object
  extended by org.geotools.geometry.iso.root.GeometryImpl
      extended by org.geotools.geometry.iso.complex.ComplexImpl
          extended by org.geotools.geometry.iso.complex.CompositeImpl<OrientableSurfaceImpl>
              extended by org.geotools.geometry.iso.complex.CompositeSurfaceImpl
All Implemented Interfaces:
java.io.Serializable, org.opengis.geometry.complex.Complex, org.opengis.geometry.complex.Composite, org.opengis.geometry.complex.CompositeSurface, org.opengis.geometry.Geometry, org.opengis.geometry.primitive.OrientablePrimitive, org.opengis.geometry.primitive.OrientableSurface, org.opengis.geometry.primitive.Primitive, org.opengis.geometry.TransfiniteSet
Direct Known Subclasses:
ShellImpl

public class CompositeSurfaceImpl
extends CompositeImpl<OrientableSurfaceImpl>
implements org.opengis.geometry.complex.CompositeSurface

A composite surface, CompositeSurface (Figure 29) shall be a Complex with all the geometric properties of a surface, and thus can be considered as a type of orientable surface (OrientableSurface). Essentially, a composite surface is a collection of oriented surfaces that join in pairs on common boundary curves and which, when considered as a whole, form a single surface.

Author:
Jackson Roehrig & Sanjay Jena
See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.geotools.geometry.iso.complex.ComplexImpl
elements
 
Fields inherited from class org.geotools.geometry.iso.root.GeometryImpl
crs, percision
 
Constructor Summary
CompositeSurfaceImpl(java.util.List<? extends org.opengis.geometry.primitive.OrientableSurface> generator)
          Generator The association role Composition::generator associates this CompositeSurface to the primitive Surfaces and OrientableSurfaces in its generating set, a list of the Surfaces that form the core of this complex.
 
Method Summary
 CompositeSurfaceImpl clone()
           
 java.util.Set<org.opengis.geometry.complex.Complex> createBoundary()
           
 org.opengis.geometry.primitive.SurfaceBoundary getBoundary()
           
 java.util.Set getComplexes()
           
 org.opengis.geometry.complex.CompositeSurface getComposite()
           
 java.util.Set getContainedPrimitives()
           
 java.util.Set getContainingPrimitives()
           
 int getDimension(org.opengis.geometry.DirectPosition point)
           
 org.opengis.geometry.Envelope getEnvelope()
           
 java.lang.Class getGeneratorClass()
           
 java.util.Set<org.opengis.geometry.primitive.OrientableSurface> getGenerators()
           
 int getOrientation()
           
 org.opengis.geometry.primitive.Surface getPrimitive()
           
 org.opengis.geometry.primitive.OrientablePrimitive[] getProxy()
           
 org.opengis.geometry.DirectPosition getRepresentativePoint()
           
 boolean isSimple()
           
 
Methods inherited from class org.geotools.geometry.iso.complex.ComplexImpl
addSubComplex, addSuperComplex, getElements, getMaximalComplex, getSubComplexes, getSuperComplexes, isMaximal, setElements
 
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.complex.Complex
getElements, getSubComplexes, getSuperComplexes, isMaximal
 
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
 

Constructor Detail

CompositeSurfaceImpl

public CompositeSurfaceImpl(java.util.List<? extends org.opengis.geometry.primitive.OrientableSurface> generator)
Generator The association role Composition::generator associates this CompositeSurface to the primitive Surfaces and OrientableSurfaces in its generating set, a list of the Surfaces that form the core of this complex. CompositeSurface::generator : Set NOTE To get a full representation of the elements in the Complex, the Curves and Points on the boundary of the generator set of Surfaces would be added to the curves in the generator list.

Parameters:
generator -
Method Detail

getBoundary

public org.opengis.geometry.primitive.SurfaceBoundary getBoundary()
Specified by:
getBoundary in interface org.opengis.geometry.Geometry
Specified by:
getBoundary in interface org.opengis.geometry.primitive.OrientableSurface
Specified by:
getBoundary in interface org.opengis.geometry.primitive.Primitive
Specified by:
getBoundary in class GeometryImpl

getGeneratorClass

public java.lang.Class getGeneratorClass()
Specified by:
getGeneratorClass in class CompositeImpl<OrientableSurfaceImpl>
Returns:
the class

createBoundary

public java.util.Set<org.opengis.geometry.complex.Complex> createBoundary()
Specified by:
createBoundary in class ComplexImpl
Returns:
Set

clone

public CompositeSurfaceImpl clone()
                           throws java.lang.CloneNotSupportedException
Specified by:
clone in interface org.opengis.geometry.Geometry
Specified by:
clone in class GeometryImpl
Throws:
java.lang.CloneNotSupportedException

getGenerators

public java.util.Set<org.opengis.geometry.primitive.OrientableSurface> getGenerators()
Specified by:
getGenerators in interface org.opengis.geometry.complex.Composite
Specified by:
getGenerators in interface org.opengis.geometry.complex.CompositeSurface

isSimple

public boolean isSimple()
Specified by:
isSimple in interface org.opengis.geometry.Geometry

getComposite

public org.opengis.geometry.complex.CompositeSurface getComposite()
Specified by:
getComposite in interface org.opengis.geometry.primitive.OrientableSurface
Specified by:
getComposite in interface org.opengis.geometry.primitive.Primitive

getOrientation

public int getOrientation()
Specified by:
getOrientation in interface org.opengis.geometry.primitive.OrientablePrimitive

getPrimitive

public org.opengis.geometry.primitive.Surface getPrimitive()
Specified by:
getPrimitive in interface org.opengis.geometry.primitive.OrientablePrimitive
Specified by:
getPrimitive in interface org.opengis.geometry.primitive.OrientableSurface

getContainedPrimitives

public java.util.Set getContainedPrimitives()
Specified by:
getContainedPrimitives in interface org.opengis.geometry.primitive.Primitive

getContainingPrimitives

public java.util.Set getContainingPrimitives()
Specified by:
getContainingPrimitives in interface org.opengis.geometry.primitive.Primitive

getComplexes

public java.util.Set getComplexes()
Specified by:
getComplexes in interface org.opengis.geometry.primitive.Primitive

getProxy

public org.opengis.geometry.primitive.OrientablePrimitive[] getProxy()
Specified by:
getProxy in interface org.opengis.geometry.primitive.Primitive

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.