org.apache.lucene.spatial.spatial4j

## Class Geo3dShape<T extends GeoAreaShape>

- java.lang.Object
- - org.apache.lucene.spatial.spatial4j.Geo3dShape<T>

- Type Parameters:
    `T` - is the type of `GeoAreaShape`
  All Implemented Interfaces:
    org.locationtech.spatial4j.shape.Shape
  Direct Known Subclasses:
    Geo3dCircleShape, Geo3dPointShape, Geo3dRectangleShape

      public class Geo3dShape<T extends GeoAreaShape>
      extends Object
      implements org.locationtech.spatial4j.shape.Shape

  A Spatial4j Shape wrapping a `GeoAreaShape` ("Geo3D") -- a 3D planar geometry based Spatial4j Shape implementation. Geo3D implements shapes on the surface of a sphere or ellipsoid.
  WARNING: This API is experimental and might change in incompatible ways in the next release.

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected org.locationtech.spatial4j.shape.Rectangle` | `boundingBox`
    `protected org.locationtech.spatial4j.shape.Point` | `center`
    `protected T` | `shape`
    `protected org.locationtech.spatial4j.context.SpatialContext` | `spatialcontext`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Geo3dShape(T shape, org.locationtech.spatial4j.context.SpatialContext spatialcontext)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `equals(Object o)`
    `double` | `getArea(org.locationtech.spatial4j.context.SpatialContext spatialContext)`
    `org.locationtech.spatial4j.shape.Rectangle` | `getBoundingBox()`
    `org.locationtech.spatial4j.shape.Shape` | `getBuffered(double distance, org.locationtech.spatial4j.context.SpatialContext spatialContext)`
    `org.locationtech.spatial4j.shape.Point` | `getCenter()`
    `org.locationtech.spatial4j.context.SpatialContext` | `getContext()`
    `boolean` | `hasArea()`
    `int` | `hashCode()`
    `boolean` | `isEmpty()`
    `org.locationtech.spatial4j.shape.SpatialRelation` | `relate(org.locationtech.spatial4j.shape.Shape other)`
    `String` | `toString()`

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

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

- - ### Field Detail

    - #### spatialcontext

          protected final org.locationtech.spatial4j.context.SpatialContext spatialcontext

    - #### shape

          protected T extends GeoAreaShape shape

    - #### boundingBox

          protected volatile org.locationtech.spatial4j.shape.Rectangle boundingBox

    - #### center

          protected volatile org.locationtech.spatial4j.shape.Point center

  - ### Constructor Detail

    - #### Geo3dShape

          public Geo3dShape(T shape,
                            org.locationtech.spatial4j.context.SpatialContext spatialcontext)

  - ### Method Detail

    - #### relate

          public org.locationtech.spatial4j.shape.SpatialRelation relate(org.locationtech.spatial4j.shape.Shape other)

      Specified by:
        `relate` in interface `org.locationtech.spatial4j.shape.Shape`

    - #### getBoundingBox

          public org.locationtech.spatial4j.shape.Rectangle getBoundingBox()

      Specified by:
        `getBoundingBox` in interface `org.locationtech.spatial4j.shape.Shape`

    - #### hasArea

          public boolean hasArea()

      Specified by:
        `hasArea` in interface `org.locationtech.spatial4j.shape.Shape`

    - #### getArea

          public double getArea(org.locationtech.spatial4j.context.SpatialContext spatialContext)

      Specified by:
        `getArea` in interface `org.locationtech.spatial4j.shape.Shape`

    - #### getCenter

          public org.locationtech.spatial4j.shape.Point getCenter()

      Specified by:
        `getCenter` in interface `org.locationtech.spatial4j.shape.Shape`

    - #### getBuffered

          public org.locationtech.spatial4j.shape.Shape getBuffered(double distance,
                                                                    org.locationtech.spatial4j.context.SpatialContext spatialContext)

      Specified by:
        `getBuffered` in interface `org.locationtech.spatial4j.shape.Shape`

    - #### isEmpty

          public boolean isEmpty()

      Specified by:
        `isEmpty` in interface `org.locationtech.spatial4j.shape.Shape`

    - #### getContext

          public org.locationtech.spatial4j.context.SpatialContext getContext()

      Specified by:
        `getContext` in interface `org.locationtech.spatial4j.shape.Shape`

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `Object`

    - #### equals

          public boolean equals(Object o)

      Specified by:
        `equals` in interface `org.locationtech.spatial4j.shape.Shape`
      Overrides:
        `equals` in class `Object`

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `Object`

Copyright © 2000-2018 Apache Software Foundation. All Rights Reserved.