VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
navLadder.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2019 MaK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 
10 #pragma once
12 #include <matrix/vlVector.h>
13 #include <list>
14 
15 
16 class DtNavEdge;
17 class DtNavArea;
19 typedef unsigned int DtLadderIndex;
20 typedef std::pair<DtLadderLocation, DtLadderIndex> DtLadderPoint;
21 typedef unsigned int DtNavTagUniqueIdType;
22 
24 {
27 };
28 
29 
36 {
37 public:
38  virtual ~DtNavLadder() {};
39 
40  virtual const std::vector< DtLadderPoint > & ladderPoints() const;
41  virtual const std::vector< DtLadderPoint > & ladderExitEntryPoints() const;
42  virtual const DtNavTagUniqueIdType& ladderId() const;
43 
44  virtual bool contains(const std::vector< DtVector >& pointsToCheck) const;
45 
46  static DtNavLadder createLadderFromNavEdge(const DtNavEdge* edge);
47  static void createLaddersFromNavEdges(const std::list<DtNavEdge*>&, std::list<DtNavLadder>& result, DtLadderCreationOptions opt = ConsumeEdgesYes);
48 
49  static void findNearbyLadders(const DtString& navigationProfile, DtNavArea* navArea, const DtVector& localStartPoint, double range, std::list<DtNavLadder>& result);
50 
51 protected:
52  virtual void addMainPoint(const DtLadderPoint&);
53  virtual void addEntryExitPoint(const DtLadderPoint&);
54  virtual void setLadderId(const DtNavTagUniqueIdType& id);
55  DtNavLadder();
56  std::vector<DtLadderPoint> myMainLadderPoints;
57  std::vector<DtLadderPoint> myEntryExitLadderPoints;
59 };
DtNavTagUniqueIdType myLadderId
Definition: navLadder.h:58
std::vector< DtLadderPoint > myMainLadderPoints
Definition: navLadder.h:56
Contains all the data and logic for navigation within a specific area.
Definition: navArea.h:181
Contains all the data and logic for navigation within a specific edge.
Definition: navEdge.h:18
virtual ~DtNavLadder()
Definition: navLadder.h:38
#define DT_DLL_vrfNavigation
This file is used to determine how to build.
Definition: vrfNavigationDefines.h:26
std::vector< DtLadderPoint > myEntryExitLadderPoints
Definition: navLadder.h:57
Contains all the data and logic for navigation within a specific edge reinterpreted to a ladder...
Definition: navLadder.h:35

Document ID: Generated on Tue Sep 21 17:42:52 EDT 2021 from SVN revision 234861
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)