VR-Forces 4.10 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtOsgWindowTextInstance.h
Go to the documentation of this file.
1 /******************************************************************************
2 ** Copyright (c) 2020 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvOsg/vrvOsg.h>
14 #include <vrvCore/DtWindowText.h>
15 #include <vrvGraphics/DtFont.h>
17 #include <osg/Vec2>
18 #include <osg/Matrix>
19 namespace makVrv
20 {
21  class DtDe;
22  class DtTextProxy;
23  class DtChannelManager;
24  class DtChannel;
25 
30  {
31  public:
34 
36  virtual ~DtOsgWindowTextInstance();
37 
39  virtual void setVisible(bool isVisible);
40 
42  virtual void setTopLeftCorner( float x, float y );
43 
45  virtual void setColor(float r,float g,float b,float a);
46 
48  virtual void setText(const std::string& textString);
49 
51  virtual void setFont(const std::string& fontFile, float sizeInPoints);
52 
54  virtual void setTextBoxWidth(unsigned int widthInPixels);
55 
57  virtual void setAlignment(DtWindowText::TextAlignment alignment);
58 
60  virtual bool visible() const;
61 
64  virtual void setTransform( DtMatrix3<double> transform );
65 
67  virtual void update();
68 
71  virtual void setGroup( int groupId );
72 
77  virtual void setChannelOverlay( std::string displayName,
78  std::string windowName, std::string channelName );
79 
81  void createText();
82  protected:
85  virtual void setClipBox( DtVector2<double> bottomLeftLocation, DtVector2<double> topRightLocation );
86 
89  virtual void slot_releaseResources();
90 
92  virtual void slot_channelToBeDestroyed(DtChannelManager*, DtChannel*);
93 
95  virtual void slot_onViewCreated();
96 
99  virtual bool clipTextPosition( osg::Vec2 position );
100 
102  float myColorR, myColorG, myColorB, myColorA;
103  std::string myFontFile;
104  std::string myTextString;
105  std::string myDisplayName;
106  std::string myWindowName;
107  std::string myChannelName;
109  float mySize;
110  float myWidth;
111  osg::Vec2 myTopLeftPosition; // this is our "vertex" location
113  osg::Vec2 myClipBoxTopRight;
119  osg::Matrix myTransform;
120  int myGroup;
121  };
122 
125  {
126  public:
129 
132  virtual DtWindowTextInstance* create();
133  };
134 }
An OSG Implementation of DtWindowTextInstance.
Definition: DtOsgWindowTextInstance.h:29
std::string myFontFile
Definition: DtOsgWindowTextInstance.h:103
Creator for DtWindowTextInstance, will throw if you create on it.
Definition: DtWindowTextInstance.h:75
float myColorR
Definition: DtOsgWindowTextInstance.h:102
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
Interface for a DtWindowTextInstance An object that draws a 2D text.
Definition: DtWindowTextInstance.h:24
osg::Vec2 myTopLeftPosition
Definition: DtOsgWindowTextInstance.h:111
Contains the makVrv::DtTextRenderer class declaration.
A class for controlling text owned by the TextRenderer.
Definition: DtTextRenderer.h:90
Contains makVrv::DtWindowText class.
bool myGeometryDirty
Definition: DtOsgWindowTextInstance.h:117
float myWidth
Definition: DtOsgWindowTextInstance.h:110
bool myIsVisible
Definition: DtOsgWindowTextInstance.h:116
TextAlignement
Definition: DtFont.h:33
int myGroup
Definition: DtOsgWindowTextInstance.h:120
The abstract Channel Class.
Definition: DtChannel.h:30
bool myUseChannelOverlay
Definition: DtOsgWindowTextInstance.h:118
std::string myWindowName
Definition: DtOsgWindowTextInstance.h:106
osg::Vec2 myClipBoxTopRight
Definition: DtOsgWindowTextInstance.h:113
float mySize
Definition: DtOsgWindowTextInstance.h:109
Creator for DtOsgWindowTextInstance.
Definition: DtOsgWindowTextInstance.h:124
boost::shared_ptr< DtFont > DtFontSP
Definition: DtFontManager.h:20
DtTextProxy * myText
Definition: DtOsgWindowTextInstance.h:115
Base class for handling DtChannels.
Definition: DtChannelManager.h:32
DtFontSP myFont
Definition: DtOsgWindowTextInstance.h:108
Contains makVrv::DtFont class.
DtDe & myDe
Definition: DtOsgWindowTextInstance.h:101
Contains DLL export macros.
Contains makVrv::DtWindowTextInstance class.
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
DtFont::TextAlignement myAlignment
Definition: DtOsgWindowTextInstance.h:114
std::string myTextString
Definition: DtOsgWindowTextInstance.h:104
std::string myChannelName
Definition: DtOsgWindowTextInstance.h:107
std::string myDisplayName
Definition: DtOsgWindowTextInstance.h:105
osg::Vec2 myClipBoxBottomLeft
Definition: DtOsgWindowTextInstance.h:112
TextAlignment
Definition: DtWindowText.h:41
osg::Matrix myTransform
Definition: DtOsgWindowTextInstance.h:119

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)