VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions
makVrv::DtTexturedLineSegment Class Reference

A class which represents a single line segment.

Inheritance diagram for makVrv::DtTexturedLineSegment:
Inheritance graph
[legend]

Public Member Functions

 DtTexturedLineSegment (DtOverlayRendererInterface &renderer)
 
 DtTexturedLineSegment (DtQuadRenderer &renderer)
 
virtual ~DtTexturedLineSegment ()
 
virtual void setGroup (float group) override
 
virtual int group () const override
 
virtual void set2DPosition (unsigned int index0or1, float x, float y) override
 
virtual void get2DPosition (unsigned int index0or1, float &x, float &y) const override
 
virtual void set3DPosition (int index0or1, float dx, float dy, float z, float w) override
 
virtual void get3DPosition (int index0or1, float &dx, float &dy, float &z, float &w) const override
 
virtual void setColor (float r, float g, float b, float a)
 
virtual void getColor (float &r, float &g, float &b, float &a) const
 
virtual void setWidth (float w) override
 
virtual float width () const override
 
virtual void setTextureParameters (DtTextureInterface *texture, float left=0.0f, float right=1.0f, float bottom=0.0f, float top=1.0f)
 
virtual void setZoomFactor (float z)
 
virtual void set2DPositions (float x1, float y1, float x2, float y2) override
 
virtual void setColor (unsigned int index0or1, float r, float g, float b, float a) override
 
virtual void getColor (unsigned int index0or1, float &r, float &g, float &b, float &a) const override
 
virtual void setColors (float r1, float g1, float b1, float a1, float r2, float g2, float b2, float a2) override
 
virtual void setRotationOffset (float)
 
- Public Member Functions inherited from makVrv::DtTexturedLineSegmentInterface
 DtTexturedLineSegmentInterface ()
 
virtual ~DtTexturedLineSegmentInterface ()
 
- Public Member Functions inherited from makVrv::DtLineSegmentInterface
 DtLineSegmentInterface ()
 
virtual ~DtLineSegmentInterface ()
 

Protected Member Functions

virtual void setAltitudeBasedConfigurations (const DtLineSegmentInterface::DtLineSegmentAltitudeBasedConfigurationCollection &configs)
 
virtual void clearAltitudeBasedConfigurations ()
 
virtual void setIsUseForcedAltitudeEnabled (bool enabled)
 
virtual void setForcedAltitudeToUse (double minimumAltitudeForUse)
 
virtual void setLodOutAltitude (double lodOutAltitude)
 
virtual void setIsLodOutAltitudeEnabled (bool isLodOutAltitudeEnabled)
 
virtual void set3DDirection (unsigned int index0or1, float x, float y, float z) override
 
virtual void get3DDirection (unsigned int index0or1, float &x, float &y, float &z) const override
 
virtual void setDirection2DLength (unsigned int index0or1, float length) override
 
virtual float direction2DLength (unsigned int index0or1) const override
 
virtual void setStippleParameters (unsigned int scale, unsigned short pattern) override
 
virtual void getStippleParameters (unsigned int &scale, unsigned short &pattern) const override
 
virtual void resetTextureCoordinates ()
 
 DtTexturedLineSegment ()
 

Protected Attributes

DtQuadProxyInterfacemyVertex
 
float myVertices [2][4]
 
float my2DVertices [2][2]
 
DtTextureInterfacemyTexture
 
float myTextureWidth
 
float myZoomFactor
 
float myRotationOffset
 

Private Member Functions

 DtTexturedLineSegment (const DtTexturedLineSegment &)
 
DtTexturedLineSegmentoperator= (const DtTexturedLineSegment &)
 

Additional Inherited Members

- Public Types inherited from makVrv::DtLineSegmentInterface
typedef std::vector
< DtLineSegmentAltitudeBasedConfiguration
DtLineSegmentAltitudeBasedConfigurationCollection
 

Constructor & Destructor Documentation

