VR-Forces 4.8 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtOsgWindowPolygonInstance.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 <osg/Vec2>
15 #include <osg/Matrix>
16 namespace makVrv
17 {
18  class DtDe;
19  class DtPolygon;
20 
25  {
26  public:
29 
31  virtual ~DtOsgWindowPolygonInstance();
32 
34  virtual void setVisible(bool isVisible);
35 
37  virtual void setFillPattern(unsigned int fillPattern);
38 
40  virtual void setNumVertices(unsigned int numVertices);
41 
43  virtual void setVertex(int i, double x, double y);
44 
46  virtual void setColor(float r,float g,float b,float a);
47 
49  virtual void setFill(bool fill);
50 
52  virtual bool visible() const;
53 
56  virtual void setTransform( DtMatrix3<double> transform );
57 
59  virtual void setScale( double x, double y );
60 
62  virtual void update();
63  protected:
64  typedef std::vector<osg::Vec2> VertexList;
65 
67  virtual void getCenterOfVertices( osg::Vec2& center );
68 
70  virtual void getCenterOfVertices( DtVector2<double>& center );
71 
73  virtual void updateGeometry();
74 
77  void createPolygon();
78 
80  virtual void setClipBox( DtVector2<double> bottomLeftLocation, DtVector2<double> topRightLocation );
81  protected:
85  osg::Matrix myTransform;
86  double myXScale;
87  double myYScale;
88  unsigned int myFillPattern;
89  float myColorR, myColorG, myColorB, myColorA;
90  bool myFill;
91  bool myVisible;
94  osg::Vec2 myClipBoxTopRight;
95  };
96 }
unsigned int myFillPattern
Definition: DtOsgWindowPolygonInstance.h:88
double myYScale
Definition: DtOsgWindowPolygonInstance.h:87
bool myVisible
Definition: DtOsgWindowPolygonInstance.h:91
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
osg::Vec2 myClipBoxBottomLeft
Definition: DtOsgWindowPolygonInstance.h:93
bool myGeometryDirty
Definition: DtOsgWindowPolygonInstance.h:92
Interface for a DtWindowPolygonInstance An object that draws a 2D Polygon.
Definition: DtWindowPolygonInstance.h:23
DtDe & myDe
Definition: DtOsgWindowPolygonInstance.h:82
bool myFill
Definition: DtOsgWindowPolygonInstance.h:90
Contains makVrv::DtWindowPolygonInstance class.
DtPolygon * myPolygon
Definition: DtOsgWindowPolygonInstance.h:83
double myXScale
Definition: DtOsgWindowPolygonInstance.h:86
A variable vertex 2D polygon.
Definition: DtPolygon.h:19
VertexList myVertices
Definition: DtOsgWindowPolygonInstance.h:84
Contains DLL export macros.
std::vector< osg::Vec2 > VertexList
Definition: DtOsgWindowPolygonInstance.h:64
float myColorR
Definition: DtOsgWindowPolygonInstance.h:89
The DtDe is the core component of any VR-Vantage application.
Definition: DtDe.h:69
osg::Vec2 myClipBoxTopRight
Definition: DtOsgWindowPolygonInstance.h:94
vrvGraphics implementation of a 2D polygon
Definition: DtOsgWindowPolygonInstance.h:24
osg::Matrix myTransform
Definition: DtOsgWindowPolygonInstance.h:85

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)