## org.opengis.geometry.primitive
Interface Solid

All Superinterfaces:
  Geometry, Primitive, TransfiniteSet

All Known Subinterfaces:
  CompositeSolid

    @UML(identifier="GM_Solid",
         specification=ISO_19107)
    public interface Solid

extends Primitive

Basis for 3-dimensional geometry. The extent of a solid is defined by the boundary surfaces.

Since:
  GeoAPI 1.0
Version:
  ISO 19107
See Also:
  `PrimitiveFactory.createSolid(org.opengis.geometry.primitive.SolidBoundary)`
TODO:
  Some associations are commented out for now.

Method Summary
`double` `getArea()` Returns the sum of the surface areas of all of the boundary components of a solid.
`OrientablePrimitive[]` `getProxy()` Returns always `null`, since solids have no proxy.
`double` `getVolume()` Returns the volume of this solid.

Methods inherited from interface Primitive
`getComplexes, getComposite, getContainedPrimitives, getContainingPrimitives`

Methods inherited from interface Geometry
`clone, distance, getBoundary, getBuffer, getCentroid, getClosure, getConvexHull, getCoordinateDimension, getCoordinateReferenceSystem, getDimension, getDistance, getEnvelope, getMaximalComplex, getMbRegion, getPrecision, getRepresentativePoint, isCycle, isMutable, isSimple, toImmutable, transform, transform`

Methods inherited from interface TransfiniteSet
`contains, contains, difference, equals, intersection, intersects, symmetricDifference, union`

Method Detail

### getArea

    @UML(identifier="area",
         obligation=MANDATORY,
         specification=ISO_19107)
    double getArea()

  Returns the sum of the surface areas of all of the boundary components of a solid.

  Returns:
    The area of this solid.
  TODO:
    In UML diagram, this operation has an `Area` return type.

### getVolume

    @UML(identifier="volume",
         obligation=MANDATORY,
         specification=ISO_19107)
    double getVolume()

  Returns 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.

  Returns:
    The volume of this solid.
  TODO:
    In UML diagram, this operation has a `Volume` return type.

### getProxy

    @Association(value="Oriented")
    @UML(identifier="proxy",
         obligation=FORBIDDEN,
         specification=ISO_19107)
    OrientablePrimitive[] getProxy()

  Returns always `null`, since solids have no proxy.

  Specified by:
    `getProxy` in interface `Primitive`
  Returns:
    The orientable primitives as an array of length 2, or `null` if none.
  See Also:
    `OrientablePrimitive.getPrimitive()`

Copyright © 1994-2008 Open Geospatial Consortium. All Rights Reserved.