VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtCachedIntersector.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2010 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
15 
16 #pragma once
17 #include <vrvCore/DtIntersector.h>
18 
19 #include <matrix/vlVector.h>
20 #include <map>
21 
22 namespace makVrv
23 {
24  class DtIntersectorCache;
25 
30  {
31  public:
32 
34  DtCachedIntersector(DtDe& de, int modelSet);
35 
37  virtual ~DtCachedIntersector();
38 
53  virtual bool findNearestIntersectionToPoint(double x, double y, double z,
54  double vx, double vy, double vz, DtIntersectorResult& intersection,
56  std::vector<DtElementID>* ignoreList = 0, bool returnTriangle = false,
57  double maxIsectorLength = -1., bool useHighLod=false );
58 
66  virtual bool findAllIntersectionsThroughPoint( double x, double y, double z,
67  double vx, double vy, double vz, DtIntersector::DtIntersections& intersections,
69  std::vector<DtElementID>* ignoreList = 0, bool sort = true, bool useHighLod=false );
70 
77  virtual bool findFirstIntersectWithLineSegment(
78  double x, double y, double z, double end_x, double end_y, double end_z,
80  std::vector<DtElementID>* ignoreList=0, bool useHighLod=false);
81 
88  virtual bool findAllIntersectWithLineSegment(
89  double x, double y, double z, double end_x, double end_y, double end_z,
91  std::vector<DtElementID>* ignoreList=0, bool sort=true, bool useHighLod=false );
92 
98  virtual bool pick( DtChannel& channel, double mx, double my,
100  std::vector<DtElementID>* ignoreList=0);
101 
106  virtual bool pickAll( DtChannel* channel, double mx, double my,
108  std::vector<DtElementID>* ignoreList=0);
109 
112  virtual void setSharedCache(DtIntersectorCache*);
113 
115  virtual void setCacheLimit(int);
116 
118  virtual void clearCache();
119 
122  virtual void setDynamicOceanProperties(
124 
126  virtual DtIntersector::DynamicOceanProperties dynamicOceanProperties() const;
127 
128  protected:
135  };
136 }
IntersectProperties
The IntersectProperties enum is a flag set that indicates the.
Definition: DtIntersector.h:135
bool myCacheIsShared
Definition: DtCachedIntersector.h:131
int myCacheLimit
Definition: DtCachedIntersector.h:133
DtIntersectorCache * myCache
Definition: DtCachedIntersector.h:130
Descriptor for a single intersection result.
Definition: DtIntersector.h:33
std::vector< DtIntersectorResult > DtIntersections
A vector of DtIntersectionRecords.
Definition: DtIntersector.h:154
the Intersector Cache class.
Definition: DtIntersectorCache.h:28
DynamicOceanProperties
Definition: DtIntersector.h:146
The abstract Channel Class.
Definition: DtChannel.h:30
Contains makVrv:DtIntersector, makVrv:DtIntersectorLineSegment, and makVrv:DtIntersectorResult classe...
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
A Cached Intersector will first look at the local cache, and, if the local cache does not have the in...
Definition: DtCachedIntersector.h:29
DtIntersector::DynamicOceanProperties myDynamicOceanProperties
Definition: DtCachedIntersector.h:134
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...
DtDe & myDe
Definition: DtCachedIntersector.h:129
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
Definition: DtIntersector.h:137
int myModelSet
Definition: DtCachedIntersector.h:132

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)