VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtOsgRibbonModel.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>
13 
14 #include <vrvCore/DtRibbonModel.h>
15 
16 #include <matrix/vlVector.h>
17 #include <osg/Vec4>
18 
19 namespace makVrv
20 {
21 
22  class DtOsgSceneConnector;
23  class DtRibbonModelInstance;
24 
28  {
29  public:
30 
32  DtOsgRibbonModel( DtDe& de, DtUniqueID id );
33 
35  virtual ~DtOsgRibbonModel();
36 
37  private:
43  DtOsgRibbonModel &operator=(const DtOsgRibbonModel&);
44 
45  public:
47  virtual void setModelDefinition( const std::string& str );
48 
50  virtual void setModelInstance( DtModelInstance* modelInstance );
51 
54  virtual const std::string& className() const;
55 
57  virtual void setOrientation( int vtx, const DtTaitBryan& ori );
58 
60  virtual void setPosition( int vtx, const DtVector& pos );
61 
64  virtual void addToScene( const DtUniqueID& id, DtModelSetId modelSet,
65  int visualizerType );
66 
68  virtual void removeFromScene();
69 
71  virtual void setOcclusionEnabled( bool enabled );
72 
74  virtual void setHeightLinesEnabled(bool enabled) override;
75 
77  virtual void setHeightLinesColor(float r, float g, float b, float a) override;
78 
80  virtual void setHeightLinesSpacing(float spacing) override;
81 
83  virtual void setRibbonSpacing( float sampleSpacing );
84 
89  virtual void setRibbonLength( int maxSamples );
90 
94  virtual void setRibbonTimeout(float duration);
95 
97  virtual void setColor( float r, float g, float b, float a );
98 
101  virtual void initializeModelInstance();
102 
104  virtual void setVisible( bool isVisible );
105 
109  virtual void setIsSupportModel(bool isSupport);
110 
112  virtual void update();
113 
114  protected:
115 
120  float myHeightLinesColor[4];
126  osg::Vec4 myColor;
127 
128  };
129 
130 }
float myRibbonTimeout
Definition: DtOsgRibbonModel.h:124
bool myColorSet
Definition: DtOsgRibbonModel.h:125
The base class for all model instances.
Definition: DtModelInstance.h:41
osg::Vec4 myColor
Definition: DtOsgRibbonModel.h:126
bool myOcclusionEnabled
Definition: DtOsgRibbonModel.h:118
#define DT_DLL_VRVOSG
Definition: vrvOsg.h:23
float myRibbonSpacing
Definition: DtOsgRibbonModel.h:122
float myHeightLinesSpacing
Definition: DtOsgRibbonModel.h:121
Contains the DtRibbonModel class declaration.
DtOsgSceneConnector is used by models to create an OSG position/orientation transform so that it can ...
Definition: DtOsgSceneConnector.h:77
int myRibbonLength
Definition: DtOsgRibbonModel.h:123
A model instance creates a ribbon model instance effect from a model definition.
Definition: DtRibbonModelInstance.h:51
A model of a ribbon effect.
Definition: DtRibbonModel.h:24
bool myHeightLinesEnabled
Definition: DtOsgRibbonModel.h:119
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
A model of a ribbon.
Definition: DtOsgRibbonModel.h:27
DtOsgSceneConnector * mySceneConnector
Definition: DtOsgRibbonModel.h:116
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:72
DtModelSetId
Definition: DtModelSetEnums.h:19
DtRibbonModelInstance * myRibbonModelCast
Definition: DtOsgRibbonModel.h:117

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)