makVrv::DtTexturedLineSegment::DtTexturedLineSegment ( DtOverlayRendererInterface renderer)

Create a a line segment.

makVrv::DtTexturedLineSegment::DtTexturedLineSegment ( DtQuadRenderer renderer)

Create a a line segment.

virtual makVrv::DtTexturedLineSegment::~DtTexturedLineSegment ( )
virtual

Line segment destructor.

makVrv::DtTexturedLineSegment::DtTexturedLineSegment ( const DtTexturedLineSegment )
private
makVrv::DtTexturedLineSegment::DtTexturedLineSegment ( )
protected

Member Function Documentation

virtual void makVrv::DtTexturedLineSegment::setGroup ( float  group)
overridevirtual

Set the group of the line segment. Setting the group to zero causes the line to be hidden. Setting the group to negative numbers causes the line to be drawn relative to North. 1.

Implements makVrv::DtLineSegmentInterface.

virtual int makVrv::DtTexturedLineSegment::group ( ) const
overridevirtual

Get the group.

Implements makVrv::DtLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::set2DPosition ( unsigned int  index0or1,
float  x,
float  y 
)
overridevirtual

Set the first vertex position.

Implements makVrv::DtLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::get2DPosition ( unsigned int  index0or1,
float &  x,
float &  y 
) const
overridevirtual
virtual void makVrv::DtTexturedLineSegment::set3DPosition ( int  index0or1,
float  dx,
float  dy,
float  z,
float  w 
)
overridevirtual

Set the 3D location of the line. This will set the 3D location for each end of the line.

Implements makVrv::DtLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::get3DPosition ( int  index0or1,
float &  dx,
float &  dy,
float &  z,
float &  w 
) const
overridevirtual
virtual void makVrv::DtTexturedLineSegment::setColor ( float  r,
float  g,
float  b,
float  a 
)
virtual

Reimplemented from makVrv::DtLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::getColor ( float &  r,
float &  g,
float &  b,
float &  a 
) const
virtual
virtual void makVrv::DtTexturedLineSegment::setWidth ( float  w)
overridevirtual

Set a line width, from 0.0 to 64.0); Default line width is 1.0.

Implements makVrv::DtLineSegmentInterface.

virtual float makVrv::DtTexturedLineSegment::width ( ) const
overridevirtual

Get the line width.

Implements makVrv::DtLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::setTextureParameters ( DtTextureInterface texture,
float  left = 0.0f,
float  right = 1.0f,
float  bottom = 0.0f,
float  top = 1.0f 
)
virtual

Sets the parameters for the textured line. values other than 1 will cause repeating of the texture. Texture width is used to determine the width of the texture. Set larger/smaller width than texture to produce texture scaling.

Implements makVrv::DtTexturedLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::setZoomFactor ( float  z)
virtual

Sets the factor by which to adjust distance.

virtual void makVrv::DtTexturedLineSegment::set2DPositions ( float  x1,
float  y1,
float  x2,
float  y2 
)
overridevirtual

Sets the 2D position of the line segment.

Implements makVrv::DtLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::setColor ( unsigned int  index0or1,
float  r,
float  g,
float  b,
float  a 
)
overridevirtual
virtual void makVrv::DtTexturedLineSegment::getColor ( unsigned int  index0or1,
float &  r,
float &  g,
float &  b,
float &  a 
) const
overridevirtual
virtual void makVrv::DtTexturedLineSegment::setColors ( float  r1,
float  g1,
float  b1,
float  a1,
float  r2,
float  g2,
float  b2,
float  a2 
)
overridevirtual

Set the vertex colors.

Implements makVrv::DtLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::setRotationOffset ( float  )
virtual

Sets the offset to the rotation to apply to the segmented line. Use for observer rotation.

virtual void makVrv::DtTexturedLineSegment::setAltitudeBasedConfigurations ( const DtLineSegmentInterface::DtLineSegmentAltitudeBasedConfigurationCollection configs)
inlineprotectedvirtual

Unimplemented.

