VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
rangeLineVisualizer.h
Go to the documentation of this file.
1 /*********************************************************************
2 ** Copyright (c) 2013 MaK Technologies, Inc.
3 ** All rights reserved.
4 *********************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrfGuiCore/vrfGuiCore.h>
14 #include <vrvCore/DtSceneObjectAgent.hpp>
15 
16 namespace makVrv
17 {
18  class DtModelAgent;
19  class DtProjectedWidgetModelAgent;
20  class DtWidgetLabelAgent;
21 }
22 
23 class DtAttachableRangeLineTextUpdaterAgent;
24 
29 {
30 public:
34 
37 
39  virtual const makVrv::DtStateVisualizer::TypeInfo& typeInfo() const;
40 
43 
46 
47 protected:
49  virtual void createModelAgents();
50 
52  virtual void destroyModelAgents();
53 
56  virtual void setVisualizerDefinition(const makVrv::DtVisualizerDefinition& visDef);
57 
60  virtual void setUniqueID( makVrv::DtUniqueID );
61 
63  virtual void setModelDefinitionForAgents();
64 
66  // Set / Get the text color. Can use 0.0-1.0 or 0-255
67  virtual void setTextColor(float r, float g, float b, float a);
68  virtual void getTextColor(float& r, float& g, float& b, float& a) const;
70 
72  // Set / Get the size of the box the text is positioned in, in pixels.
73  virtual void setTextBoxSize( unsigned int textWidth, unsigned int textHeight );
74  virtual void getTextBoxSize( unsigned int& textWidth, unsigned int& textHeight ) const;
76 
78  // Set / Get a pixel offset from the top of the line for the text box.
79  virtual void setOriginOffset( int offsetX, int offsetY );
80  virtual void getOriginOffset( int& offsetX, int& offsetY ) const;
82 
84  // Set / Get the horizontal alignment of the text within the text box.
85  // Values come from DtWidgetLabel
86  virtual void setHorizontalAlignment (unsigned int horizontalAlignment );
87  virtual unsigned int horizontalAlignment() const;
89 
91  // Set / Get the name of the font to use for the height text.
92  virtual void setTextFont( std::string textFont) ;
93  virtual std::string textFont() const;
95 
97  // Set / Get the point size of the font used for height text
98  virtual void setTextFontSize( unsigned int textFontSize );
99  virtual unsigned int textFontSize() const;
101 
103  // Set / Get whether or not to compute range to next point
104  virtual void setComputeToNextPoint( bool ) ;
105  virtual bool computeToNextPoint() const;
107 
108 protected:
109  makVrv::DtProjectedWidgetModelAgent* myRangeLineTextModelAgent;
110  makVrv::DtWidgetLabelAgent* myRangeLineTextWidgetAgent;
111  DtAttachableRangeLineTextUpdaterAgent* myRangeLineTextUpdaterAgent;
112  makVrv::DtSceneObjectAgent* myRangeLineTextObjectAgent;
113 
114  unsigned int myTextBoxSize[2]; // default is 150 x 25 pixels
115  unsigned int myTextHorizontalAlignment; // default is center
116  std::string myTextFont; // default is "FreeMono.otf"
117  unsigned int myTextFontSize; // default is 14
118  float myTextColor[4]; // default is 1., 1., 0., 1.
119  int myOriginOffset[2]; // default is 30, -30
121 };
122 
virtual DtObserverMode::ModelSets modelSet()
Return the visualizer&#39;s model set enum.
virtual void getTextColor(float &r, float &g, float &b, float &a) const
virtual bool computeToNextPoint() const
makVrv::DtWidgetLabelAgent * myRangeLineTextWidgetAgent
Definition: rangeLineVisualizer.h:110
makVrv::DtStateVisualizerCreatorTemplate< DtRangeLineTextVisualizer > DtRangeLineTextVisualizerCreator
Definition: rangeLineVisualizer.h:124
static const makVrv::DtVisualizerSchema & theRangeLineTextSchema()
Schema for this visualizer.
Definition: DtStateVisualizer.h:322
virtual const makVrv::DtStateVisualizer::TypeInfo & typeInfo() const
Get this instances type info.
float myTextColor[4]
Definition: rangeLineVisualizer.h:118
virtual void setTextFontSize(unsigned int textFontSize)
The DtBaseConnection is an abstract class.
Definition: DtBaseConnection.h:34
virtual unsigned int horizontalAlignment() const
DtAttachableRangeLineTextUpdaterAgent * myRangeLineTextUpdaterAgent
Definition: rangeLineVisualizer.h:111
makVrv::DtProjectedWidgetModelAgent * myRangeLineTextModelAgent
Definition: rangeLineVisualizer.h:109
unsigned int myTextFontSize
Definition: rangeLineVisualizer.h:117
unsigned int myTextBoxSize[2]
Definition: rangeLineVisualizer.h:114
virtual void setOriginOffset(int offsetX, int offsetY)
Contains makVrv:DtStateVisualizer class.
DtBaseConnection & simulation()
Get the connection for this visualizer.
Definition: DtStateVisualizer.h:177
virtual void createModelAgents()
Creates all the agents needed to display the range line text.
virtual void setComputeToNextPoint(bool)
virtual void setUniqueID(makVrv::DtUniqueID)
Set the scene object id of the line object visualizing this range.
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
virtual void getTextBoxSize(unsigned int &textWidth, unsigned int &textHeight) const
virtual void getOriginOffset(int &offsetX, int &offsetY) const
virtual void setTextFont(std::string textFont)
bool myComputeToNextPoint
Definition: rangeLineVisualizer.h:120
std::string myTextFont
Definition: rangeLineVisualizer.h:116
The DtStateVisualizer is an abstract class.
Definition: DtStateVisualizer.h:32
virtual ~DtRangeLineTextVisualizer()
Destructor.
A definition of a visualizer.
Definition: DtVisualizerDefinition.h:22
virtual void setModelDefinitionForAgents()
No-op.
int myOriginOffset[2]
Definition: rangeLineVisualizer.h:119
makVrv::DtSceneObjectAgent * myRangeLineTextObjectAgent
Definition: rangeLineVisualizer.h:112
virtual void setHorizontalAlignment(unsigned int horizontalAlignment)
virtual void setVisualizerDefinition(const makVrv::DtVisualizerDefinition &visDef)
Stores variables from visual definition to use when creating visualizer.
virtual void destroyModelAgents()
Destroyes all the agents.
virtual void setTextColor(float r, float g, float b, float a)
virtual unsigned int textFontSize() const
DtRangeLineTextVisualizer(makVrv::DtBaseConnection &simulation, makVrv::DtStateListener &listener, int modelSet)
Constructor.
DtRangeLineTextVisualizer will display the text of a range between two points on a line...
Definition: rangeLineVisualizer.h:28
The DtStateListener is an abstract class.
Definition: DtStateListener.h:21
Definition: DtVisualizerSchema.h:19
Struct to hold metadata about each functional visualizer type This allows users of the factory to get...
Definition: DtStateVisualizer.h:56
virtual std::string textFont() const
DtStateListener & listener()
Definition: DtStateVisualizer.h:171
unsigned int myTextHorizontalAlignment
Definition: rangeLineVisualizer.h:115
static const makVrv::DtStateVisualizer::TypeInfo & theTypeInfo()
Get this class&#39;s type info.
virtual void setTextBoxSize(unsigned int textWidth, unsigned int textHeight)

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)