VR-Forces 4.5 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
roadPathFunctions.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2017 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
9 
10 #pragma once
11 
13 #include "vrfmodel/roadSegment.h"
14 #include "vrfutil/railSegment.h"
16 
17 class Coordinate_System;
18 
20 {
21 public:
23 
25 
26 public:
31  virtual bool setupRoadFromRailPath(const DtRailSegmentList& railPath,
32  const Coordinate_System* localCoordinateSystem,
33  bool drivingOnLeft,
34  DtRoadSegmentList& roadPath,
35  const bool debug = false);
36 
56  virtual bool getRoadPathAltitudes(DtRoadSegmentList& roadPath,
57  const DtAttachedTerrain* terrain,
58  bool &allTerrainAvailable, bool debug = false);
59 
62  virtual bool generatePathCenterlinePoints(
63  const DtRoadSegmentList& roadPath, bool drivingOnLeft,
64  std::vector<DtVector> & pointList);
65 
66 protected:
67 
68  virtual bool makeRoadPathListFromRailPath(const DtRailSegmentList& railPath,
69  DtRoadSegmentList& roadPath, const Coordinate_System* localCoordinateSystem,
70  int& roadSegNum, bool debug);
71 
77  virtual void connectSegmentLanes(const DtRoadSegmentList& roadPath,
78  bool drivingOnLeft, bool debug);
79 
84  virtual void calculatePathTemporaryGeometry(DtRoadSegmentList& roadPath,
85  bool isDrivingOnLeft, double maxSmallBendTurnRadius, bool debug);
86 
90  virtual void reconnectRoadSegments(DtRoadSegment* prevRoadSegment,
91  DtRoadSegment* nextRoadSegment,
92  const bool isDrivingOnLeft,
93  const double maxSmallBendTurnRadius,
94  const bool debug);
95 
101  virtual bool adjustShortSegmentsInCurve(DtRoadSegmentList& roadPath,
102  const bool isDrivingOnLeft, const Coordinate_System* localCoordinateSystem,
103  const double maxSmallBendTurnRadius, const bool debug);
104 
110  virtual bool adjustShortSegmentInS(DtRoadSegmentList& roadPath,
111  bool isDrivingOnLeft, const Coordinate_System* localCoordinateSystem,
112  double maxSmallBendTurnRadius, bool debug);
113 
116  virtual void calculateCurvesBetweenSegments(DtRoadSegmentList& roadPath,
117  bool isDrivingOnLeft, double maxSmallBendTurnRadius, bool debug);
118 
119 protected:
123 };

Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (www.mak.com)