public class VgPositionToolbox
extends java.lang.Object
Constructor and Description |
---|
VgPositionToolbox(VgIEngine pEngine) |
Modifier and Type | Method and Description |
---|---|
double |
computeDistance(VgPositionVector pPositions)
Computes the distance in meters from an ordered sequence of positions.
|
double |
computeDistance(VgPosition pPos1,
VgPosition pPos2)
Computes the distance in meters between two positions.
|
double |
computeHeadingAngle(VgPosition pPosPivot,
VgPosition pPos1,
VgPosition pPos2)
Computes the heading angle, in degrees, between Pos1-Pivot and Pos2-Pivot.
|
VgPosition |
computeMiddlePoint(VgPosition pPos1,
VgPosition pPos2)
Computes the middle point of two positions.
|
double |
computePitchAngle(VgPosition pPosPivot,
VgPosition pPos1,
VgPosition pPos2)
Computes the pitch angle, in degrees, between Pos1-Pivot and Pos2-Pivot.
|
void |
convert(VgPosition pPos,
VgSRSConstRefPtr pSRS)
Utility method to convert a position to a given SRS.
|
void |
delete() |
VgSRSRefPtr |
editGeoReferencedSRS()
Returns the engine's main georeferenced SRS.
|
VgSRSRefPtr |
editSceneSRS()
Returns the scene's metric SRS.
|
void |
geoConvert(VgPosition pPos,
VgSRSConstRefPtr pSRS)
Utility method to convert a position to a given SRS with geographic coherence.
|
VgSRSConstRefPtr |
getGeoReferencedSRS()
Returns the engine's main georeferenced SRS.
|
VgSRSConstRefPtr |
getSceneSRS()
Returns the scene's metric SRS.
|
VgPosition |
offsetPosition(VgPosition pPosition,
double pHeadingInDegrees,
double pPitchInDegrees,
double pDistanceInMeters)
Offsets a position with a distance in meters given a direction.
|
VgPositionVector |
simplifyLineForWidth(VgPositionVector pPositions,
double pWidth)
Utility to simplify a line (vector of positions) such that the resulting line is simpler and its
turn's radius is wider than half the width.
|
public VgPositionToolbox(VgIEngine pEngine)
public void delete()
public double computeDistance(VgPositionVector pPositions)
pPositions
- An ordered sequence of positions.public double computeDistance(VgPosition pPos1, VgPosition pPos2)
pPos1
- Position onepPos2
- Position twopublic double computeHeadingAngle(VgPosition pPosPivot, VgPosition pPos1, VgPosition pPos2)
pPosPivot
- Pivot PositionpPos1
- Position onepPos2
- Position twopublic double computePitchAngle(VgPosition pPosPivot, VgPosition pPos1, VgPosition pPos2)
pPosPivot
- Pivot PositionpPos1
- Position 1pPos2
- Position 2public VgPosition computeMiddlePoint(VgPosition pPos1, VgPosition pPos2)
pPos1
- The first position.pPos2
- The second position.public VgPosition offsetPosition(VgPosition pPosition, double pHeadingInDegrees, double pPitchInDegrees, double pDistanceInMeters)
pPosition
- Start positionpHeadingInDegrees
- Heading in degrees [0,360] (0 for north, increasing
value start to east).pPitchInDegrees
- Pitch in degrees [-90,90] (0 to look "forward" towards
the horizon, negative values to look down)pDistanceInMeters
- Distance in meterspublic VgSRSRefPtr editGeoReferencedSRS()
public VgSRSConstRefPtr getGeoReferencedSRS()
public VgSRSRefPtr editSceneSRS()
public VgSRSConstRefPtr getSceneSRS()
public void convert(VgPosition pPos, VgSRSConstRefPtr pSRS)
pPos
- The position to convert.pSRS
- The spatial reference system in which to convert the position. If NULL it is assumed that WGS84 is wanted.public void geoConvert(VgPosition pPos, VgSRSConstRefPtr pSRS)
pPos
- The position to convert.pSRS
- The spatial reference system in which to convert the position. If NULL it is assumed that WGS84 is wanted.public VgPositionVector simplifyLineForWidth(VgPositionVector pPositions, double pWidth)
pPositions
- input vector of positionspWidth
- The width of the line that is to be simplified. The larger the width, the greater
the simplifiction of the line's position vector.