Package org.apache.lucene.geo
Class Circle2D
- java.lang.Object
-
- org.apache.lucene.geo.Circle2D
-
- All Implemented Interfaces:
Component2D
class Circle2D extends java.lang.Object implements Component2D
2D circle implementation containing spatial logic.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classCircle2D.CartesianDistanceprivate static interfaceCircle2D.DistanceCalculatorprivate static classCircle2D.HaversinDistance-
Nested classes/interfaces inherited from interface org.apache.lucene.geo.Component2D
Component2D.WithinRelation
-
-
Field Summary
Fields Modifier and Type Field Description private Circle2D.DistanceCalculatorcalculator
-
Constructor Summary
Constructors Modifier Constructor Description privateCircle2D(Circle2D.DistanceCalculator calculator)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleancontains(double x, double y)relates this component2D with a pointbooleancontainsLine(double minX, double maxX, double minY, double maxY, double aX, double aY, double bX, double bY)return true if this component2D contains the provided linebooleancontainsTriangle(double minX, double maxX, double minY, double maxY, double aX, double aY, double bX, double bY, double cX, double cY)return true if this component2D contains the provided triangle(package private) static Component2Dcreate(Circle circle)Builds a Circle2D from Circle.(package private) static Component2Dcreate(XYCircle circle)Builds a XYCircle2D from XYCircle.doublegetMaxX()max X value for the componentdoublegetMaxY()max Y value for the componentdoublegetMinX()min X value for the componentdoublegetMinY()min Y value for the componentbooleanintersectsLine(double minX, double maxX, double minY, double maxY, double aX, double aY, double bX, double bY)return true if this component2D intersects the provided lineprivate static booleanintersectsLine(double centerX, double centerY, double aX, double aY, double bX, double bY, Circle2D.DistanceCalculator calculator)booleanintersectsTriangle(double minX, double maxX, double minY, double maxY, double aX, double aY, double bX, double bY, double cX, double cY)return true if this component2D intersects the provided trianglePointValues.Relationrelate(double minX, double maxX, double minY, double maxY)relates this component2D with a bounding boxComponent2D.WithinRelationwithinLine(double minX, double maxX, double minY, double maxY, double aX, double aY, boolean ab, double bX, double bY)Compute the within relation of this component2D with a lineComponent2D.WithinRelationwithinPoint(double x, double y)Compute the within relation of this component2D with a pointComponent2D.WithinRelationwithinTriangle(double minX, double maxX, double minY, double maxY, double aX, double aY, boolean ab, double bX, double bY, boolean bc, double cX, double cY, boolean ca)Compute the within relation of this component2D with a triangle-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.lucene.geo.Component2D
containsLine, containsTriangle, intersectsLine, intersectsTriangle, withinLine, withinTriangle
-
-
-
-
Field Detail
-
calculator
private final Circle2D.DistanceCalculator calculator
-
-
Constructor Detail
-
Circle2D
private Circle2D(Circle2D.DistanceCalculator calculator)
-
-
Method Detail
-
getMinX
public double getMinX()
Description copied from interface:Component2Dmin X value for the component- Specified by:
getMinXin interfaceComponent2D
-
getMaxX
public double getMaxX()
Description copied from interface:Component2Dmax X value for the component- Specified by:
getMaxXin interfaceComponent2D
-
getMinY
public double getMinY()
Description copied from interface:Component2Dmin Y value for the component- Specified by:
getMinYin interfaceComponent2D
-
getMaxY
public double getMaxY()
Description copied from interface:Component2Dmax Y value for the component- Specified by:
getMaxYin interfaceComponent2D
-
contains
public boolean contains(double x, double y)Description copied from interface:Component2Drelates this component2D with a point- Specified by:
containsin interfaceComponent2D
-
relate
public PointValues.Relation relate(double minX, double maxX, double minY, double maxY)
Description copied from interface:Component2Drelates this component2D with a bounding box- Specified by:
relatein interfaceComponent2D
-
intersectsLine
public boolean intersectsLine(double minX, double maxX, double minY, double maxY, double aX, double aY, double bX, double bY)Description copied from interface:Component2Dreturn true if this component2D intersects the provided line- Specified by:
intersectsLinein interfaceComponent2D
-
intersectsTriangle
public boolean intersectsTriangle(double minX, double maxX, double minY, double maxY, double aX, double aY, double bX, double bY, double cX, double cY)Description copied from interface:Component2Dreturn true if this component2D intersects the provided triangle- Specified by:
intersectsTrianglein interfaceComponent2D
-
containsLine
public boolean containsLine(double minX, double maxX, double minY, double maxY, double aX, double aY, double bX, double bY)Description copied from interface:Component2Dreturn true if this component2D contains the provided line- Specified by:
containsLinein interfaceComponent2D
-
containsTriangle
public boolean containsTriangle(double minX, double maxX, double minY, double maxY, double aX, double aY, double bX, double bY, double cX, double cY)Description copied from interface:Component2Dreturn true if this component2D contains the provided triangle- Specified by:
containsTrianglein interfaceComponent2D
-
withinPoint
public Component2D.WithinRelation withinPoint(double x, double y)
Description copied from interface:Component2DCompute the within relation of this component2D with a point- Specified by:
withinPointin interfaceComponent2D
-
withinLine
public Component2D.WithinRelation withinLine(double minX, double maxX, double minY, double maxY, double aX, double aY, boolean ab, double bX, double bY)
Description copied from interface:Component2DCompute the within relation of this component2D with a line- Specified by:
withinLinein interfaceComponent2D
-
withinTriangle
public Component2D.WithinRelation withinTriangle(double minX, double maxX, double minY, double maxY, double aX, double aY, boolean ab, double bX, double bY, boolean bc, double cX, double cY, boolean ca)
Description copied from interface:Component2DCompute the within relation of this component2D with a triangle- Specified by:
withinTrianglein interfaceComponent2D
-
intersectsLine
private static boolean intersectsLine(double centerX, double centerY, double aX, double aY, double bX, double bY, Circle2D.DistanceCalculator calculator)
-
create
static Component2D create(XYCircle circle)
Builds a XYCircle2D from XYCircle. Distance calculations are performed using cartesian distance.
-
create
static Component2D create(Circle circle)
Builds a Circle2D from Circle. Distance calculations are performed using haversin distance.
-
-