33 #include <matrix/geodeticCoord.h>
40 #include <boost/foreach.hpp>
44 class DtEnvironmentalVisualizerSet;
46 class DtVisualDefinitionSet;
60 virtual bool isGeocentric()
const;
93 virtual void setVisible(
bool visible,
bool updateOffsets =
true);
94 virtual void setVisible(
bool,
int context);
95 virtual bool isVisible()
const;
98 virtual void setUseHighestTerrainLod(
bool);
100 virtual void setHidden(
bool b);
103 virtual void setSymbolNameVisible(
bool);
107 virtual void setRespectPointAltitudePosition(
bool);
108 bool respectPointAltitudePosition()
const;
111 virtual void setupNodeMaskFlags();
114 virtual std::vector<makVrv::DtUniqueID> modelUniqueIDs()
const;
119 virtual void setLabelIndicatorVisible(
bool);
121 virtual void setIndicatorVisible(
bool);
123 virtual void setAltitudeToOrigin(
DtVector&)
const;
129 virtual DtVector centerOfMass()
const;
131 virtual void setDisplayName(
const std::string& s);
132 virtual std::string displayName()
const;
134 virtual void setLabel(
const std::string&);
135 virtual std::string label()
const;
137 virtual void setFormattingData(
const std::string& s);
138 virtual std::string formattingData()
const;
140 virtual void setDropShadow(
bool b);
142 virtual void setOverlayName(
const std::string& s);
143 virtual std::string overlayName()
const;
146 virtual void setHatLineVisible(
bool visible );
151 virtual void setDictionaryToDisplay(
int);
156 virtual void setMaxCeilingOffsetFromFloor(
double d);
157 virtual double maxCeilingOffsetFromFloor()
const;
158 virtual void clearMaxCeilingOffsetFromFloor();
164 virtual void setPickable(
bool b);
167 virtual void setSelected(
bool b);
169 virtual const DtEntityType& environmentalType()
const;
172 virtual void setWidgetEventsEnabled(
bool b);
174 virtual void updateSymbolDecorationPosition();
181 virtual void setFillStyle(
int);
185 int style = myListener.fillStyle();
188 ModelSetMap::const_iterator iter = myModelSetMap.begin();
190 while (iter != myModelSetMap.end())
192 std::vector<T_Class*> visualizers;
193 iter->second->findVisualizersByDynamicCast(visualizers);
194 typename std::vector<T_Class*>::iterator i =
196 typename std::vector<T_Class*>::iterator e =
205 style = (*i)->fillStyle();
206 iter = myModelSetMap.end();
215 virtual int fillStyle()
const;
219 virtual void setPenStyle(
int);
222 virtual int penStyle()
const;
224 virtual double length()
const;
225 virtual double width()
const;
227 virtual void setTopographicOffsetBetweenPoints(
const DtGeodeticCoord&
origin,
const DtGeodeticCoord& originWithOffset,
bool resetLocation =
true);
228 virtual void setAltitudeOffsetFromPrincipal(
double offset );
230 virtual void updateTopographicOffsets();
232 virtual DtVector geocentricPosition(
int i)
const;
234 virtual std::vector<DtVector> geocentricPositions()
const;
238 virtual void setNumberOfSpiderWebSpokes(
int);
241 virtual void setNumberOfSpiderWebRings(
int);
243 virtual void getSpiderWebInformation(
double& radius,
int& spokes,
int& rings)
const;
248 int style = myListener.penStyle();
251 ModelSetMap::const_iterator iter = myModelSetMap.begin();
253 while (iter != myModelSetMap.end())
255 std::vector<T_Class*> visualizers;
256 iter->second->findVisualizersByDynamicCast(visualizers);
257 typename std::vector<T_Class*>::iterator i =
259 typename std::vector<T_Class*>::iterator e =
268 style = (*i)->lineStipple();
269 iter = myModelSetMap.end();
278 template <
typename T_Class>
void color(
float &r,
float& g,
float& b,
float& a)
const
281 ModelSetMap::const_iterator iter = myModelSetMap.begin();
283 while (iter != myModelSetMap.end())
285 std::vector<T_Class*> visualizers;
286 iter->second->findVisualizersByDynamicCast(visualizers);
287 typename std::vector<T_Class*>::iterator i =
289 typename std::vector<T_Class*>::iterator e =
298 (*i)->getColor(r, g, b, a);
299 iter = myModelSetMap.end();
309 std::vector<T> visualizers;
311 typename std::vector<T>::iterator iter = visualizers.begin();
313 while (iter != visualizers.end())
315 (*iter)->setWidgetEventsEnabled(b);
326 virtual void setFloor(
double);
327 virtual void clearFloorSet();
328 virtual double floor()
const;
335 virtual void setCeiling(
double);
336 virtual double ceiling()
const;
337 virtual void clearCeilingSet();
346 virtual void realizeFacades();
349 virtual void unrealizeFacades(
bool willRecreate =
false);
351 virtual void setProjected(
bool);
352 virtual bool projected()
const;
354 virtual void updateGeometry();
356 virtual void setSymbolDecorationPosition(
const DtVector& v);
362 virtual void setIndicatorModelDefinitions(
363 const std::string& normalTheme,
364 const std::string& activeTheme,
365 const std::string& selectedTheme,
366 const std::string& multiSelectedTheme);
369 virtual void setIndicatorModelDefinitions(
int vertex,
370 const std::string& normalTheme,
371 const std::string& activeTheme,
372 const std::string& selectedTheme,
373 const std::string& multiSelectedTheme);
375 virtual void setAlwaysRecalculateGeometry(
bool);
376 bool alwaysRecalculateGeometry()
const;
378 virtual void setArrowStyle(
int);
379 virtual int arrowStyle()
const;
381 virtual void setArrowHeadPlacement(
int);
382 virtual int arrowHeadPlacement()
const;
384 virtual void setArrowSize(
double);
385 virtual double arrowSize()
const;
388 virtual bool fixedWidthSizing()
const;
390 virtual void setTopographicOffsetFromOrigin(
const DtVector& geod,
int i);
391 const DtVector& topographicOffsetFromOrigin(
int i);
394 virtual void setShapeVertexVisible(
bool);
396 virtual void setSymbolDecorationsVisible(
bool);
397 virtual void setColor(
int rgba);
398 virtual bool colorChanged()
const;
399 virtual int color()
const;
400 virtual void setColor(
float r,
float g,
float b,
float a);
401 virtual bool isPointObject()
const;
404 virtual void setPixelLineWidth(
float);
405 virtual float pixelLineWidth()
const;
407 virtual void setPhysicalLineHeight(
float);
408 virtual float physicalLineHeight()
const;
410 virtual void setOffsetPoints(
const std::vector<DtVector>&);
412 virtual void setPhysicalLineWidth(
float);
413 virtual float physicalLineWidth()
const;
415 virtual bool physicalLineHeightChanged()
const;
416 virtual void clearPhysicalLineHeightChanged();
418 virtual bool physicalLineWidthChanged()
const;
419 virtual void clearPhysicalLineWidthChanged();
421 virtual void setDefaultCeilingHeightIfCeilingIsNotSet(
double);
424 virtual void setForce(
int);
429 ModelSetMap::iterator iter = myModelSetMap.begin();
431 while (iter != myModelSetMap.end())
433 std::vector<T*> visualizers;
434 iter->second->findVisualizersByDynamicCast(visualizers);
435 typename std::vector<T*>::iterator i =
437 typename std::vector<T*>::iterator e =
445 (*i)->setAttached(efc->
modelSetMap()[iter->first]->uniqueID());
449 (*i)->setAttached(0);
460 std::vector<T> visualizers;
462 typename std::vector<T>::iterator i = visualizers.begin();
463 typename std::vector<T>::iterator e = visualizers.end();
468 (*i)->setForceColor(color.
R, color.
G, color.
B, color.
A);
474 virtual void selectVertex(
int index,
bool sel);
475 virtual void clearSelectedVertices();
477 virtual DtGeodeticCoord locationFromTopographicOffsetLocation(
const DtGeodeticCoord&
origin,
int index)
const;
484 virtual void setElementDefinition(
const DtEntityType&,
bool preparseOnly =
false);
491 virtual double altitudeForAltitudeType(
int)
const;
493 virtual void setOrigin(
const DtVector&);
494 virtual void setOrigin(
const DtGeodeticCoord&);
496 virtual void setPoint(
const DtVector&,
int,
bool andUpdateOffset =
true);
497 virtual int addPoint(
const DtVector&,
int index = -1,
bool resetLocation =
true,
bool notifyOfAddedPoint =
false);
498 virtual void setPoints(
const std::vector<DtVector>&,
bool updateOffsets =
true,
bool notifyOfAddedPoint =
false);
499 const std::vector<DtVector>& points()
const;
500 std::vector<DtVector> geocentricPoints()
const;
501 virtual void removePoint(
int);
502 DtGeodeticCoord geodeticPosition(
int)
const;
503 virtual void updateOffsets();
507 void setAltitudeAboveTerrain(
int,
double,
bool resetLocation =
true);
508 double altitudeAboveTerrain(
int = -1)
const;
510 void setAltitudeAboveSeaLevel(
int,
double,
bool resetLocation =
true);
511 double altitudeAboveSeaLevel(
int = -1)
const;
513 int numVertices()
const;
522 virtual void selectPoint(
int);
523 virtual void clearSelectedPoint();
525 int selectedPoint()
const;
527 virtual void setIconScale(
float);
529 virtual bool appearanceChanged()
const;
532 virtual double calculatedHeading()
const;
535 virtual DtVector geometricCenter()
const;
538 virtual DtGeodeticCoord geodeticCenter()
const;
541 virtual std::vector<DtVector> rotatePointsTo(
const std::vector<DtVector>&,
double heading)
const;
545 virtual void setTopographicOrientation(
const DtTaitBryan&);
546 virtual void setLocalOrientation(
const DtTaitBryan&);
549 virtual void updateSymbolRotation(
const DtTaitBryan&);
552 virtual void updateSymbolRotation(
double);
555 virtual void setAltitudeAboveSeaLevel(
double);
556 virtual void setAltitudeAboveTerrain(
double);
558 virtual DtVector localLocation(
const DtGeodeticCoord& geodLocation)
const;
559 virtual DtVector localLocation()
const;
562 virtual bool isBox()
const;
565 virtual bool isTextBox()
const;
568 virtual bool isLine()
const;
571 virtual bool isArea()
const;
574 virtual bool isUnknown()
const;
577 virtual bool isCircle()
const;
580 virtual bool isWedge()
const;
583 virtual bool isSpiderWeb()
const;
587 virtual bool isEllipse()
const;
591 virtual bool isArc()
const;
593 virtual void setIsClosedFigure(
bool);
594 virtual bool isClosedFigure()
const;
603 virtual void updateHeading();
608 virtual void mergeExtendedData(
const std::map<std::string, std::string>&);
610 virtual void setExtendedData(
const std::map<std::string, std::string>&);
611 virtual std::map<std::string, std::string> extendedData()
const;
613 virtual void setExtendedLabels(
const std::map<int, DtString>&);
614 virtual std::map<int, DtString> extendedLabels()
const;
616 virtual void updateOffset(
const DtVector& position,
int i,
bool force =
false);
617 virtual void setAltitudeForPoint(
const DtVector& v,
int index);
628 virtual int clampTypeFor(
int index)
const;
637 virtual void setSpiderWebRadius(
double);
645 virtual void finalizeSetup();
647 virtual void updateSpiderWebRadius();
652 float myDefaultColor[4];
663 typedef std::map<int, makVrv::DtEnvironmentalVisualizerSet*>
ModelSetMap;
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:654
Definition: environmentalFacadeCollection.h:66
int myColor
Definition: environmentalFacadeCollection.h:678
void findVisualizers(std::vector< VisualizerClass * > &visualizers)
Find all instances of a Visualizer by schema name.
Definition: DtVisualizerSet.h:230
Definition: vrfObjectManipulationHandlerBaseClass.h:56
bool myHatLinesVisible
Definition: environmentalFacadeCollection.h:684
boost::signals2::signal< void(DtEnvironmentalFacadeCollection *)> signal_locationsChanged
Definition: environmentalFacadeCollection.h:630
Virtual base class.
Definition: DtVirtualBaseClass.h:22
A unicode string.
Definition: DtUnicode.h:33
double myMaxCeilingOffsetFromFloor
Definition: environmentalFacadeCollection.h:712
boost::signalslib::connection myFinalizeConnection
Definition: environmentalFacadeCollection.h:714
bool myAppearanceChanged
Definition: environmentalFacadeCollection.h:682
bool myCeilingSet
Definition: environmentalFacadeCollection.h:690
voidpf uLong int origin
Definition: ioapi.h:42
bool myRespectPointAltitudePosition
Definition: environmentalFacadeCollection.h:710
const ModelSetMap & modelSetMap() const
Definition: entityFacadeCollection.h:79
void setForceColor(makVrv::DtVisualizerSet *s, makVrv::DtForceManager::RGBAColor color)
Definition: environmentalFacadeCollection.h:458
Definition: DtForceManager.h:46
bool myIsClosedFigure
Definition: environmentalFacadeCollection.h:683
makVrv::DtDe & myDe
Definition: environmentalFacadeCollection.h:63
boost::signals2::signal< void(DtEnvironmentalFacadeCollection *, int, bool)> signal_vertexSelected
Definition: environmentalFacadeCollection.h:631
std::vector< double > myAltitudeAboveSeaLevel
Definition: environmentalFacadeCollection.h:660
bool myIndicatorsVisible
Definition: environmentalFacadeCollection.h:705
bool mySetupNodeMaskFlags
Definition: environmentalFacadeCollection.h:701
makVrv::DtUnicode myElementDefinition
Definition: environmentalFacadeCollection.h:650
char myEnvironmentType
Definition: environmentalFacadeCollection.h:676
The DtTacticalGraphicStateListener is a class that deals with basic TacticalGraphic process code (suc...
Definition: DtTacticalGraphicStateListener.h:20
std::vector< double > myAltitudeAboveTerrain
Definition: environmentalFacadeCollection.h:659
#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:26
void setAttached(DtVrfObjectFacadeInterface *p)
Definition: environmentalFacadeCollection.h:426
bool myUseHighestTerrainLOD
Definition: environmentalFacadeCollection.h:700
int myDictionaryToDisplay
Definition: environmentalFacadeCollection.h:709
Definition: entityStateListenerExtensions.h:31
const DtExtTacticalGraphicStateListener & listener() const
Definition: environmentalFacadeCollection.h:515
bool floorSet() const
Definition: environmentalFacadeCollection.h:329
bool myNeedsGeometryUpdate
Definition: environmentalFacadeCollection.h:699
Contains makVrv:DtEnvironmentalIndicatorVisualizer.h class.
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:37
int mySelectedPoint
Definition: environmentalFacadeCollection.h:667
std::vector< int > myClampType
Definition: environmentalFacadeCollection.h:661
double myFloor
Definition: environmentalFacadeCollection.h:687
int myFillStyle
Definition: environmentalFacadeCollection.h:694
boost::signals2::signal< void(DtEnvironmentalFacadeCollection *)> signal_geometryUpdated
Definition: environmentalFacadeCollection.h:632
bool myColorChanged
Definition: environmentalFacadeCollection.h:679
bool myAttached
Definition: environmentalFacadeCollection.h:698
bool myWidgetEventsEnabled
Definition: environmentalFacadeCollection.h:703
std::map< int, makVrv::DtEnvironmentalVisualizerSet * > ModelSetMap
Definition: environmentalFacadeCollection.h:663
Contains makVrv::DtSharedModelSetSettings class.
Contains makVrv:DtTacticalGraphicStateListener class.
Contains makVrv:DtEnvironmentalVertexVisualizer class.
Definition: vrfObjectFacadeInterface.h:47
bool myAlwaysRecalculateGeometry
Definition: environmentalFacadeCollection.h:670
The declaration of the makArchives::DtEnvironmentRecord class.
std::vector< DtVector > myTopographicOffsetFromOrigin
Definition: environmentalFacadeCollection.h:669
float B
Definition: DtForceManager.h:58
bool myPhysicalLineWidthChanged
Definition: environmentalFacadeCollection.h:691
Definition: DtIntersector.h:139
bool myDisplayVertices
Definition: environmentalFacadeCollection.h:680
void color(float &r, float &g, float &b, float &a) const
Definition: environmentalFacadeCollection.h:278
double myDefaultCeilingHeightIfCeilingIsNotSet
Definition: environmentalFacadeCollection.h:707
double myDefaultWidth
Definition: environmentalFacadeCollection.h:666
float R
Definition: DtForceManager.h:58
int penStyle() const
Definition: environmentalFacadeCollection.h:246
bool myIsVolumetric
Definition: environmentalFacadeCollection.h:697
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:28
bool myPhysicalLineHeightChanged
Definition: environmentalFacadeCollection.h:692
bool myPickable
Definition: environmentalFacadeCollection.h:704
unsigned long long DtUniqueID
Definition: DtUniqueID.h:22
void setWidgetEventsEnabled(makVrv::DtEnvironmentalVisualizerSet *v, bool b)
Template to enable mouse events on each visualizer.
Definition: environmentalFacadeCollection.h:307
DtExtTacticalGraphicStateListener & listener()
Returns the listener of this class.
Definition: environmentalFacadeCollection.h:597
void setNeedsUpdate(bool b)
Definition: environmentalFacadeCollection.h:605
This contains all the DtVisualizers used to visualize an element in a particular model set...
Definition: DtVisualizerSet.h:30
Definition: environmentalFacadeCollection.h:717
Definition: entityFacadeCollection.h:63
Contains makVrv:DtBaseConnection class.
Contains makVrv::DtForceManager class.
makVrv::DtDe & myDe
Definition: environmentalFacadeCollection.h:730
bool myMaxCeilingOffsetFromFloorSet
Definition: environmentalFacadeCollection.h:713
bool mySymbolDecorationsVisible
Definition: environmentalFacadeCollection.h:706
bool myShapeVerticesDisabled
Definition: environmentalFacadeCollection.h:685
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:249
std::map< int, UniqueIDs > myIds
Definition: environmentalFacadeCollection.h:674
DtExtTacticalGraphicStateListener(makVrv::DtUniqueID id, makVrv::DtDe &de)
Definition: environmentalFacadeCollection.h:56
Definition: vrfObjectManipulationHandlerBaseClass.h:55
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:664
Contains makVrv:DtEnvironmentalVisualizerSet class.
bool myFloorSet
Definition: environmentalFacadeCollection.h:688
double defaultCeilingHeightIfCeilingIsNotSet()
Definition: environmentalFacadeCollection.h:422
bool ceilingSet() const
Definition: environmentalFacadeCollection.h:338
voidpf uLong offset
Definition: ioapi.h:42
DtExtTacticalGraphicStateListener myListener
Aggregate is also an entity state listener, so, it can be used.
Definition: environmentalFacadeCollection.h:658
int fillStyle() const
Definition: environmentalFacadeCollection.h:183
bool myNeedsNodeMaskUpdate
Definition: environmentalFacadeCollection.h:702
Definition: environmentalFacadeCollection.h:53
double myArrowSize
Definition: environmentalFacadeCollection.h:696
bool myShowVertices
Definition: environmentalFacadeCollection.h:681
std::vector< makVrv::DtUniqueID > UniqueIDs
Local vertex ids.
Definition: environmentalFacadeCollection.h:673
bool dictionaryToDisplay() const
Definition: environmentalFacadeCollection.h:152
std::map< int, bool > ModelSetVisualizedMap
Definition: DtSharedModelSetSettings.h:30