Set the altitude-based configurations for this line segment. Unimplemented for this type of line

Implements makVrv::DtLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::clearAltitudeBasedConfigurations ( )
inlineprotectedvirtual

Clear the altitude-based configurations for this line segment. The line segment will no longer have a dynamic length but will fixed to the length specified by: setDirection2DLength(unsigned int, float).

See Also
setAltitudeBasedConfigurations Unimplemented for this type of line

Implements makVrv::DtLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::setIsUseForcedAltitudeEnabled ( bool  enabled)
inlineprotectedvirtual

Set whether or not a particular altitude-based configuration is used, regardless of altitude. This only matters if altitude-based configurations are used. The altitude-based configuration used is provided by the configuration corresponding to the altitude provided using: setForcedAltitudeToUse(...) Unimplemented for this type of line.

Implements makVrv::DtLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::setForcedAltitudeToUse ( double  minimumAltitudeForUse)
inlineprotectedvirtual

Set the MSL altitude, in meters, to use when determining the altitude-based configuration to use. This is only used if setIsUseForcedAltitudeEnabled(true). Unimplemented for this type of line.

Implements makVrv::DtLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::setLodOutAltitude ( double  lodOutAltitude)
inlineprotectedvirtual

Set the minimum MSL altitude, in meters, at which the line will no longer appear Unimplemented for this type of line.

Implements makVrv::DtLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::setIsLodOutAltitudeEnabled ( bool  isLodOutAltitudeEnabled)
inlineprotectedvirtual

Set whether or not this attribute will use the LOD Out Altitude property. Unimplemented for this type of line.

Implements makVrv::DtLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::set3DDirection ( unsigned int  index0or1,
float  x,
float  y,
float  z 
)
inlineoverrideprotectedvirtual

Set the normalized direction of the line in world space. Unimplemented for this type of line.

Implements makVrv::DtLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::get3DDirection ( unsigned int  index0or1,
float &  x,
float &  y,
float &  z 
) const
inlineoverrideprotectedvirtual

Get the normalized direction of the vertex. Unimplemented for this line.

Implements makVrv::DtLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::setDirection2DLength ( unsigned int  index0or1,
float  length 
)
inlineoverrideprotectedvirtual

Set the length of the line in 2D space. Unimplemented for this line.

Implements makVrv::DtLineSegmentInterface.

virtual float makVrv::DtTexturedLineSegment::direction2DLength ( unsigned int  index0or1) const
inlineoverrideprotectedvirtual

Get the length of the line in 2D space.

Implements makVrv::DtLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::setStippleParameters ( unsigned int  scale,
unsigned short  pattern 
)
overrideprotectedvirtual

Unimplemented as textured lines do not stipple.

Implements makVrv::DtLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::getStippleParameters ( unsigned int scale,
unsigned short &  pattern 
) const
overrideprotectedvirtual

Get the line stipple parameters Uses the two arguments as return values.

Implements makVrv::DtLineSegmentInterface.

virtual void makVrv::DtTexturedLineSegment::resetTextureCoordinates ( )
protectedvirtual

Calculates number of texture elements to place based on zoom factor and length of line.

DtTexturedLineSegment& makVrv::DtTexturedLineSegment::operator= ( const DtTexturedLineSegment )
private

Member Data Documentation

DtQuadProxyInterface* makVrv::DtTexturedLineSegment::myVertex
protected
float makVrv::DtTexturedLineSegment::myVertices[2][4]
protected
float makVrv::DtTexturedLineSegment::my2DVertices[2][2]
protected
DtTextureInterface* makVrv::DtTexturedLineSegment::myTexture
protected
float makVrv::DtTexturedLineSegment::myTextureWidth
protected
float makVrv::DtTexturedLineSegment::myZoomFactor
protected
float makVrv::DtTexturedLineSegment::myRotationOffset
protected

The documentation for this class was generated from the following file:

Document ID: Generated on Wed Mar 27 22:49:11 EDT 2024 from SVN revision 264633
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)