VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Dt3DTextModelInstance.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2023 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvOsg/vrvOsg.h>
14 
16 
17 #include <osg/Geode>
18 #include <osg/MatrixTransform>
19 
20 namespace makVrv
21 {
23 
25 
26  template <>
27  inline const char* modelInstanceClassName<Dt3DTextModelInstance>(void) { return "Dt3DTextModelInstance"; }
28 
29  template <>
30  inline const char* modelInstanceObjectClass<Dt3DTextModelInstance>(void) { return "None"; }
31 
35  {
36  public:
37 
39  {
40  float rColor; // RGB red value
41  float gColor; // RGB green value
42  float bColor; // RGB blue value
43  bool flashing; // Like HTML blink
44  std::string text; // The text to display
45  std::string font; // The font used to render the text
46  int fontSize; // Character size in pixels
47  };
48 
51 
53 
54  public:
55 
58 
60  virtual ~Dt3DTextModelInstance();
61 
62  private:
63 
66 
69 
72 
73  public:
74 
76  virtual void setColor(float r, float g, float b);
77 
79  virtual void setText(const std::string& text);
80 
82  virtual void setFont(const std::string& fontName);
83 
85  virtual void setFontSize(int sizeInPixels);
86 
90  virtual bool realize(const DtModelDefinition& definition);
91 
93  virtual void addToConnector( DtOsgSceneConnector* connector );
94 
96  virtual bool removeFromConnector( DtOsgSceneConnector* connector );
97 
99  virtual void setVisible(bool isVisible) {}
100 
101  protected:
102 
104  virtual void build(const TextParameters& parameters);
105 
106  protected:
107 
110 
112  };
113 }
std::string text
Definition: Dt3DTextModelInstance.h:44
TextParameters myParameters
The current parameter set.
Definition: Dt3DTextModelInstance.h:109
osg::ref_ptr< osg::Geode > myGeode
Definition: Dt3DTextModelInstance.h:111
const char * modelInstanceObjectClass< Dt3DTextModelInstance >(void)
Definition: Dt3DTextModelInstance.h:30
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
int fontSize
Definition: Dt3DTextModelInstance.h:46
Definition: DtTemplatedModelInstanceCreator.h:32
Definition: Dt3DTextModelInstance.h:38
float rColor
Definition: Dt3DTextModelInstance.h:40
friend Dt3DTextModelInstanceCreator
Definition: Dt3DTextModelInstance.h:52
std::string font
Definition: Dt3DTextModelInstance.h:45
const char * modelInstanceClassName< Dt3DTextModelInstance >(void)
Definition: Dt3DTextModelInstance.h:27
DtTemplatedModelInstanceCreator< Dt3DTextModelInstance > Dt3DTextModelInstanceCreator
Definition: Dt3DTextModelInstance.h:22
A model definition Interaction any number of named parameters, and also can be used to store cached d...
Definition: DtModelDefinition.h:42
Contains makVrv::DtOsgModelInstance class.
DtOsgSceneConnector is used by models to create an OSG position/orientation transform so that it can ...
Definition: DtOsgSceneConnector.h:77
bool flashing
Definition: Dt3DTextModelInstance.h:43
virtual void setVisible(bool isVisible)
no-op
Definition: Dt3DTextModelInstance.h:99
The base class for simple OSG based model instances. This call can&#39;t be instantiated itself...
Definition: DtOsgModelInstance.h:77
Contains the DtTemplatedModelInstanceCreator class declaration.
static const TextParameters defaultParameters
Default values for the line parameters.
Definition: Dt3DTextModelInstance.h:50
float bColor
Definition: Dt3DTextModelInstance.h:42
Contains DLL export macros.
Model instance to draw 3D text.
Definition: Dt3DTextModelInstance.h:34
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:72
float gColor
Definition: Dt3DTextModelInstance.h:41

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)