Class Geo3dShapeFactory

  • All Implemented Interfaces:
    S2ShapeFactory, org.locationtech.spatial4j.shape.ShapeFactory

    public class Geo3dShapeFactory
    extends Object
    implements S2ShapeFactory
    Geo3d implementation of S2ShapeFactory
    WARNING: This API is experimental and might change in incompatible ways in the next release.
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface org.locationtech.spatial4j.shape.ShapeFactory

        org.locationtech.spatial4j.shape.ShapeFactory.LineStringBuilder, org.locationtech.spatial4j.shape.ShapeFactory.MultiLineStringBuilder, org.locationtech.spatial4j.shape.ShapeFactory.MultiPointBuilder, org.locationtech.spatial4j.shape.ShapeFactory.MultiPolygonBuilder, org.locationtech.spatial4j.shape.ShapeFactory.MultiShapeBuilder<T extends org.locationtech.spatial4j.shape.Shape>, org.locationtech.spatial4j.shape.ShapeFactory.PointsBuilder<T extends Object>, org.locationtech.spatial4j.shape.ShapeFactory.PolygonBuilder
    • Constructor Summary

      Constructors 
      Constructor Description
      Geo3dShapeFactory​(org.locationtech.spatial4j.context.SpatialContext context, org.locationtech.spatial4j.context.SpatialContextFactory factory)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      org.locationtech.spatial4j.shape.Circle circle​(double x, double y, double distance)  
      org.locationtech.spatial4j.shape.Circle circle​(org.locationtech.spatial4j.shape.Point point, double distance)  
      org.locationtech.spatial4j.shape.Shape getS2CellShape​(com.google.common.geometry.S2CellId cellId)
      Factory method for S2 cell shapes.
      org.locationtech.spatial4j.context.SpatialContext getSpatialContext()  
      boolean isNormWrapLongitude()  
      org.locationtech.spatial4j.shape.ShapeFactory.LineStringBuilder lineString()  
      org.locationtech.spatial4j.shape.Shape lineString​(List<org.locationtech.spatial4j.shape.Point> list, double distance)  
      org.locationtech.spatial4j.shape.ShapeFactory.MultiLineStringBuilder multiLineString()  
      org.locationtech.spatial4j.shape.ShapeFactory.MultiPointBuilder multiPoint()  
      org.locationtech.spatial4j.shape.ShapeFactory.MultiPolygonBuilder multiPolygon()  
      <T extends org.locationtech.spatial4j.shape.Shape>
      org.locationtech.spatial4j.shape.ShapeFactory.MultiShapeBuilder<T>
      multiShape​(Class<T> aClass)  
      <S extends org.locationtech.spatial4j.shape.Shape>
      org.locationtech.spatial4j.shape.ShapeCollection<S>
      multiShape​(List<S> list)  
      double normDist​(double distance)  
      double normX​(double x)  
      double normY​(double y)  
      double normZ​(double z)  
      org.locationtech.spatial4j.shape.Point pointXY​(double x, double y)  
      org.locationtech.spatial4j.shape.Point pointXYZ​(double x, double y, double z)  
      org.locationtech.spatial4j.shape.ShapeFactory.PolygonBuilder polygon()  
      org.locationtech.spatial4j.shape.Rectangle rect​(double minX, double maxX, double minY, double maxY)  
      org.locationtech.spatial4j.shape.Rectangle rect​(org.locationtech.spatial4j.shape.Point point, org.locationtech.spatial4j.shape.Point point1)  
      void setCircleAccuracy​(double circleAccuracy)
      Set the accuracy for circles in decimal degrees.
      void verifyX​(double x)  
      void verifyY​(double y)  
      void verifyZ​(double v)  
    • Constructor Detail

      • Geo3dShapeFactory

        public Geo3dShapeFactory​(org.locationtech.spatial4j.context.SpatialContext context,
                                 org.locationtech.spatial4j.context.SpatialContextFactory factory)
    • Method Detail

      • getSpatialContext

        public org.locationtech.spatial4j.context.SpatialContext getSpatialContext()
        Specified by:
        getSpatialContext in interface org.locationtech.spatial4j.shape.ShapeFactory
      • setCircleAccuracy

        public void setCircleAccuracy​(double circleAccuracy)
        Set the accuracy for circles in decimal degrees. Note that accuracy has no effect when the planet model is a sphere. In that case, circles are always fully precise.
        Parameters:
        circleAccuracy - the provided accuracy in decimal degrees.
      • isNormWrapLongitude

        public boolean isNormWrapLongitude()
        Specified by:
        isNormWrapLongitude in interface org.locationtech.spatial4j.shape.ShapeFactory
      • normX

        public double normX​(double x)
        Specified by:
        normX in interface org.locationtech.spatial4j.shape.ShapeFactory
      • normY

        public double normY​(double y)
        Specified by:
        normY in interface org.locationtech.spatial4j.shape.ShapeFactory
      • normZ

        public double normZ​(double z)
        Specified by:
        normZ in interface org.locationtech.spatial4j.shape.ShapeFactory
      • normDist

        public double normDist​(double distance)
        Specified by:
        normDist in interface org.locationtech.spatial4j.shape.ShapeFactory
      • verifyX

        public void verifyX​(double x)
        Specified by:
        verifyX in interface org.locationtech.spatial4j.shape.ShapeFactory
      • verifyY

        public void verifyY​(double y)
        Specified by:
        verifyY in interface org.locationtech.spatial4j.shape.ShapeFactory
      • verifyZ

        public void verifyZ​(double v)
        Specified by:
        verifyZ in interface org.locationtech.spatial4j.shape.ShapeFactory
      • pointXY

        public org.locationtech.spatial4j.shape.Point pointXY​(double x,
                                                              double y)
        Specified by:
        pointXY in interface org.locationtech.spatial4j.shape.ShapeFactory
      • pointXYZ

        public org.locationtech.spatial4j.shape.Point pointXYZ​(double x,
                                                               double y,
                                                               double z)
        Specified by:
        pointXYZ in interface org.locationtech.spatial4j.shape.ShapeFactory
      • rect

        public org.locationtech.spatial4j.shape.Rectangle rect​(org.locationtech.spatial4j.shape.Point point,
                                                               org.locationtech.spatial4j.shape.Point point1)
        Specified by:
        rect in interface org.locationtech.spatial4j.shape.ShapeFactory
      • rect

        public org.locationtech.spatial4j.shape.Rectangle rect​(double minX,
                                                               double maxX,
                                                               double minY,
                                                               double maxY)
        Specified by:
        rect in interface org.locationtech.spatial4j.shape.ShapeFactory
      • circle

        public org.locationtech.spatial4j.shape.Circle circle​(double x,
                                                              double y,
                                                              double distance)
        Specified by:
        circle in interface org.locationtech.spatial4j.shape.ShapeFactory
      • circle

        public org.locationtech.spatial4j.shape.Circle circle​(org.locationtech.spatial4j.shape.Point point,
                                                              double distance)
        Specified by:
        circle in interface org.locationtech.spatial4j.shape.ShapeFactory
      • lineString

        public org.locationtech.spatial4j.shape.Shape lineString​(List<org.locationtech.spatial4j.shape.Point> list,
                                                                 double distance)
        Specified by:
        lineString in interface org.locationtech.spatial4j.shape.ShapeFactory
      • multiShape

        public <S extends org.locationtech.spatial4j.shape.Shape> org.locationtech.spatial4j.shape.ShapeCollection<S> multiShape​(List<S> list)
        Specified by:
        multiShape in interface org.locationtech.spatial4j.shape.ShapeFactory
      • lineString

        public org.locationtech.spatial4j.shape.ShapeFactory.LineStringBuilder lineString()
        Specified by:
        lineString in interface org.locationtech.spatial4j.shape.ShapeFactory
      • polygon

        public org.locationtech.spatial4j.shape.ShapeFactory.PolygonBuilder polygon()
        Specified by:
        polygon in interface org.locationtech.spatial4j.shape.ShapeFactory
      • multiShape

        public <T extends org.locationtech.spatial4j.shape.Shape> org.locationtech.spatial4j.shape.ShapeFactory.MultiShapeBuilder<T> multiShape​(Class<T> aClass)
        Specified by:
        multiShape in interface org.locationtech.spatial4j.shape.ShapeFactory
      • multiPoint

        public org.locationtech.spatial4j.shape.ShapeFactory.MultiPointBuilder multiPoint()
        Specified by:
        multiPoint in interface org.locationtech.spatial4j.shape.ShapeFactory
      • multiLineString

        public org.locationtech.spatial4j.shape.ShapeFactory.MultiLineStringBuilder multiLineString()
        Specified by:
        multiLineString in interface org.locationtech.spatial4j.shape.ShapeFactory
      • multiPolygon

        public org.locationtech.spatial4j.shape.ShapeFactory.MultiPolygonBuilder multiPolygon()
        Specified by:
        multiPolygon in interface org.locationtech.spatial4j.shape.ShapeFactory
      • getS2CellShape

        public org.locationtech.spatial4j.shape.Shape getS2CellShape​(com.google.common.geometry.S2CellId cellId)
        Description copied from interface: S2ShapeFactory
        Factory method for S2 cell shapes.
        Specified by:
        getS2CellShape in interface S2ShapeFactory
        Parameters:
        cellId - The S2 cell id
        Returns:
        the shape representing the cell.