|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.vividsolutions.jts.linearref.LengthIndexedLine
Supports linear referencing along a linear Geometry
using the length along the line as the index.
Negative length values are taken as measured in the reverse direction
from the end of the geometry.
Out-of-range index values are handled by clamping
them to the valid range of values.
Non-simple lines (i.e. which loop back to cross or touch
themselves) are supported.
Constructor Summary | |
LengthIndexedLine(Geometry linearGeom)
Constructs an object which allows a linear Geometry
to be linearly referenced using length as an index. |
Method Summary | |
double |
clampIndex(double index)
Computes a valid index for this line by clamping the given index to the valid range of index values |
Geometry |
extractLine(double startIndex,
double endIndex)
Computes the LineString for the interval
on the line between the given indices. |
Coordinate |
extractPoint(double index)
Computes the Coordinate for the point
on the line at the given index. |
Coordinate |
extractPoint(double index,
double offsetDistance)
Computes the Coordinate for the point
on the line at the given index, offset by the given distance. |
double |
getEndIndex()
Returns the index of the end of the line |
double |
getStartIndex()
Returns the index of the start of the line |
double |
indexOf(Coordinate pt)
Computes the minimum index for a point on the line. |
double |
indexOfAfter(Coordinate pt,
double minIndex)
Finds the index for a point on the line which is greater than the given index. |
double[] |
indicesOf(Geometry subLine)
Computes the indices for a subline of the line. |
boolean |
isValidIndex(double index)
Tests whether an index is in the valid index range for the line. |
double |
project(Coordinate pt)
Computes the index for the closest point on the line to the given point. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public LengthIndexedLine(Geometry linearGeom)
Geometry
to be linearly referenced using length as an index.
linearGeom
- the linear geometry to reference alongMethod Detail |
public Coordinate extractPoint(double index)
Coordinate
for the point
on the line at the given index.
If the index is out of range the first or last point on the
line will be returned.
The Z-ordinate of the computed point will be interpolated from
the Z-ordinates of the line segment containing it, if they exist.
index
- the index of the desired point
public Coordinate extractPoint(double index, double offsetDistance)
Coordinate
for the point
on the line at the given index, offset by the given distance.
If the index is out of range the first or last point on the
line will be returned.
The computed point is offset to the left of the line if the offset distance is
positive, to the right if negative.
The Z-ordinate of the computed point will be interpolated from
the Z-ordinates of the line segment containing it, if they exist.
index
- the index of the desired pointoffsetDistance
- the distance the point is offset from the segment
(positive is to the left, negative is to the right)
public Geometry extractLine(double startIndex, double endIndex)
LineString
for the interval
on the line between the given indices.
If the endIndex lies before the startIndex,
the computed geometry is reversed.
startIndex
- the index of the start of the intervalendIndex
- the index of the end of the interval
public double indexOf(Coordinate pt)
project(com.vividsolutions.jts.geom.Coordinate)
to compute a guaranteed result for points
which may be far from the line.
pt
- a point on the line
project
public double indexOfAfter(Coordinate pt, double minIndex)
project(com.vividsolutions.jts.geom.Coordinate)
to compute a guaranteed result for points
which may be far from the line.
pt
- a point on the lineminIndex
- the value the returned index must be greater than
project
public double[] indicesOf(Geometry subLine)
subLine
- a subLine of the line
public double project(Coordinate pt)
pt
- a point on the line
public double getStartIndex()
public double getEndIndex()
public boolean isValidIndex(double index)
true
if the index is in the valid rangepublic double clampIndex(double index)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |