Class IntersectsFunction
- All Implemented Interfaces:
ADQLObject
,ADQLOperand
It represents the INTERSECTS function of the ADQL language.
This numeric function determines if two geometry values overlap. This is most commonly used to express a "shape-vs-shape" intersection test.
Example:
INTERSECTS(CIRCLE('ICRS GEOCENTER', 25.4, -20.0, 1), BOX('ICRS GEOCENTER', 20.0, -15.0, 10, 10)) = 1
In this example the function determines whether the circle of one degree radius centered in a position (25.4, -20.0) degrees and defined
according to the ICRS coordinate system with GEOCENTER reference position overlaps with a box of ten degrees centered in a position
(20.0, -15.0) in degrees and defined according to the same coordinate system.
Warning:
- Version:
- 1.4 (06/2015)
- Author:
- Grégory Mantelet (CDS;ARI)
-
Nested Class Summary
Nested classes/interfaces inherited from class adql.query.operand.function.geometry.GeometryFunction
GeometryFunction.GeometryValue<F extends GeometryFunction>
Nested classes/interfaces inherited from class adql.query.operand.function.ADQLFunction
ADQLFunction.ParameterIterator
-
Field Summary
Fields inherited from class adql.query.operand.function.geometry.GeometryFunction
coordSys
-
Constructor Summary
ConstructorsConstructorDescriptionIntersectsFunction
(GeometryFunction.GeometryValue<GeometryFunction> param1, GeometryFunction.GeometryValue<GeometryFunction> param2) Builds an INTERSECTS function.IntersectsFunction
(IntersectsFunction toCopy) Builds an INTERSECTS function by copying the given one. -
Method Summary
Modifier and TypeMethodDescriptiongetCopy()
Gets a (deep) copy of this ADQL object.getName()
Gets the name of this object in ADQL.int
Gets the number of parameters this function has.getParameter
(int index) Gets the index-th parameter.Gets the list of all parameters of this function.boolean
Tell whether this operand is a geometrical region or not.boolean
Tell whether this operand is numeric or not.boolean
isString()
Tell whether this operand is a string or not.final void
setParameter
(int index, ADQLOperand replacer) Replaces the index-th parameter by the given one.final void
setRightParam
(GeometryFunction.GeometryValue<GeometryFunction> rightParam) Methods inherited from class adql.query.operand.function.geometry.GeometryFunction
getCoordinateSystem, setCoordinateSystem
Methods inherited from class adql.query.operand.function.ADQLFunction
adqlIterator, getPosition, paramIterator, setPosition, toADQL
-
Constructor Details
-
IntersectsFunction
public IntersectsFunction(GeometryFunction.GeometryValue<GeometryFunction> param1, GeometryFunction.GeometryValue<GeometryFunction> param2) throws NullPointerException Builds an INTERSECTS function.- Parameters:
param1
- The first geometry.param2
- The second geometry.- Throws:
NullPointerException
- If there is an error with at least one of the parameters.
-
IntersectsFunction
Builds an INTERSECTS function by copying the given one.- Parameters:
toCopy
- The INTERSECTS function to copy.- Throws:
Exception
- If there is an error during the copy.
-
-
Method Details
-
getCopy
Description copied from interface:ADQLObject
Gets a (deep) copy of this ADQL object.- Returns:
- The copy of this ADQL object.
- Throws:
Exception
- If there is any error during the copy.
-
getName
Description copied from interface:ADQLObject
Gets the name of this object in ADQL.- Returns:
- The name of this ADQL object.
-
isNumeric
public boolean isNumeric()Description copied from interface:ADQLOperand
Tell whether this operand is numeric or not.- Returns:
- true if this operand is numeric, false otherwise.
-
isString
public boolean isString()Description copied from interface:ADQLOperand
Tell whether this operand is a string or not.- Returns:
- true if this operand is a string, false otherwise.
-
isGeometry
public boolean isGeometry()Description copied from interface:ADQLOperand
Tell whether this operand is a geometrical region or not.- Returns:
- true if this operand is a geometry, false otherwise.
-
getLeftParam
- Returns:
- The leftParam.
-
setLeftParam
- Parameters:
leftParam
- The leftParam to set.
-
getRightParam
- Returns:
- The rightParam.
-
setRightParam
- Parameters:
rightParam
- The rightParam to set.
-
getParameters
Description copied from class:ADQLFunction
Gets the list of all parameters of this function.- Specified by:
getParameters
in classADQLFunction
- Returns:
- Its parameters list.
-
getNbParameters
public int getNbParameters()Description copied from class:ADQLFunction
Gets the number of parameters this function has.- Specified by:
getNbParameters
in classADQLFunction
- Returns:
- Number of parameters.
-
getParameter
Description copied from class:ADQLFunction
Gets the index-th parameter.- Specified by:
getParameter
in classADQLFunction
- Parameters:
index
- Parameter number.- Returns:
- The corresponding parameter.
- Throws:
ArrayIndexOutOfBoundsException
- If the index is incorrect (index < 0 || index >= getNbParameters()).
-
setParameter
public ADQLOperand setParameter(int index, ADQLOperand replacer) throws ArrayIndexOutOfBoundsException, NullPointerException, Exception Description copied from class:ADQLFunction
Replaces the index-th parameter by the given one.- Specified by:
setParameter
in classADQLFunction
- Parameters:
index
- Index of the parameter to replace.replacer
- The replacer.- Returns:
- The replaced parameter.
- Throws:
ArrayIndexOutOfBoundsException
- If the index is incorrect (index < 0 || index >= getNbParameters()).NullPointerException
- If a required parameter must be replaced by a NULL object.Exception
- If another error occurs.
-