VR-Forces 4.3.1 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
railUtils.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2010 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #pragma once
10 
11 #include "vrfutil/railSegment.h"
12 #include "matrix/vlVector.h"
13 #include "vrfutil/vrfutilDefines.h"
14 #include "terrainCS/coordSystem.h"
15 #include "vrfutil/iteratorBase.h"
16 #include "vrfutil/rwRailSegment.h"
18 #include "geometry/point.h"
19 
21 
25  const Coordinate_System& coordinateSystem,double & distanceToSeg);
26 
28 DT_DLL_vrfutil double distance2DAlongRailFromStart(const DtVector & pos, const DtRailSegmentList * rails,const Coordinate_System& coordinateSystem);
29 
31 DT_DLL_vrfutil DtVector locationAlongRail(double distanceFromStart, const DtRailSegmentList * rails,const Coordinate_System& coordinateSystem);
32 
34 DT_DLL_vrfutil DtVector locationAlongRailSegment(double distanceFromSegmentStart, const DtRailSegment* railSegment);
35 
37 DT_DLL_vrfutil double railHeading(const DtRailSegment* railSegment,const Coordinate_System& coordinateSystem);
38 
41 DT_DLL_vrfutil int findTurnDirection(double currentHeading, double desiredHeading,double & headingDiff);
42 
44 DT_DLL_vrfutil bool intersection(const DtRailSegment * currentSegment,const DtRailSegment * nextSegment);
45 
47 DT_DLL_vrfutil int findDrivingLane(const int turnDirection,const DtRailSegment* segment);
48 
49 DT_DLL_vrfutil const DtRailSegment * findClosestSegment( const DtVector & pos, const DtRailSegmentList * rails, const Coordinate_System & coordinateSystem,
50  double & distanceSqAlongClosest);
52 DT_DLL_vrfutil double distance2DAlongRailBetween2Points(const DtVector & pos1, const DtVector & pos2, const DtRailSegmentList * rails,
53  const Coordinate_System& coordinateSystem);
54 
55 DT_DLL_vrfutil double closestPointInXY(const DtRailSegment * seg, const DtVector & pointFronm, DtVector & closest,
56  const Coordinate_System & coordinateSystem);
57 
68  const int lane, const double headingChange);
69 
75 DT_DLL_vrfutil DtRailSegment * generateEntryPoint(const DtPoint & entry, DtRailSegmentList * rails,const DtVector & entityPos,
76  bool drivingOnLeft,bool pivots,const double turnRadius,const double entityHeading,DtVector & entryPoint, const Coordinate_System& coordinateSystem);
77 
80 DT_DLL_vrfutil void setUpLocalToBodyCoordinateTransform(const DtVector & offset, const double heading,
81  const Coordinate_System& coordinateSystem,DtCoordTransform& transform);
82 
84 
86  DtIteratorDirection dir,bool startAtClosestPt,
87  const Coordinate_System& coordinateSystem);
88 
90  DtIteratorDirection dir,bool startAtClosestPt,
91  const Coordinate_System& coordinateSystem,DtRailSegmentList & rails);
92 
110 DT_DLL_vrfutil bool calcOrthoOffset(const DtPoint& startPoint, const DtPoint& endPoint, double distance,
111  DtPoint& leftOffset, DtPoint& rightOffset);
112 
123 DT_DLL_vrfutil bool findPointOnLine(const DtPoint& startPoint,
124  const DtPoint& endPoint, DtPoint& result, double distance);
125 
126 DT_DLL_vrfutil bool isRailWithinDistance(const Coordinate_System* coordSys, const DtVector& sourceLocation,
127  DtRailSegment* railSegment, double allowDistance, double& actualDistSq);
128 
129 DT_DLL_vrfutil bool isLocationWithinRoad(const Coordinate_System* coordSys, const DtVector& sourceLocation,
130  DtRailSegment* railSegment);
131 
132 DT_DLL_vrfutil DtVector convertGeocVecToTopo(const DtVector& geocPoint, const DtCoordTransform& matrix);
133 
134 DT_DLL_vrfutil DtVector convertTopoVecToGeoc(const DtVector& topoPoint, const DtCoordTransform& matrix);
135 
136 DT_DLL_vrfutil DtCoordTransform generateTransformMatrix(const DtVector& geocViewpoint);

Document ID: Generated on Wed Jul 29 00:55:00 EDT 2015 from SVN revision 155257
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)