VR-Forces 5.0.3 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtImageAttribute.h
Go to the documentation of this file.
1 /*****************************************************************************
2  * Copyright (c) 2022 MAK Technologies, Inc.
3  * All rights reserved.
4  *****************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvOsg/vrvOsg.h>
13 #include <vrvOsg/DtAttribute.h>
14 
15 #include <vrvCore/DtWidget.h>
17 
18 #include <osg/ref_ptr>
19 #include <osg/Texture>
20 
21 namespace makVrv
22 {
23 
24  class DtDe;
25  class DtQuad;
26  class DtBaseQuadAttribute;
27  class DtBaseOutlineAttribute;
28 
31 
34 
36  template <>
37  inline const char* creatorTypeName<DtImageAttribute>(void) { return "DtImageAttributeCreator"; }
38 
42  {
44 
45  public:
46 
48  virtual ~DtImageAttribute();
49 
51  DtImageAttribute() = delete;
52 
55  const DtImageAttribute &other) = delete;
56 
58  DtImageAttribute &operator=(
59  const DtImageAttribute &other) = delete;
60 
61  public:
62 
64  virtual void setImageFilePath( const std::string& imageFilePath );
65 
68  virtual void setPosition( float x, float y, float z, float w );
69 
71  virtual void setOffset( double x, double y );
72 
74  virtual void getMinSize( double& xOut, double& yOut );
75 
77  virtual void setColor( float r, float g, float b, float a );
78 
80  virtual void setSize( double x, double y );
81 
84  virtual void setShadowText( bool enabled );
85 
87  virtual void setVisible( bool visible );
88 
90  virtual bool visible() const;
91 
93  virtual void setLodOutAltitude(double lodOutAltitude) override;
94 
96  virtual double lodOutAltitude() const override;
97 
99  virtual void setIsLodOutAltitudeEnabled(bool isEnabled) override;
100 
102  virtual bool isLodOutAltitudeEnabled() const override;
103 
106  virtual void setOverlay( unsigned int overlayId );
107 
110  virtual void setGroup( unsigned int group );
111 
112  protected:
113 
116  DtImageAttribute(DtDe& de);
117 
120  void updateImageBox();
121 
122  protected:
123 
127  std::string myImageFilePath;
129  double mySizeX;
130  double mySizeY;
133  };
134 
135 }
double myLodOutAltitude
Definition: DtImageAttribute.h:131
double mySizeY
Definition: DtImageAttribute.h:130
DtBaseQuadAttribute * myQuadAttribute
Definition: DtImageAttribute.h:124
const char * creatorTypeName< DtImageAttribute >(void)
template specialization for the creator (pass the class being created to the creatorTypeName template...
Definition: DtImageAttribute.h:37
friend DtImageAttributeCreator
Definition: DtImageAttribute.h:43
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
std::string myImageFilePath
Definition: DtImageAttribute.h:127
The attribute layout tells DtAttributes where to draw.
Definition: DtBaseOutlineAttribute.h:37
The attribute layout tells DtAttributes where to draw.
Definition: DtAttribute.h:21
Attribute that generates a colored quad.
Definition: DtBaseQuadAttribute.h:37
Contains makVrv::DtWidget class.
Variadic templated creator class for defining a DtVirtualBaseClass creator that is automatically regi...
Definition: DtVirtualBaseClassCreator.h:22
The attribute layout tells DtAttributes where to draw.
Definition: DtImageAttribute.h:41
bool myIsLodOutAltitudeEnabled
Definition: DtImageAttribute.h:132
DtVirtualBaseClassCreator< DtImageAttribute > DtImageAttributeCreator
creator
Definition: DtImageAttribute.h:30
osg::ref_ptr< osg::Texture > myQuadTexture
Definition: DtImageAttribute.h:128
Contains DLL export macros.
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:70
Contains the DtAttribute class declaration.
DtBaseOutlineAttribute * myOutlineAttribute
Definition: DtImageAttribute.h:125
double mySizeX
Definition: DtImageAttribute.h:129
DtDe & myDe
Definition: DtImageAttribute.h:126

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)