16 #ifndef SURGSIM_GRAPHICS_OSGVECTORFIELDREPRESENTATION_H
17 #define SURGSIM_GRAPHICS_OSGVECTORFIELDREPRESENTATION_H
23 #include <osg/Geometry>
24 #include <osg/LineWidth>
34 #pragma warning(disable:4250)
49 virtual std::shared_ptr< SurgSim::Graphics::VectorField >
getVectorField()
const override;
60 virtual void setScale(
double scale)
override;
63 virtual double getScale()
const override;
74 virtual void doUpdate(
double dt)
override;
106 #if defined(_MSC_VER)
113 #endif // SURGSIM_GRAPHICS_OSGVECTORFIELDREPRESENTATION_H
virtual double getScale() const override
Gets the scale applied to all vectors.
Definition: OsgVectorFieldRepresentation.cpp:157
osg::ref_ptr< osg::Point > m_point
OSG::Point for representing vector starting point.
Definition: OsgVectorFieldRepresentation.h:97
Definition: DriveElementFromInputBehavior.cpp:27
OSG vector field representation, implements a VectorFieldRepresenation using OSG. ...
Definition: OsgVectorFieldRepresentation.h:38
Graphic representation of a vector field Each point/location, i.e.
Definition: VectorFieldRepresentation.h:29
osg::ref_ptr< osg::Vec4Array > m_colors
OSG::Vec4Array to hold color for each vector.
Definition: OsgVectorFieldRepresentation.h:100
virtual void setLineWidth(double width) override
Sets vector line width.
Definition: OsgVectorFieldRepresentation.cpp:142
osg::ref_ptr< osg::Vec3Array > m_vertexData
OSG vertex data structure.
Definition: OsgVectorFieldRepresentation.h:82
osg::ref_ptr< osg::LineWidth > m_line
OSG::LineWidth for representing vector.
Definition: OsgVectorFieldRepresentation.h:95
virtual void setScale(double scale) override
Sets the scale to be applied to all vectors.
Definition: OsgVectorFieldRepresentation.cpp:152
virtual void doUpdate(double dt) override
Executes the update operation.
Definition: OsgVectorFieldRepresentation.cpp:73
osg::ref_ptr< osg::DrawElementsUInt > m_drawPoints
An OSG::DrawElementUInt object specifying how vector starting points will be drawn.
Definition: OsgVectorFieldRepresentation.h:92
virtual void setPointSize(double size)
Sets the size of point indicating the starting of vector.
Definition: OsgVectorFieldRepresentation.cpp:162
osg::ref_ptr< osg::Geometry > m_pointGeometry
OSG::Geometry node holding OSG representation of vector starting points.
Definition: OsgVectorFieldRepresentation.h:87
virtual double getPointSize() const
Gets the size of starting point of a vector.
Definition: OsgVectorFieldRepresentation.cpp:167
double m_scale
A scale to scale the length of vector.
Definition: OsgVectorFieldRepresentation.h:103
std::shared_ptr< SurgSim::Graphics::VectorField > m_vectorField
Vector Field holds a list of vertices/points (X,Y,Z) in 3D space Each point is associated with a vect...
Definition: OsgVectorFieldRepresentation.h:79
OsgVectorFieldRepresentation(const std::string &name)
Constructor.
Definition: OsgVectorFieldRepresentation.cpp:32
~OsgVectorFieldRepresentation()
Destructor.
Definition: OsgVectorFieldRepresentation.cpp:69
virtual double getLineWidth() const override
Gets line width.
Definition: OsgVectorFieldRepresentation.cpp:147
osg::ref_ptr< osg::DrawArrays > m_drawArrays
An OSG::DrawArrays object specifying how vectors will be drawn.
Definition: OsgVectorFieldRepresentation.h:90
osg::ref_ptr< osg::Geometry > m_lineGeometry
OSG::Geometry node holding OSG representation of vectors.
Definition: OsgVectorFieldRepresentation.h:85
Base OSG implementation of a graphics representation.
Definition: OsgRepresentation.h:42
virtual std::shared_ptr< SurgSim::Graphics::VectorField > getVectorField() const override
Gets the vector field.
Definition: OsgVectorFieldRepresentation.cpp:137