java.io.Serializable, java.lang.Cloneable, CoordinateSequencepublic class CoordinateArraySequence extends java.lang.Object implements CoordinateSequence, java.io.Serializable
CoordinateSequence backed by an array of Coordinates.
This is the implementation that Geometrys use by default.
Coordinates returned by #toArray and #getCoordinate are live --
modifications to them are actually changing the
CoordinateSequence's underlying data.
A dimension may be specified for the coordinates in the sequence,
which may be 2 or 3.
The actual coordinates will always have 3 ordinates,
but the dimension is useful as metadata in some situations.M, X, Y, Z| Constructor | Description |
|---|---|
CoordinateArraySequence(int size) |
Constructs a sequence of a given size, populated
with new
Coordinates. |
CoordinateArraySequence(int size,
int dimension) |
Constructs a sequence of a given size, populated
with new
Coordinates. |
CoordinateArraySequence(int size,
int dimension,
int measures) |
Constructs a sequence of a given size, populated
with new
Coordinates. |
CoordinateArraySequence(Coordinate[] coordinates) |
Constructs a sequence based on the given array
of
Coordinates (the
array is not copied). |
CoordinateArraySequence(Coordinate[] coordinates,
int dimension) |
Constructs a sequence based on the given array
of
Coordinates (the
array is not copied). |
CoordinateArraySequence(Coordinate[] coordinates,
int dimension,
int measures) |
Constructs a sequence based on the given array
of
Coordinates (the
array is not copied). |
CoordinateArraySequence(CoordinateSequence coordSeq) |
Creates a new sequence based on a deep copy of the given
CoordinateSequence. |
| Modifier and Type | Method | Description |
|---|---|---|
java.lang.Object |
clone() |
Deprecated.
|
CoordinateArraySequence |
copy() |
Creates a deep copy of the CoordinateArraySequence
|
Envelope |
expandEnvelope(Envelope env) |
Expands the given
Envelope to include the coordinates in the sequence. |
Coordinate |
getCoordinate(int i) |
Get the Coordinate with index i.
|
void |
getCoordinate(int index,
Coordinate coord) |
Copies the i'th coordinate in the sequence to the supplied
Coordinate. |
Coordinate |
getCoordinateCopy(int i) |
Get a copy of the Coordinate with index i.
|
int |
getDimension() |
Returns the dimension (number of ordinates in each coordinate) for this sequence.
|
double |
getM(int index) |
Returns ordinate M of the specified coordinate if available.
|
int |
getMeasures() |
Returns the number of measures included in
CoordinateSequence.getDimension() for each coordinate for this
sequence. |
double |
getOrdinate(int index,
int ordinateIndex) |
Returns the ordinate of a coordinate in this sequence.
|
double |
getX(int index) |
Returns ordinate X (0) of the specified coordinate.
|
double |
getY(int index) |
Returns ordinate Y (1) of the specified coordinate.
|
double |
getZ(int index) |
Returns ordinate Z of the specified coordinate if available.
|
void |
setOrdinate(int index,
int ordinateIndex,
double value) |
Sets the value for a given ordinate of a coordinate in this sequence.
|
int |
size() |
Returns the size of the coordinate sequence
|
Coordinate[] |
toCoordinateArray() |
This method exposes the internal Array of Coordinate Objects
|
java.lang.String |
toString() |
Returns the string Representation of the coordinate array
|
createCoordinate, hasM, hasZpublic CoordinateArraySequence(Coordinate[] coordinates)
Coordinates (the
array is not copied).
The coordinate dimension defaults to 3.coordinates - the coordinate array that will be referenced.public CoordinateArraySequence(Coordinate[] coordinates, int dimension)
Coordinates (the
array is not copied).coordinates - the coordinate array that will be referenced.dimension - the dimension of the coordinatespublic CoordinateArraySequence(Coordinate[] coordinates, int dimension, int measures)
Coordinates (the
array is not copied).coordinates - the coordinate array that will be referenced.dimension - the dimension of the coordinatespublic CoordinateArraySequence(int size)
Coordinates.size - the size of the sequence to createpublic CoordinateArraySequence(int size,
int dimension)
Coordinates.size - the size of the sequence to createdimension - the dimension of the coordinatespublic CoordinateArraySequence(int size,
int dimension,
int measures)
Coordinates.size - the size of the sequence to createdimension - the dimension of the coordinatespublic CoordinateArraySequence(CoordinateSequence coordSeq)
CoordinateSequence.
The coordinate dimension is set to equal the dimension of the input.coordSeq - the coordinate sequence that will be copied.public int getDimension()
CoordinateSequenceThis total includes any measures, indicated by non-zero CoordinateSequence.getMeasures().
getDimension in interface CoordinateSequenceCoordinateSequence.getDimension()public int getMeasures()
CoordinateSequenceCoordinateSequence.getDimension() for each coordinate for this
sequence.
For a measured coordinate sequence a non-zero value is returned.
getMeasures in interface CoordinateSequencepublic Coordinate getCoordinate(int i)
getCoordinate in interface CoordinateSequencei - the index of the coordinatepublic Coordinate getCoordinateCopy(int i)
getCoordinateCopy in interface CoordinateSequencei - the index of the coordinatepublic void getCoordinate(int index,
Coordinate coord)
CoordinateSequenceCoordinate. Only the first two dimensions are copied.getCoordinate in interface CoordinateSequenceindex - the index of the coordinate to copycoord - a Coordinate to receive the valueCoordinateSequence.getX(int)public double getX(int index)
CoordinateSequencegetX in interface CoordinateSequenceCoordinateSequence.getX(int)public double getY(int index)
CoordinateSequencegetY in interface CoordinateSequenceCoordinateSequence.getY(int)public double getZ(int index)
CoordinateSequencegetZ in interface CoordinateSequenceCoordinateSequence.getZ(int)public double getM(int index)
CoordinateSequencegetM in interface CoordinateSequenceCoordinateSequence.getM(int)public double getOrdinate(int index,
int ordinateIndex)
CoordinateSequence
Ordinates indices greater than 1 have user-defined semantics
(for instance, they may contain other dimensions or measure
values as described by CoordinateSequence.getDimension() and CoordinateSequence.getMeasures()).
getOrdinate in interface CoordinateSequenceindex - the coordinate index in the sequenceordinateIndex - the ordinate index in the coordinate (in range [0, dimension-1])CoordinateSequence.getOrdinate(int, int)public java.lang.Object clone()
clone in interface CoordinateSequencepublic CoordinateArraySequence copy()
copy in interface CoordinateSequencepublic int size()
size in interface CoordinateSequencepublic void setOrdinate(int index,
int ordinateIndex,
double value)
CoordinateSequencesetOrdinate in interface CoordinateSequenceindex - the coordinate index in the sequenceordinateIndex - the ordinate index in the coordinate (in range [0, dimension-1])value - the new ordinate valueCoordinateSequence.setOrdinate(int, int, double)public Coordinate[] toCoordinateArray()
toCoordinateArray in interface CoordinateSequencepublic Envelope expandEnvelope(Envelope env)
CoordinateSequenceEnvelope to include the coordinates in the sequence.
Allows implementing classes to optimize access to coordinate values.expandEnvelope in interface CoordinateSequenceenv - the envelope to expandpublic java.lang.String toString()
toString in class java.lang.ObjectCopyright © 2018. All rights reserved.