![]() |
VR-Forces 4.0.4 Class Documentation
|
Go to the source code of this file.
Functions | |
| DT_DLL_vrfutil double | distance2DSqAlongRailSegment (const DtVector &pos, const DtRailSegment *seg, const Coordinate_System &coordinateSystem, double &distanceToSeg) |
| Set of Useful functions when an entity is moving along rails. | |
| DT_DLL_vrfutil double | distance2DAlongRailFromStart (const DtVector &pos, const DtRailSegmentList *rails, const Coordinate_System &coordinateSystem) |
| How far from the start of the rail path pos is. This is distance along the path not as the crow flies. | |
| DT_DLL_vrfutil DtVector | locationAlongRail (double distanceFromStart, const DtRailSegmentList *rails, const Coordinate_System &coordinateSystem) |
| DT_DLL_vrfutil DtVector | locationAlongRailSegment (double distanceFromSegmentStart, const DtRailSegment *railSegment) |
| DT_DLL_vrfutil double | railHeading (const DtRailSegment *railSegment, const Coordinate_System &coordinateSystem) |
| Returns the heading from the start point to the end point of the given rail segment in the given coordinate system. | |
| DT_DLL_vrfutil int | findTurnDirection (double currentHeading, double desiredHeading, double &headingDiff) |
| Returns which direction the turn is, -1 indicates left, 1 indicates right. | |
| DT_DLL_vrfutil bool | intersection (const DtRailSegment *currentSegment, const DtRailSegment *nextSegment) |
| Given two segments, determine if where they meet is an intersection or just a bend in the road. | |
| DT_DLL_vrfutil int | findDrivingLane (const int turnDirection, const DtRailSegment *segment) |
| Given the direction we want to turn determine the driving lane to be in. | |
| DT_DLL_vrfutil const DtRailSegment * | findClosestSegment (const DtVector &pos, const DtRailSegmentList *rails, const Coordinate_System &coordinateSystem, double &distanceSqAlongClosest) |
| DT_DLL_vrfutil double | distance2DAlongRailBetween2Points (const DtVector &pos1, const DtVector &pos2, const DtRailSegmentList *rails, const Coordinate_System &coordinateSystem) |
| Distance between two positions on the rail path. | |
| DT_DLL_vrfutil double | closestPointInXY (const DtRailSegment *seg, const DtVector &pointFronm, DtVector &closest, const Coordinate_System &coordinateSystem) |
| DT_DLL_vrfutil DtRailSegment * | generateEntryPoint (const DtPoint &entry, DtRailSegmentList *rails, const DtVector &entityPos, bool drivingOnLeft, bool pivots, const double turnRadius, const double entityHeading, DtVector &entryPoint, const Coordinate_System &coordinateSystem) |
| Generates an entry rail segment to get the entity to smoothing get onto the rail path. | |
| DT_DLL_vrfutil void | setUpLocalToBodyCoordinateTransform (const DtVector &offset, const double heading, const Coordinate_System &coordinateSystem, DtCoordTransform &transform) |
| Returns a coordinate transform matrix to transform from local coordinates to the body coordinates based on the heading of the passed in railsegment and using the segment's end point as the offset. | |
| DT_DLL_vrfutil DtRwRailSegmentList * | createRwRailPath (const DtRailSegmentList *rails) |
| DT_DLL_vrfutil DtRwRailSegmentList * | createRwRailPathFromRoute (DtLocalVectorIterator &routeIter, const DtVector startPos, DtIteratorDirection dir, bool startAtClosestPt, const Coordinate_System &coordinateSystem) |
| DT_DLL_vrfutil void | fillInRailPathFromRoute (DtLocalVectorIterator &routeIter, const DtVector startPos, DtIteratorDirection dir, bool startAtClosestPt, const Coordinate_System &coordinateSystem, DtRailSegmentList &rails) |
| DT_DLL_vrfutil DtVector | convertGeocVecToTopo (const DtVector &geocPoint, const DtCoordTransform &matrix) |
| DT_DLL_vrfutil DtVector | convertTopoVecToGeoc (const DtVector &topoPoint, const DtCoordTransform &matrix) |
| DT_DLL_vrfutil DtCoordTransform | generateTransformMatrix (const DtVector &geocViewpoint) |
| DT_DLL_vrfutil double distance2DSqAlongRailSegment | ( | const DtVector & | pos, |
| const DtRailSegment * | seg, | ||
| const Coordinate_System & | coordinateSystem, | ||
| double & | distanceToSeg | ||
| ) |
Set of Useful functions when an entity is moving along rails.
Returns distance along provided rail segment pos is. distanceToSeg is the perpendicular distance from the segment the point is, ie to closest point on the segment
| DT_DLL_vrfutil double distance2DAlongRailFromStart | ( | const DtVector & | pos, |
| const DtRailSegmentList * | rails, | ||
| const Coordinate_System & | coordinateSystem | ||
| ) |
How far from the start of the rail path pos is. This is distance along the path not as the crow flies.
| DT_DLL_vrfutil DtVector locationAlongRail | ( | double | distanceFromStart, |
| const DtRailSegmentList * | rails, | ||
| const Coordinate_System & | coordinateSystem | ||
| ) |
| DT_DLL_vrfutil DtVector locationAlongRailSegment | ( | double | distanceFromSegmentStart, |
| const DtRailSegment * | railSegment | ||
| ) |
| DT_DLL_vrfutil double railHeading | ( | const DtRailSegment * | railSegment, |
| const Coordinate_System & | coordinateSystem | ||
| ) |
Returns the heading from the start point to the end point of the given rail segment in the given coordinate system.
| DT_DLL_vrfutil int findTurnDirection | ( | double | currentHeading, |
| double | desiredHeading, | ||
| double & | headingDiff | ||
| ) |
Returns which direction the turn is, -1 indicates left, 1 indicates right.
The difference in the 2 headings is returned in headingDiff.
| DT_DLL_vrfutil bool intersection | ( | const DtRailSegment * | currentSegment, |
| const DtRailSegment * | nextSegment | ||
| ) |
Given two segments, determine if where they meet is an intersection or just a bend in the road.
| DT_DLL_vrfutil int findDrivingLane | ( | const int | turnDirection, |
| const DtRailSegment * | segment | ||
| ) |
Given the direction we want to turn determine the driving lane to be in.
| DT_DLL_vrfutil const DtRailSegment* findClosestSegment | ( | const DtVector & | pos, |
| const DtRailSegmentList * | rails, | ||
| const Coordinate_System & | coordinateSystem, | ||
| double & | distanceSqAlongClosest | ||
| ) |
| DT_DLL_vrfutil double distance2DAlongRailBetween2Points | ( | const DtVector & | pos1, |
| const DtVector & | pos2, | ||
| const DtRailSegmentList * | rails, | ||
| const Coordinate_System & | coordinateSystem | ||
| ) |
Distance between two positions on the rail path.
| DT_DLL_vrfutil double closestPointInXY | ( | const DtRailSegment * | seg, |
| const DtVector & | pointFronm, | ||
| DtVector & | closest, | ||
| const Coordinate_System & | coordinateSystem | ||
| ) |
| DT_DLL_vrfutil DtRailSegment* generateEntryPoint | ( | const DtPoint & | entry, |
| DtRailSegmentList * | rails, | ||
| const DtVector & | entityPos, | ||
| bool | drivingOnLeft, | ||
| bool | pivots, | ||
| const double | turnRadius, | ||
| const double | entityHeading, | ||
| DtVector & | entryPoint, | ||
| const Coordinate_System & | coordinateSystem | ||
| ) |
Generates an entry rail segment to get the entity to smoothing get onto the rail path.
Provides the entry point in database coordinates. If the entity is already on the road, just move up the entry segment to allow the entity to drive to the start of the segment, no need for an entry segment. Returns the DtVector entryPoint which is the new point the entity should head towards to get onto the rail. If a entry rail segement is created it will be returned and the entryPoint will be it's starting point.
| DT_DLL_vrfutil void setUpLocalToBodyCoordinateTransform | ( | const DtVector & | offset, |
| const double | heading, | ||
| const Coordinate_System & | coordinateSystem, | ||
| DtCoordTransform & | transform | ||
| ) |
Returns a coordinate transform matrix to transform from local coordinates to the body coordinates based on the heading of the passed in railsegment and using the segment's end point as the offset.
| DT_DLL_vrfutil DtRwRailSegmentList* createRwRailPath | ( | const DtRailSegmentList * | rails | ) |
| DT_DLL_vrfutil DtRwRailSegmentList* createRwRailPathFromRoute | ( | DtLocalVectorIterator & | routeIter, |
| const DtVector | startPos, | ||
| DtIteratorDirection | dir, | ||
| bool | startAtClosestPt, | ||
| const Coordinate_System & | coordinateSystem | ||
| ) |
| DT_DLL_vrfutil void fillInRailPathFromRoute | ( | DtLocalVectorIterator & | routeIter, |
| const DtVector | startPos, | ||
| DtIteratorDirection | dir, | ||
| bool | startAtClosestPt, | ||
| const Coordinate_System & | coordinateSystem, | ||
| DtRailSegmentList & | rails | ||
| ) |
| DT_DLL_vrfutil DtVector convertGeocVecToTopo | ( | const DtVector & | geocPoint, |
| const DtCoordTransform & | matrix | ||
| ) |
| DT_DLL_vrfutil DtVector convertTopoVecToGeoc | ( | const DtVector & | topoPoint, |
| const DtCoordTransform & | matrix | ||
| ) |
| DT_DLL_vrfutil DtCoordTransform generateTransformMatrix | ( | const DtVector & | geocViewpoint | ) |