VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtAttachableIntervisibilityUpdater.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2022 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
13 
14 #include <vrvCore/DtIntersector.h>
15 
17 
18 namespace makVrv
19 {
20  class DtIntersectorsContainer;
21  class DtCachedIntersectorsContainer;
22  class DtCoordinateSystem;
23  class DtObserverModeManager;
24 
30  {
31  public:
32 
35 
38 
42  virtual void setFixedDistance( bool );
43 
44  protected:
45 
48  virtual void update( DtTime tNow );
49 
51  virtual bool doIntersection(const DtTime tNow);
52 
53  // Updates the sceneObject with inter-visibility information
54  virtual void updateSceneObject( DtTime tNow );
55 
57  virtual double calculateDistance( const DtVector& start,
58  const DtVector& end, DtVector* circleOrigin = 0 ) const;
59 
61  virtual void calculateFixedDistance();
62 
65  virtual DtVector fixedDistanceFrom( const DtVector& start, const DtVector& end,
66  double heading, double distance ) const;
67 
69  virtual double calculateHeading( const DtVector& start,
70  const DtVector& end ) const;
71 
73  virtual DtVector clamp( const DtVector& pt ) const;
74 
76  virtual void slot_coordinateSystemChanged();
77 
78  protected:
79 
81  {
86  };
87 
89 
93 
94  DtIntersectorsContainer* myIntersectors = nullptr;
95  DtCachedIntersectorsContainer* myCachedIntersectorsContainer = nullptr;
96 
98 
99  // local clone of the system wide coordinate system.
100  // for thread safety.
101  DtCoordinateSystem* myCoordinateSystem = nullptr;
102 
104  };
105 }
106 
IntersectionInformation myIntersectionInformation
Definition: DtAttachableIntervisibilityUpdater.h:88
double myFixedDistance
Definition: DtAttachableIntervisibilityUpdater.h:91
DtObserverModeManager is responsible for loading and saving observer modes, and providing a mechanism...
Definition: DtObserverModeManager.h:53
DtSignalConnectionManager myConnections
Definition: DtAttachableIntervisibilityUpdater.h:97
Utility class that contains intersectors for all model sets in the system (3d, xr, 2d) Use an object of this class when all models sets can be possibly needed. When you know which model set you need, you can just use the DtIntersectorCreator to create an intersector for a model set Models sets corresponding to 3d, xr and 2d are created by default (these correspond to values of 0, 1 and 5) Additional model sets can be registered with DtIntersectorsContainer::registerModelSet.
Definition: DtIntersectorsContainer.h:36
Descriptor for a single intersection result.
Definition: DtIntersectorResult.h:21
bool intersection
Definition: DtAttachableIntervisibilityUpdater.h:82
Contains makVrv:DtIntersector class.
DT_DLL_VRVCORE double distance(const makVrv::DtCoordinateSystem &, const DtVector &from, const DtVector &to)
Returns the distance from the two points. Coordinates are in local database coordinates The coordinat...
const DtObserverModeManager & myObserverModeManager
Definition: DtAttachableIntervisibilityUpdater.h:103
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
DtIntersectorResult result
Definition: DtAttachableIntervisibilityUpdater.h:85
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
double myFixedHeading
Definition: DtAttachableIntervisibilityUpdater.h:92
DtVector startPoint
Definition: DtAttachableIntervisibilityUpdater.h:83
DtVector endPoint
Definition: DtAttachableIntervisibilityUpdater.h:84
The DtCoordinateSystem is used to manage the current coordinate system of the scene.
Definition: DtCoordinateSystem.h:40
The DtCachedIntersectorsContainer class contains instances of cached intersectors of different model ...
Definition: DtCachedIntersectorsContainer.h:43
Contains the DtLineModelUpdater class declaration.
Base class to provide boost signal/slot management.
bool myFixDistance
Definition: DtAttachableIntervisibilityUpdater.h:90
The DtDe is the core component of any VR-Vantage application. It owns a DtRenderer, DtDeCommunicator, as well as a DtDisplay and other things.
Definition: DtDe.h:70
Base class for updaters updating segmented line models Contains methods and information struct for wo...
Definition: DtLineModelUpdater.h:22
Class which will keep track of Intervisibility between an origin and an end point. Will update all scene objects attached to it with the Intervisibility information.
Definition: DtAttachableIntervisibilityUpdater.h:29
Definition: DtAttachableIntervisibilityUpdater.h:80

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)