Package uk.ac.starlink.ttools.plot2.geom
Class TimeDataGeom
- java.lang.Object
-
- uk.ac.starlink.ttools.plot2.geom.TimeDataGeom
-
- All Implemented Interfaces:
DataGeom
public class TimeDataGeom extends java.lang.Object implements DataGeom
Defines positional data coordinates used by a 2-D time plot.Note the first coordinate is time, whose values are in seconds since the Unix epoch, as defined by
TimeMapper
.This is a singleton class.
- Since:
- 15 Aug 2013
- Author:
- Mark Taylor
-
-
Field Summary
Fields Modifier and Type Field Description static TimeDataGeom
INSTANCE
Singleton instance.static FloatingCoord
T_COORD
static FloatingCoord
Y_COORD
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
getDataDimCount()
Returns 2.Coord[]
getPosCoords()
Returns the definitions for the user-supplied coordinates that indicate plot positions.java.lang.String
getVariantName()
Returns a label for this DataGeom.boolean
hasPosition()
Indicates whether the values read by thereadDataPos
method correspond to a point position in the data space.boolean
readDataPos(Tuple tuple, int ic, double[] dpos)
Determines the positional coordinates in data space for a supplied tuple.
-
-
-
Field Detail
-
T_COORD
public static final FloatingCoord T_COORD
-
Y_COORD
public static final FloatingCoord Y_COORD
-
INSTANCE
public static TimeDataGeom INSTANCE
Singleton instance.
-
-
Method Detail
-
getDataDimCount
public int getDataDimCount()
Returns 2.- Specified by:
getDataDimCount
in interfaceDataGeom
- Returns:
- number of elements in data space coordinate array
-
hasPosition
public boolean hasPosition()
Description copied from interface:DataGeom
Indicates whether the values read by thereadDataPos
method correspond to a point position in the data space. If true, a successful read will result in a position array with a definite value for each coordinate. If false, some of the coordinates may be NaN. A false return value would be appropriate for instance if each tuple row for the plot layer represented by this geom corresponds to a line rather than a point in the data space.- Specified by:
hasPosition
in interfaceDataGeom
- Returns:
- true iff this geom represents point positions
-
getVariantName
public java.lang.String getVariantName()
Description copied from interface:DataGeom
Returns a label for this DataGeom. It may be used to distinguish from other geoms used in the same plot type, so for instance call it "Cartesian" or "Polar" rather than "Plane" if it's X,Y.- Specified by:
getVariantName
in interfaceDataGeom
- Returns:
- user-directed input coordinate type name
-
getPosCoords
public Coord[] getPosCoords()
Description copied from interface:DataGeom
Returns the definitions for the user-supplied coordinates that indicate plot positions.- Specified by:
getPosCoords
in interfaceDataGeom
- Returns:
- coordinate quantity array for this geometry
-
readDataPos
public boolean readDataPos(Tuple tuple, int ic, double[] dpos)
Description copied from interface:DataGeom
Determines the positional coordinates in data space for a supplied tuple.A parameter supplies the index of the field in the tuple at which the positional coordinate(s) can be found. Each position is represented by
DataGeom.getPosCoords()
columns of the tuple. By convention positions are at the start of the tuple, so if there is one position in the tuple it will be at icol=0, and there are multiple positions the N'th one will be at icol=N*getPosCoords().An array of (at least)
DataGeom.getDataDimCount()
elements is supplied, and on success the data space coordinate values are written into it.- Specified by:
readDataPos
in interfaceDataGeom
- Parameters:
tuple
- coordinate tupleic
- column index intuple
at which the positional information startsdpos
- array into which data space coordinates are written- Returns:
- true iff conversion was successful
-
-