public class ExtractCoord extends GeometryFunction
It represents the COORD1 and the COORD2 functions of the ADQL language.
This function extracts the first or the second coordinate value (in degrees) of a given POINT or column reference.
Example:
COORD1(POINT('ICRS GEOCENTER', 25.0, -19.5))
In this example the function extracts the right ascension of a point with position (25, -19.5) in degrees according to the ICRS coordinate
system with GEOCENTER reference position.
GeometryFunction.GeometryValue<F extends GeometryFunction>
ADQLFunction.ParameterIterator
Modifier and Type | Field and Description |
---|---|
protected int |
indCoord
Number of the coordinate to extract (1 or 2).
|
protected GeometryFunction.GeometryValue<PointFunction> |
point
The point from which the coordinate must be extracted.
|
coordSys
Constructor and Description |
---|
ExtractCoord(ExtractCoord toCopy)
Builds a COORD1 or a COORD2 function by copying the given one.
|
ExtractCoord(int indiceCoord,
GeometryFunction.GeometryValue<PointFunction> p)
Builds a COORD1 or a COORD2 function with the given point (a POINT function or a column which contains a POINT function).
|
Modifier and Type | Method and Description |
---|---|
ADQLObject |
getCopy()
Gets a (deep) copy of this ADQL object.
|
java.lang.String |
getName()
Gets the name of this object in ADQL.
|
int |
getNbParameters()
Gets the number of parameters this function has.
|
ADQLOperand |
getParameter(int index)
Gets the index-th parameter.
|
ADQLOperand[] |
getParameters()
Gets the list of all parameters of this function.
|
boolean |
isGeometry()
Tell whether this operand is a geometrical region or not.
|
boolean |
isNumeric()
Tell whether this operand is numeric or not.
|
boolean |
isString()
Tell whether this operand is a string or not.
|
ADQLOperand |
setParameter(int index,
ADQLOperand replacer)
Replaces the index-th parameter by the given one.
|
getCoordinateSystem, setCoordinateSystem
adqlIterator, getPosition, paramIterator, setPosition, toADQL
protected final int indCoord
protected GeometryFunction.GeometryValue<PointFunction> point
public ExtractCoord(int indiceCoord, GeometryFunction.GeometryValue<PointFunction> p) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.NullPointerException
indiceCoord
- 1 or 2: the index of the coordinate to extract.p
- The POINT function from which the indiceCoord-th coordinate must be extracted.java.lang.ArrayIndexOutOfBoundsException
- If the given index is different from 1 and 2.java.lang.NullPointerException
- If the given geometry is null.public ExtractCoord(ExtractCoord toCopy) throws java.lang.Exception
toCopy
- The COORD1 or the COORD2 to copy.java.lang.Exception
- If there is an error during the copy.public java.lang.String getName()
ADQLObject
public ADQLObject getCopy() throws java.lang.Exception
ADQLObject
java.lang.Exception
- If there is any error during the copy.public boolean isNumeric()
ADQLOperand
public boolean isString()
ADQLOperand
public boolean isGeometry()
ADQLOperand
public ADQLOperand[] getParameters()
ADQLFunction
getParameters
in class ADQLFunction
public int getNbParameters()
ADQLFunction
getNbParameters
in class ADQLFunction
public ADQLOperand getParameter(int index) throws java.lang.ArrayIndexOutOfBoundsException
ADQLFunction
getParameter
in class ADQLFunction
index
- Parameter number.java.lang.ArrayIndexOutOfBoundsException
- If the index is incorrect (index < 0 || index >= getNbParameters()).public ADQLOperand setParameter(int index, ADQLOperand replacer) throws java.lang.ArrayIndexOutOfBoundsException, java.lang.NullPointerException, java.lang.Exception
ADQLFunction
setParameter
in class ADQLFunction
index
- Index of the parameter to replace.replacer
- The replacer.java.lang.ArrayIndexOutOfBoundsException
- If the index is incorrect (index < 0 || index >= getNbParameters()).java.lang.NullPointerException
- If a required parameter must be replaced by a NULL object.java.lang.Exception
- If another error occurs.