VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
DtOverlayLinearModel.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 <vrvCore/DtOverlayModel.h>
13 
14 namespace makVrv
15 {
16  class DtDe;
17  class DtSegmentedLineInterface;
18  class DtTextProxyInterface;
19  class DtCoordinateSystem;
20 
24  {
25  DtLinearModelData() = delete;
26  DtLinearModelData( const std::string& modelDef,
27  const std::vector< DtSegmentedLineInterface* >& segmentInterfaces,
28  const std::vector< DtTextProxyInterface* >& labelInterfaces,
29  const std::vector<DtVector>& myControlPoints,
30  const DtTaitBryan& orientation,
31  const DtCoordinateSystem& cs);
32 
33  const std::string& myModelDefinition;
34  const std::vector< DtSegmentedLineInterface* >& mySegmentInterfaces;
35  const std::vector< DtTextProxyInterface* >& myLabelInterfaces;
36  const std::vector<DtVector>& myControlPoints;
37  const DtTaitBryan& myOrientation;
39  };
40 
44  {
45  public:
48 
50  virtual ~DtOverlayLinearModel();
51 
53  DtOverlayLinearModel() = delete;
54 
56  DtOverlayLinearModel( const DtOverlayLinearModel& ) = delete;
57 
59  DtOverlayLinearModel& operator=( const DtOverlayLinearModel& ) = delete;
60 
62  DtOverlayLinearModel( const DtOverlayLinearModel&& ) = delete;
63 
65  DtOverlayLinearModel& operator=( const DtOverlayLinearModel&& other ) = delete;
66  public:
67 
68 
69  protected:
71  virtual void createGeometryIfNecessary() override;
72 
74  virtual void clearGeometry() override;
75 
77  virtual void updateVertices() override;
78 
80  virtual void updateColors() override;
81 
82  virtual void updateStipplePattern() override;
83  virtual void updateLineWidth() override;
84  virtual void updateEventsEnabled() override;
85 
87  virtual void updateGroup() override;
88 
91  virtual void updateLabels() override;
92 
94  virtual void updateLineColor( DtSegmentedLineInterface* seg, float r, float g, float b, float a ) const;
95 
97  virtual void updateLineWidth( DtSegmentedLineInterface* seg, float width ) const;
98 
100  virtual void setEventsEnabledLine( DtSegmentedLineInterface* seg, bool b, unsigned long long userData ) const;
101 
103  virtual void updateLineStipple( DtSegmentedLineInterface* seg, unsigned int stipple ) const;
104  protected:
105  std::vector< DtSegmentedLineInterface* > mySegments;
106  std::vector< DtTextProxyInterface* > myLabels;
107 
108  };
109 }
Model for Linear.
Definition: DtOverlayLinearModel.h:43
std::vector< DtTextProxyInterface * > myLabels
Definition: DtOverlayLinearModel.h:106
const DtTaitBryan & myOrientation
Definition: DtOverlayLinearModel.h:37
const std::vector< DtSegmentedLineInterface * > & mySegmentInterfaces
Definition: DtOverlayLinearModel.h:34
const DtCoordinateSystem & myCoordinateSystem
Definition: DtOverlayLinearModel.h:38
Base Overlay Model.
Definition: DtOverlayModel.h:33
const std::string & myModelDefinition
Definition: DtOverlayLinearModel.h:33
An interface for a convex polygon drawn using lines.
Definition: DtSegmentedLineInterface.h:25
#define DT_DLL_VRVCORE
Definition: vrvCore.h:20
const std::vector< DtVector > & myControlPoints
Definition: DtOverlayLinearModel.h:36
std::vector< DtSegmentedLineInterface * > mySegments
Definition: DtOverlayLinearModel.h:105
unsigned long long DtUniqueID
Definition: DtUniqueID.h:19
The DtCoordinateSystem is used to manage the current coordinate system of the scene.
Definition: DtCoordinateSystem.h:40
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:76
Struct for storing and moving around data to generate vertices, e.g. see DtOverlayGeometryBlock.h.
Definition: DtOverlayLinearModel.h:23
const std::vector< DtTextProxyInterface * > & myLabelInterfaces
Definition: DtOverlayLinearModel.h:35

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)