16 #ifndef SURGSIM_GRAPHICS_OSGSCREENSPACEQUADREPRESENTATION_H 17 #define SURGSIM_GRAPHICS_OSGSCREENSPACEQUADREPRESENTATION_H 29 #pragma warning(disable:4250) 47 class OsgTextureRectangle;
62 virtual void setLocation(
double x,
double y);
66 virtual void getLocation(
double* x,
double* y);
71 virtual void setSize(
double width,
double height)
override;
76 virtual void getSize(
double* width,
double* height)
const override;
83 virtual bool setTexture(std::shared_ptr<Texture> texture)
override;
90 bool setTexture(std::shared_ptr<OsgTexture2d> texture);
97 bool setTexture(std::shared_ptr<OsgTextureRectangle> texture);
100 virtual void doUpdate(
double dt)
override;
102 virtual bool doInitialize()
override;
126 void setTextureCoordinates(
float left,
float bottom,
float right,
float top);
132 bool replaceUniform(
const std::string& name, std::shared_ptr<SurgSim::Graphics::UniformBase> newUniform);
147 std::shared_ptr<OsgMaterial> buildMaterial(
155 #if defined(_MSC_VER) int m_displayHeight
Definition: OsgScreenSpaceQuadRepresentation.h:121
Definition: DriveElementFromInputBehavior.cpp:27
osg::Vec3 m_scale
Size of the quad.
Definition: OsgScreenSpaceQuadRepresentation.h:116
SurgSim::DataStructures::OptionalValue< int > m_texureType
Indicate which type of texture is currently being used.
Definition: OsgScreenSpaceQuadRepresentation.h:141
osg::ref_ptr< osg::Geometry > m_geometry
Local geometry pointer.
Definition: OsgScreenSpaceQuadRepresentation.h:110
int m_displayWidth
Definition: OsgScreenSpaceQuadRepresentation.h:120
std::shared_ptr< OsgUniform< std::shared_ptr< OsgTexture2d > > > m_textureUniform
Uniform to carry the power of two texture, "texture".
Definition: OsgScreenSpaceQuadRepresentation.h:135
osg::ref_ptr< osg::Projection > m_projection
Projection matrix, needs to be updated when the view is changed.
Definition: OsgScreenSpaceQuadRepresentation.h:113
std::shared_ptr< OsgUniform< std::shared_ptr< OsgTextureRectangle > > > m_rectangleTextureUniform
Uniform to carry the rectangle texture "texture".
Definition: OsgScreenSpaceQuadRepresentation.h:138
osg::ref_ptr< osg::Geode > m_geode
Local geode to contain geometry.
Definition: OsgScreenSpaceQuadRepresentation.h:107
string(TOUPPER ${DEVICE}DEVICE_UPPER_CASE) option(BUILD_DEVICE_ $
Definition: CMakeLists.txt:35
A quad to display on the screen in screen space coordinates, use setPose() to set the position but x...
Definition: ScreenSpaceQuadRepresentation.h:31
Definition: OsgLight.h:33
Base OSG implementation of a graphics representation.
Definition: OsgRepresentation.h:42
Implements the ScreenSpaceQuadRepresentation, provides the uniform 'texture' for the texture that it ...
Definition: OsgScreenSpaceQuadRepresentation.h:52