public class BoxFunction extends GeometryFunction
It represents the box function of the ADQL language.
It is specified by a center position and a size (in both coordinates). The coordinates of the center position are expressed in the given coordinate system. The size of the box is in degrees.
Example:
BOX('ICRS GEOCENTER', 25.4, -20.0, 10, 10)
In this example the function expressing a box o ten degrees centered in a position (25.4,-20.0) in degrees and defined according
to the ICRS coordinate system with GEOCENTER reference position.
BOX('ICRS GEOCENTER', t.ra, t.dec, 10, 10)
In this second example the coordinates of the center position are extracted from a coordinate's column reference.
GeometryFunction.GeometryValue<F extends GeometryFunction>
ADQLFunction.ParameterIterator
coordSys
Constructor and Description |
---|
BoxFunction(ADQLOperand coordinateSystem,
ADQLOperand firstCoord,
ADQLOperand secondCoord,
ADQLOperand boxWidth,
ADQLOperand boxHeight)
Builds a BOX function.
|
BoxFunction(BoxFunction toCopy)
Builds a BOX function by copying the given one.
|
Modifier and Type | Method and Description |
---|---|
ADQLOperand |
getCoord1()
Gets the first coordinate (i.e.
|
ADQLOperand |
getCoord2()
Gets the second coordinate (i.e.
|
ADQLObject |
getCopy()
Gets a (deep) copy of this ADQL object.
|
ADQLOperand |
getHeight()
Gets the height of the box.
|
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.
|
ADQLOperand |
getWidth()
Gets the width of the box.
|
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.
|
void |
setCoord1(ADQLOperand coord1)
Sets the first coordinate (i.e.
|
void |
setCoord2(ADQLOperand coord2)
Sets the second coordinate (i.e.
|
void |
setHeight(ADQLOperand height)
Sets the height of the box.
|
ADQLOperand |
setParameter(int index,
ADQLOperand replacer)
Replaces the index-th parameter by the given one.
|
void |
setWidth(ADQLOperand width)
Sets the width of the box.
|
getCoordinateSystem, setCoordinateSystem
adqlIterator, getPosition, paramIterator, setPosition, toADQL
public BoxFunction(ADQLOperand coordinateSystem, ADQLOperand firstCoord, ADQLOperand secondCoord, ADQLOperand boxWidth, ADQLOperand boxHeight) throws java.lang.NullPointerException, java.lang.Exception
Builds a BOX function.
coordinateSystem
- The coordinate system of the center position.firstCoord
- The first coordinate of the center of this box.secondCoord
- The second coordinate of the center of this box.boxWidth
- The width of this box (in degrees).boxHeight
- The height of this box (in degrees).java.lang.NullPointerException
- If one parameter is null.java.lang.Exception
- If there is another error.public BoxFunction(BoxFunction toCopy) throws java.lang.Exception
toCopy
- The BOX function to copy.java.lang.Exception
- If there is an error during the copy.public ADQLObject getCopy() throws java.lang.Exception
ADQLObject
java.lang.Exception
- If there is any error during the copy.public java.lang.String getName()
ADQLObject
public boolean isNumeric()
ADQLOperand
public boolean isString()
ADQLOperand
public boolean isGeometry()
ADQLOperand
public final ADQLOperand getCoord1()
public final void setCoord1(ADQLOperand coord1)
coord1
- The first coordinate.public final ADQLOperand getCoord2()
public final void setCoord2(ADQLOperand coord2)
coord2
- The second coordinate.public final ADQLOperand getWidth()
public final void setWidth(ADQLOperand width)
width
- The width.public final ADQLOperand getHeight()
public final void setHeight(ADQLOperand height)
height
- The height.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.