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.