Package org.apache.lucene.spatial3d.geom

# Class GeoCompositeMembershipShape

java.lang.Object
org.apache.lucene.spatial3d.geom.BasePlanetObject
org.apache.lucene.spatial3d.geom.GeoBaseCompositeShape<GeoMembershipShape>
org.apache.lucene.spatial3d.geom.GeoCompositeMembershipShape

All Implemented Interfaces:
  `Bounded`, `GeoBounds`, `GeoMembershipShape`, `GeoOutsideDistance`, `GeoShape`, `Membership`, `PlanetObject`, `SerializableObject`

public class GeoCompositeMembershipShape extends GeoBaseCompositeShape<GeoMembershipShape>
GeoCompositeMembershipShape is a set of GeoMembershipShape's, treated as a unit.

WARNING: This API is experimental and might change in incompatible ways in the next release.

- ## Field Summary

  ### Fields inherited from class org.apache.lucene.spatial3d.geom.GeoBaseCompositeShape

  `shapes`

  ### Fields inherited from class org.apache.lucene.spatial3d.geom.BasePlanetObject

  `planetModel`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `GeoCompositeMembershipShape(PlanetModel planetModel)`
  Constructor.
  `GeoCompositeMembershipShape(PlanetModel planetModel, InputStream inputStream)`
  Constructor for deserialization.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `double`
  `computeOutsideDistance(DistanceStyle distanceStyle, double x, double y, double z)`
  Compute this shape's distance to the GeoPoint.
  `double`
  `computeOutsideDistance(DistanceStyle distanceStyle, GeoPoint point)`
  Compute this shape's distance to the GeoPoint.
  `boolean`
  `equals(Object o)`
  `String`
  `toString()`

  ### Methods inherited from class org.apache.lucene.spatial3d.geom.GeoBaseCompositeShape

  `addShape, getBounds, getEdgePoints, getShape, getShapes, hashCode, intersects, isWithin, isWithin, size, write`

  ### Methods inherited from class org.apache.lucene.spatial3d.geom.BasePlanetObject

  `getPlanetModel`

  ### Methods inherited from class java.lang.Object

  `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

  ### Methods inherited from interface org.apache.lucene.spatial3d.geom.Bounded

  `getBounds`

  ### Methods inherited from interface org.apache.lucene.spatial3d.geom.GeoShape

  `getEdgePoints, intersects`

  ### Methods inherited from interface org.apache.lucene.spatial3d.geom.Membership

  `isWithin, isWithin`

  ### Methods inherited from interface org.apache.lucene.spatial3d.geom.PlanetObject

  `getPlanetModel`

  ### Methods inherited from interface org.apache.lucene.spatial3d.geom.SerializableObject

  `write`

- ## Constructor Details

  - ### GeoCompositeMembershipShape

    public GeoCompositeMembershipShape(PlanetModel planetModel)
    Constructor.

  - ### GeoCompositeMembershipShape

    public GeoCompositeMembershipShape(PlanetModel planetModel, InputStream inputStream) throws IOException
    Constructor for deserialization.
    Parameters:
      `planetModel` - is the planet model.
      `inputStream` - is the input stream.
    Throws:
      `IOException`

- ## Method Details

  - ### equals

    public boolean equals(Object o)
    Overrides:
      `equals` in class `GeoBaseCompositeShape<GeoMembershipShape>`

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Object`

  - ### computeOutsideDistance

    public double computeOutsideDistance(DistanceStyle distanceStyle, GeoPoint point)
    Description copied from interface: `GeoOutsideDistance`
    Compute this shape's distance to the GeoPoint. A return value of 0.0 should be returned for points inside of the shape.
    Specified by:
      `computeOutsideDistance` in interface `GeoOutsideDistance`
    Parameters:
      `distanceStyle` - is the distance style.
      `point` - is the point to compute the distance to.
    Returns:
      the distance.

  - ### computeOutsideDistance

    public double computeOutsideDistance(DistanceStyle distanceStyle, double x, double y, double z)
    Description copied from interface: `GeoOutsideDistance`
    Compute this shape's distance to the GeoPoint. A return value of 0.0 should be returned for points inside of the shape.
    Specified by:
      `computeOutsideDistance` in interface `GeoOutsideDistance`
    Parameters:
      `distanceStyle` - is the distance style.
      `x` - is the point's unit x coordinate (using U.S. convention).
      `y` - is the point's unit y coordinate (using U.S. convention).
      `z` - is the point's unit z coordinate (using U.S. convention).
    Returns:
      the distance.