33 #include <matrix/geodeticCoord.h>
40 #include <boost/foreach.hpp>
44 class DtEnvironmentalVisualizerSet;
46 class DtVisualDefinitionSet;
60 virtual bool isGeocentric()
const;
94 virtual void setVisible(
bool visible,
bool updateOffsets =
true);
95 virtual void setVisible(
bool,
int context);
96 virtual bool isVisible()
const;
99 virtual void setUseHighestTerrainLod(
bool);
101 virtual void setHidden(
bool b);
104 virtual void setSymbolNameVisible(
bool);
108 virtual void setRespectPointAltitudePosition(
bool);
109 bool respectPointAltitudePosition()
const;
112 virtual void setupNodeMaskFlags();
115 virtual std::vector<makVrv::DtUniqueID> modelUniqueIDs()
const;
120 virtual void setLabelIndicatorVisible(
bool);
122 virtual void setIndicatorVisible(
bool);
124 virtual void setAltitudeToOrigin(
DtVector&)
const;
130 virtual DtVector centerOfMass()
const;
132 virtual void setDisplayName(
const std::string& s);
133 virtual std::string displayName()
const;
135 virtual void setLabel(
const std::string&);
136 virtual std::string label()
const;
138 virtual void setFormattingData(
const std::string& s);
139 virtual std::string formattingData()
const;
141 virtual void setDropShadow(
bool b);
143 virtual void setOverlayName(
const std::string& s);
144 virtual std::string overlayName()
const;
147 virtual void setHatLineVisible(
bool visible );
152 virtual void setDictionaryToDisplay(
int);
157 virtual void setMaxCeilingOffsetFromFloor(
double d);
158 virtual double maxCeilingOffsetFromFloor()
const;
159 virtual void clearMaxCeilingOffsetFromFloor();
165 virtual void setPickable(
bool b);
168 virtual void setSelected(
bool b);
170 virtual const DtEntityType& environmentalType()
const;
173 virtual void setWidgetEventsEnabled(
bool b);
175 virtual void updateSymbolDecorationPosition();
182 virtual void setFillStyle(
int);
186 int style = myListener.fillStyle();
189 ModelSetMap::const_iterator iter = myModelSetMap.begin();
191 while (iter != myModelSetMap.end())
193 std::vector<T_Class*> visualizers;
194 iter->second->findVisualizersByDynamicCast(visualizers);
195 typename std::vector<T_Class*>::iterator i =
197 typename std::vector<T_Class*>::iterator e =
206 style = (*i)->fillStyle();
207 iter = myModelSetMap.end();
216 virtual int fillStyle()
const;
220 virtual void setPenStyle(
int);
223 virtual int penStyle()
const;
225 virtual double length()
const;
226 virtual double width()
const;
228 virtual void setTopographicOffsetBetweenPoints(
const DtGeodeticCoord&
origin,
const DtGeodeticCoord& originWithOffset,
bool resetLocation =
true);
229 virtual void setAltitudeOffsetFromPrincipal(
double offset );
231 virtual void updateTopographicOffsets();
233 virtual DtVector geocentricPosition(
int i)
const;
235 virtual std::vector<DtVector> geocentricPositions()
const;
239 virtual void setNumberOfSpiderWebSpokes(
int);
242 virtual void setNumberOfSpiderWebRings(
int);
244 virtual void getSpiderWebInformation(
double& radius,
int& spokes,
int& rings)
const;
248 virtual void setWindSpeed(
double);
249 virtual double windSpeed()
const;
251 virtual void setAirTurbulence(
int);
252 virtual int airTurbulence()
const;
257 int style = myListener.penStyle();
260 ModelSetMap::const_iterator iter = myModelSetMap.begin();
262 while (iter != myModelSetMap.end())
264 std::vector<T_Class*> visualizers;
265 iter->second->findVisualizersByDynamicCast(visualizers);
266 typename std::vector<T_Class*>::iterator i =
268 typename std::vector<T_Class*>::iterator e =
277 style = (*i)->lineStipple();
278 iter = myModelSetMap.end();
287 template <
typename T_Class>
void color(
float &r,
float& g,
float& b,
float& a)
const
290 ModelSetMap::const_iterator iter = myModelSetMap.begin();
292 while (iter != myModelSetMap.end())
294 std::vector<T_Class*> visualizers;
295 iter->second->findVisualizersByDynamicCast(visualizers);
296 typename std::vector<T_Class*>::iterator i =
298 typename std::vector<T_Class*>::iterator e =
307 (*i)->getColor(r, g, b, a);
308 iter = myModelSetMap.end();
318 std::vector<T> visualizers;
320 typename std::vector<T>::iterator iter = visualizers.begin();
322 while (iter != visualizers.end())
324 (*iter)->setWidgetEventsEnabled(b);
335 virtual void setFloor(
double);
336 virtual void clearFloorSet();
337 virtual double floor()
const;
344 virtual void setCeiling(
double);
345 virtual double ceiling()
const;
346 virtual void clearCeilingSet();
355 virtual void realizeFacades();
358 virtual void unrealizeFacades(
bool willRecreate =
false);
360 virtual void setProjected(
bool);
361 virtual bool projected()
const;
363 virtual void updateGeometry();
365 virtual void setSymbolDecorationPosition(
const DtVector& v);
371 virtual void setIndicatorModelDefinitions(
372 const std::string& normalTheme,
373 const std::string& activeTheme,
374 const std::string& selectedTheme,
375 const std::string& multiSelectedTheme);
378 virtual void setIndicatorModelDefinitions(
int vertex,
379 const std::string& normalTheme,
380 const std::string& activeTheme,
381 const std::string& selectedTheme,
382 const std::string& multiSelectedTheme);
384 virtual void setAlwaysRecalculateGeometry(
bool);
385 bool alwaysRecalculateGeometry()
const;
387 virtual void setArrowStyle(
int);
388 virtual int arrowStyle()
const;
390 virtual void setArrowHeadPlacement(
int);
391 virtual int arrowHeadPlacement()
const;
393 virtual void setArrowSize(
double);
394 virtual double arrowSize()
const;
397 virtual bool fixedWidthSizing()
const;
399 virtual void setTopographicOffsetFromOrigin(
const DtVector& geod,
int i);
400 const DtVector& topographicOffsetFromOrigin(
int i);
403 virtual void setShapeVertexVisible(
bool);
405 virtual void setSymbolDecorationsVisible(
bool);
406 virtual void setColor(
int rgba);
407 virtual bool colorChanged()
const;
408 virtual int color()
const;
409 virtual void setColor(
float r,
float g,
float b,
float a);
410 virtual bool isPointObject()
const;
413 virtual void setPixelLineWidth(
float);
414 virtual float pixelLineWidth()
const;
416 virtual void setPhysicalLineHeight(
float);
417 virtual float physicalLineHeight()
const;
419 virtual void setOffsetPoints(
const std::vector<DtVector>&);
421 virtual void setPhysicalLineWidth(
float);
422 virtual float physicalLineWidth()
const;
424 virtual bool physicalLineHeightChanged()
const;
425 virtual void clearPhysicalLineHeightChanged();
427 virtual bool physicalLineWidthChanged()
const;
428 virtual void clearPhysicalLineWidthChanged();
430 virtual void setDefaultCeilingHeightIfCeilingIsNotSet(
double);
433 virtual void setForceType(DtForceType);
438 ModelSetMap::iterator iter = myModelSetMap.begin();
440 while (iter != myModelSetMap.end())
442 std::vector<T*> visualizers;
443 iter->second->findVisualizersByDynamicCast(visualizers);
444 typename std::vector<T*>::iterator i =
446 typename std::vector<T*>::iterator e =
454 (*i)->setAttached(efc->
modelSetMap()[iter->first]->uniqueID());
458 (*i)->setAttached(0);
469 std::vector<T> visualizers;
471 typename std::vector<T>::iterator i = visualizers.begin();
472 typename std::vector<T>::iterator e = visualizers.end();
477 (*i)->setForceColor(color.
R, color.
G, color.
B, color.
A);
483 virtual void selectVertex(
int index,
bool sel);
484 virtual void clearSelectedVertices();
486 virtual DtGeodeticCoord locationFromTopographicOffsetLocation(
const DtGeodeticCoord&
origin,
int index)
const;
493 virtual void setElementDefinition(
const DtEntityType&,
bool preparseOnly =
false);
500 virtual double altitudeForAltitudeType(
int)
const;
502 virtual void setOrigin(
const DtVector&);
503 virtual void setOrigin(
const DtGeodeticCoord&);
505 virtual void setPoint(
const DtVector&,
int,
bool andUpdateOffset =
true);
506 virtual int addPoint(
const DtVector&,
int index = -1,
bool resetLocation =
true,
bool notifyOfAddedPoint =
false);
507 virtual void setPoints(
const std::vector<DtVector>&,
bool updateOffsets =
true,
bool notifyOfAddedPoint =
false);
508 const std::vector<DtVector>& points()
const;
509 std::vector<DtVector> geocentricPoints()
const;
510 virtual void removePoint(
int);
511 DtGeodeticCoord geodeticPosition(
int)
const;
512 virtual void updateOffsets();
516 void setAltitudeAboveTerrain(
int,
double,
bool resetLocation =
true);
517 double altitudeAboveTerrain(
int = -1)
const;
519 void setAltitudeAboveSeaLevel(
int,
double,
bool resetLocation =
true);
520 double altitudeAboveSeaLevel(
int = -1)
const;
522 int numVertices()
const;
531 virtual void selectPoint(
int);
532 virtual void clearSelectedPoint();
534 int selectedPoint()
const;
536 virtual void setIconScale(
float);
538 virtual bool appearanceChanged()
const;
541 virtual double calculatedHeading()
const;
544 virtual DtVector geometricCenter()
const;
547 virtual DtGeodeticCoord geodeticCenter()
const;
550 virtual std::vector<DtVector> rotatePointsTo(
const std::vector<DtVector>&,
double heading)
const;
554 virtual void setTopographicOrientation(
const DtTaitBryan&);
555 virtual void setLocalOrientation(
const DtTaitBryan&);
558 virtual void updateSymbolRotation(
const DtTaitBryan&);
561 virtual void updateSymbolRotation(
double);
564 virtual void setAltitudeAboveSeaLevel(
double);
565 virtual void setAltitudeAboveTerrain(
double);
567 virtual DtVector localLocation(
const DtGeodeticCoord& geodLocation)
const;
568 virtual DtVector localLocation()
const;
571 virtual bool isBox()
const;
574 virtual bool isTextBox()
const;
577 virtual bool isLine()
const;
580 virtual bool isArea()
const;
583 virtual bool isUnknown()
const;
586 virtual bool isCircle()
const;
589 virtual bool isWedge()
const;
592 virtual bool isSpiderWeb()
const;
596 virtual bool isEllipse()
const;
600 virtual bool isArc()
const;
602 virtual void setIsClosedFigure(
bool);
603 virtual bool isClosedFigure()
const;
612 virtual void updateHeading();
617 virtual void mergeExtendedData(
const std::map<std::string, std::string>&);
619 virtual void setExtendedData(
const std::map<std::string, std::string>&);
620 virtual std::map<std::string, std::string> extendedData()
const;
622 virtual void setExtendedLabels(
const std::map<int, DtString>&);
623 virtual std::map<int, DtString> extendedLabels()
const;
625 virtual void updateOffset(
const DtVector& position,
int i,
bool force =
false);
626 virtual void setAltitudeForPoint(
const DtVector& v,
int index);
637 virtual int clampTypeFor(
int index)
const;
646 virtual void setSpiderWebRadius(
double);
654 virtual void finalizeSetup();
656 virtual void updateSpiderWebRadius();
661 float myDefaultColor[4];
672 typedef std::map<int, makVrv::DtEnvironmentalVisualizerSet*>
ModelSetMap;
boost::signals2::connection myFinalizeConnection
Definition: environmentalFacadeCollection.h:727
IntersectProperties
The IntersectProperties enum is a flag set that indicates the.
Definition: DtIntersector.h:135
Contains makVrv::DtModelSetRealizationManager class.
makVrv::DtBaseConnection * myConnection
Definition: environmentalFacadeCollection.h:663
double myWindSpeed
Definition: environmentalFacadeCollection.h:721
Definition: environmentalFacadeCollection.h:66
int myColor
Definition: environmentalFacadeCollection.h:687
void findVisualizers(std::vector< VisualizerClass * > &visualizers)
Find all instances of a Visualizer by schema name.
Definition: DtVisualizerSet.h:240
Definition: vrfObjectManipulationHandlerBaseClass.h:54
bool myHatLinesVisible
Definition: environmentalFacadeCollection.h:693
boost::signals2::signal< void(DtEnvironmentalFacadeCollection *)> signal_locationsChanged
Definition: environmentalFacadeCollection.h:639
Virtual base class.
Definition: DtVirtualBaseClass.h:19
A unicode string.
Definition: DtUnicode.h:33
double myMaxCeilingOffsetFromFloor
Definition: environmentalFacadeCollection.h:725
bool myAppearanceChanged
Definition: environmentalFacadeCollection.h:691
bool myCeilingSet
Definition: environmentalFacadeCollection.h:699
voidpf uLong int origin
Definition: ioapi.h:42
bool myRespectPointAltitudePosition
Definition: environmentalFacadeCollection.h:719
const ModelSetMap & modelSetMap() const
Definition: entityFacadeCollection.h:81
void setForceColor(makVrv::DtVisualizerSet *s, makVrv::DtForceManager::RGBAColor color)
Definition: environmentalFacadeCollection.h:467
Definition: DtForceManager.h:46
bool myIsClosedFigure
Definition: environmentalFacadeCollection.h:692
makVrv::DtDe & myDe
Definition: environmentalFacadeCollection.h:63
boost::signals2::signal< void(DtEnvironmentalFacadeCollection *, int, bool)> signal_vertexSelected
Definition: environmentalFacadeCollection.h:640
std::vector< double > myAltitudeAboveSeaLevel
Definition: environmentalFacadeCollection.h:669
bool myIndicatorsVisible
Definition: environmentalFacadeCollection.h:714
bool mySetupNodeMaskFlags
Definition: environmentalFacadeCollection.h:710
makVrv::DtUnicode myElementDefinition
Definition: environmentalFacadeCollection.h:659
char myEnvironmentType
Definition: environmentalFacadeCollection.h:685
The DtTacticalGraphicStateListener is a class that deals with basic TacticalGraphic process code (suc...
Definition: DtTacticalGraphicStateListener.h:20
std::vector< double > myAltitudeAboveTerrain
Definition: environmentalFacadeCollection.h:668
#define DT_DLL_VRFGUICORE
Contains DLL export macros.
Definition: vrfGuiCore.h:25
DtUniqueID DtElementID
The ElementID is a specific type of unique ID used to represent VR-Vantage uniquely defined elements...
Definition: DtUniqueID.h:23
void setAttached(DtVrfObjectFacadeInterface *p)
Definition: environmentalFacadeCollection.h:435
bool myUseHighestTerrainLOD
Definition: environmentalFacadeCollection.h:709
int myDictionaryToDisplay
Definition: environmentalFacadeCollection.h:718
Definition: entityStateListenerExtensions.h:30
const DtExtTacticalGraphicStateListener & listener() const
Definition: environmentalFacadeCollection.h:524
bool floorSet() const
Definition: environmentalFacadeCollection.h:338
bool myNeedsGeometryUpdate
Definition: environmentalFacadeCollection.h:708
Contains makVrv:DtEnvironmentalIndicatorVisualizer.h class.
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:34
int mySelectedPoint
Definition: environmentalFacadeCollection.h:676
std::vector< int > myClampType
Definition: environmentalFacadeCollection.h:670
double myFloor
Definition: environmentalFacadeCollection.h:696
int myFillStyle
Definition: environmentalFacadeCollection.h:703
boost::signals2::signal< void(DtEnvironmentalFacadeCollection *)> signal_geometryUpdated
Definition: environmentalFacadeCollection.h:641
bool myColorChanged
Definition: environmentalFacadeCollection.h:688
bool myAttached
Definition: environmentalFacadeCollection.h:707
bool myWidgetEventsEnabled
Definition: environmentalFacadeCollection.h:712
std::map< int, makVrv::DtEnvironmentalVisualizerSet * > ModelSetMap
Definition: environmentalFacadeCollection.h:672
Contains makVrv::DtSharedModelSetSettings class.
Contains makVrv:DtTacticalGraphicStateListener class.
Contains makVrv:DtEnvironmentalVertexVisualizer class.
Definition: vrfObjectFacadeInterface.h:47
bool myAlwaysRecalculateGeometry
Definition: environmentalFacadeCollection.h:679
The declaration of the makArchives::DtEnvironmentRecord class.
std::vector< DtVector > myTopographicOffsetFromOrigin
Definition: environmentalFacadeCollection.h:678
float B
Definition: DtForceManager.h:58
bool myPhysicalLineWidthChanged
Definition: environmentalFacadeCollection.h:700
Definition: DtIntersector.h:139
bool myDisplayVertices
Definition: environmentalFacadeCollection.h:689
int myAirTurbulence
Definition: environmentalFacadeCollection.h:723
Definition: vrfObjectManipulationHandlerBaseClass.h:59
void color(float &r, float &g, float &b, float &a) const
Definition: environmentalFacadeCollection.h:287
double myDefaultCeilingHeightIfCeilingIsNotSet
Definition: environmentalFacadeCollection.h:716
double myDefaultWidth
Definition: environmentalFacadeCollection.h:675
float R
Definition: DtForceManager.h:58
int penStyle() const
Definition: environmentalFacadeCollection.h:255
bool myIsVolumetric
Definition: environmentalFacadeCollection.h:706
This visualizer set class holds is designed to only hold DtEnvironmentalStateVisualizer based classes...
Definition: DtEnvironmentalVisualizerSet.h:27
A DtSimCommand subclass which specifies a change to the weather settings for the specified weather ar...
Definition: changeWeatherCommand.h:29
bool myPhysicalLineHeightChanged
Definition: environmentalFacadeCollection.h:701
bool myPickable
Definition: environmentalFacadeCollection.h:713
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
void setWidgetEventsEnabled(makVrv::DtEnvironmentalVisualizerSet *v, bool b)
Template to enable mouse events on each visualizer.
Definition: environmentalFacadeCollection.h:316
DtExtTacticalGraphicStateListener & listener()
Returns the listener of this class.
Definition: environmentalFacadeCollection.h:606
void setNeedsUpdate(bool b)
Definition: environmentalFacadeCollection.h:614
This contains all the DtVisualizers used to visualize an element in a particular model set...
Definition: DtVisualizerSet.h:31
Definition: environmentalFacadeCollection.h:730
Definition: entityFacadeCollection.h:65
Contains makVrv:DtBaseConnection class.
Contains makVrv::DtForceManager class.
makVrv::DtDe & myDe
Definition: environmentalFacadeCollection.h:743
bool myMaxCeilingOffsetFromFloorSet
Definition: environmentalFacadeCollection.h:726
bool mySymbolDecorationsVisible
Definition: environmentalFacadeCollection.h:715
bool myShapeVerticesDisabled
Definition: environmentalFacadeCollection.h:694
void findVisualizersByDynamicCast(std::vector< VisualizerClass * > &visualizers)
Find all instance of a visualizer by dynamically casting to the class type rather than doing the fast...
Definition: DtVisualizerSet.h:259
std::map< int, UniqueIDs > myIds
Definition: environmentalFacadeCollection.h:683
DtExtTacticalGraphicStateListener(makVrv::DtUniqueID id, makVrv::DtDe &de)
Definition: environmentalFacadeCollection.h:56
Definition: vrfObjectManipulationHandlerBaseClass.h:53
virtual ~DtExtTacticalGraphicStateListener()
Definition: environmentalFacadeCollection.h:58
float G
Definition: DtForceManager.h:58
float A
Definition: DtForceManager.h:58
EnviornmentalTypes
Definition: environmentalFacadeCollection.h:70
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
ModelSetMap myModelSetMap
Definition: environmentalFacadeCollection.h:673
Contains makVrv:DtEnvironmentalVisualizerSet class.
bool myFloorSet
Definition: environmentalFacadeCollection.h:697
double defaultCeilingHeightIfCeilingIsNotSet()
Definition: environmentalFacadeCollection.h:431
bool ceilingSet() const
Definition: environmentalFacadeCollection.h:347
voidpf uLong offset
Definition: ioapi.h:42
DtExtTacticalGraphicStateListener myListener
Aggregate is also an entity state listener, so, it can be used.
Definition: environmentalFacadeCollection.h:667
int fillStyle() const
Definition: environmentalFacadeCollection.h:184
bool myNeedsNodeMaskUpdate
Definition: environmentalFacadeCollection.h:711
Definition: environmentalFacadeCollection.h:53
double myArrowSize
Definition: environmentalFacadeCollection.h:705
bool myShowVertices
Definition: environmentalFacadeCollection.h:690
std::vector< makVrv::DtUniqueID > UniqueIDs
Local vertex ids.
Definition: environmentalFacadeCollection.h:682
bool dictionaryToDisplay() const
Definition: environmentalFacadeCollection.h:153
std::map< int, bool > ModelSetVisualizedMap
Definition: DtSharedModelSetSettings.h:27