VR-Forces 5.0.2 Developer's Guide
 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) 2021 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 
9 
10 #pragma once
11 
12 #include <vrvOsg/vrvOsg.h>
13 
17 
18 #include <osg/Vec2>
19 #include <osg/Matrix>
20 
21 namespace makVrv
22 {
23  class DtDe;
24  class DtPolygon;
25  class DtChannelManager;
26  class DtChannel;
27 
32  {
33  public:
36 
38  virtual ~DtOsgWindowPolygonInstance();
39 
41  virtual void setVisible(bool isVisible);
42 
44  virtual void setFillPattern(unsigned int fillPattern);
45 
47  virtual void setNumVertices(unsigned int numVertices);
48 
50  virtual void setVertex(int i, double x, double y);
51 
53  virtual void setColor(float r,float g,float b,float a);
54 
56  virtual void setFill(bool fill);
57 
59  virtual bool visible() const;
60 
63  virtual void setTransform( DtMatrix3<double> transform );
64 
66  virtual void update();
67 
70  virtual void setGroup( int groupId );
71 
76  virtual void setChannelOverlay( const std::string& displayName,
77  const std::string& windowName, const std::string& channelName ) override;
78 
81  virtual void createPolygon();
82 
84  virtual void setClipBox( DtVector2<double> bottomLeftLocation, DtVector2<double> topRightLocation );
85 
86  protected:
87  typedef std::vector<osg::Vec2> VertexList;
88 
90  virtual void updateGeometry();
91 
93  virtual void slot_channelToBeDestroyed(DtChannelManager*, DtChannel*);
94 
95  protected:
99  osg::Matrix myTransform;
100  unsigned int myFillPattern;
101  unsigned int myGroup;
102  float myColorR, myColorG, myColorB, myColorA;
103  bool myFill;
106  bool myVisible;
108  osg::Vec2 myClipBoxTopRight;
109  std::string myDisplayName;
110  std::string myWindowName;
111  std::string myChannelName;
112 
114  };
115 
118  {
119  public:
122 
125  virtual DtWindowPolygonInstance* create();
126  };
127 }
Creator for DtWindowPolygonInstance, will throw if you create on it. osg creator is registered in vrv...
Definition: DtWindowPolygonInstance.h:69
unsigned int myFillPattern
Definition: DtOsgWindowPolygonInstance.h:100
bool myVisible
Definition: DtOsgWindowPolygonInstance.h:106
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
Creator for DtOsgWindowPolygonInstance.
Definition: DtOsgWindowPolygonInstance.h:117
osg::Vec2 myClipBoxBottomLeft
Definition: DtOsgWindowPolygonInstance.h:107
bool myGeometryDirty
Definition: DtOsgWindowPolygonInstance.h:104
Interface for a DtWindowPolygonInstance An object that draws a 2D Polygon.
Definition: DtWindowPolygonInstance.h:24
DtDe & myDe
Definition: DtOsgWindowPolygonInstance.h:96
std::string myDisplayName
Definition: DtOsgWindowPolygonInstance.h:109
bool myFill
Definition: DtOsgWindowPolygonInstance.h:103
std::string myChannelName
Definition: DtOsgWindowPolygonInstance.h:111
Contains makVrv::DtWindowPolygonInstance class.
The abstract Channel Class.
Definition: DtChannel.h:35
std::string myWindowName
Definition: DtOsgWindowPolygonInstance.h:110
DtPolygon * myPolygon
Definition: DtOsgWindowPolygonInstance.h:97
Contains makVrv::DtVirtualBaseClass class.
DtSignalConnectionManager myConnections
Definition: DtOsgWindowPolygonInstance.h:113
Class to manage disconnection of boost connections on deletion.
Definition: DtSignalConnectionManager.h:20
bool myUseChannelOverlay
Definition: DtOsgWindowPolygonInstance.h:105
A variable vertex 2D polygon.
Definition: DtPolygon.h:19
Base class for handling DtChannels. Derived classes should override the tick() method and advance the...
Definition: DtChannelManager.h:32
Base class to provide boost signal/slot management.
VertexList myVertices
Definition: DtOsgWindowPolygonInstance.h:98
Contains DLL export macros.
unsigned int myGroup
Definition: DtOsgWindowPolygonInstance.h:101
std::vector< osg::Vec2 > VertexList
Definition: DtOsgWindowPolygonInstance.h:87
float myColorR
Definition: DtOsgWindowPolygonInstance.h:102
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
osg::Vec2 myClipBoxTopRight
Definition: DtOsgWindowPolygonInstance.h:108
OSG Implementation of a DtWindowPolygonInstance. Uses a vrvGraphics DtPolygon to implemente a 2D poly...
Definition: DtOsgWindowPolygonInstance.h:31
osg::Matrix myTransform
Definition: DtOsgWindowPolygonInstance.h:99

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)