VR-Forces Development_Version Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator 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 /******************************************************************************
6 ** $RCSfile: DtCachedIntersector.h,v $ $Revision: 1.9 $ $State: Exp $
7 ******************************************************************************/
8 
18 
19 #pragma once
20 #include <vrvCore/DtIntersector.h>
21 
22 #include <matrix/vlVector.h>
23 #include <map>
24 
25 namespace makVrv
26 {
27  class DtIntersectorCache;
28 
33  {
34  public:
35 
37  DtCachedIntersector(DtDe& de, int modelSet);
38 
40  virtual ~DtCachedIntersector();
41 
56  virtual bool findNearestIntersectionToPoint(double x, double y, double z,
57  double vx, double vy, double vz, DtIntersectorResult& intersection,
59  std::vector<DtElementID>* ignoreList = 0, bool returnTriangle = false,
60  double maxIsectorLength = -1., bool useHighLod=false );
61 
69  virtual bool findAllIntersectionsThroughPoint( double x, double y, double z,
70  double vx, double vy, double vz, DtIntersector::DtIntersections& intersections,
72  std::vector<DtElementID>* ignoreList = 0, bool sort = true, bool useHighLod=false );
73 
80  virtual bool findFirstIntersectWithLineSegment(
81  double x, double y, double z, double end_x, double end_y, double end_z,
83  std::vector<DtElementID>* ignoreList=0, bool useHighLod=false);
84 
91  virtual bool findAllIntersectWithLineSegment(
92  double x, double y, double z, double end_x, double end_y, double end_z,
94  std::vector<DtElementID>* ignoreList=0, bool sort=true, bool useHighLod=false );
95 
101  virtual bool pick( DtChannel& channel, double mx, double my,
103  std::vector<DtElementID>* ignoreList=0);
104 
109  virtual bool pickAll( DtChannel* channel, double mx, double my,
111  std::vector<DtElementID>* ignoreList=0);
112 
115  virtual void setSharedCache(DtIntersectorCache*);
116 
118  virtual void setCacheLimit(int);
119 
121  virtual void clearCache();
122 
125  virtual void setDynamicOceanProperties(
127 
129  virtual DtIntersector::DynamicOceanProperties dynamicOceanProperties() const;
130 
131  protected:
138  };
139 }

Document ID: Generated on Tue Mar 8 22:13:38 EST 2016 from SVN revision 162938
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)