Go to the documentation of this file.
16 #ifndef SURGSIM_GRAPHICS_OSGSCREENSPACEQUADREPRESENTATION_H
17 #define SURGSIM_GRAPHICS_OSGSCREENSPACEQUADREPRESENTATION_H
30 #pragma warning(disable:4250)
48 class OsgTextureRectangle;
72 void setSize(
double width,
double height)
override;
77 void getSize(
double* width,
double* height)
const override;
84 bool setTexture(std::shared_ptr<Texture> texture)
override;
91 bool setTexture(std::shared_ptr<OsgTexture2d> texture);
98 bool setTexture(std::shared_ptr<OsgTextureRectangle> texture);
141 bool replaceUniform(
const std::string& name, std::shared_ptr<SurgSim::Graphics::UniformBase> newUniform);
156 #if defined(_MSC_VER)
bool doInitialize() override
Interface to be implemented by derived classes.
Definition: OsgScreenSpaceQuadRepresentation.cpp:232
bool replaceUniform(const std::string &name, std::shared_ptr< SurgSim::Graphics::UniformBase > newUniform)
Replace a uniform in the material, will create the material if necessary.
osg::ref_ptr< osg::Projection > m_projection
Projection matrix, needs to be updated when the view is changed.
Definition: OsgScreenSpaceQuadRepresentation.h:122
int m_displayHeight
Definition: OsgScreenSpaceQuadRepresentation.h:130
Definition: OculusView.h:25
bool isTransparent()
Gets whether or not the alpha component of the texture should be used for transparancy blending.
Definition: OsgScreenSpaceQuadRepresentation.cpp:220
Implements the ScreenSpaceQuadRepresentation, provides the uniform 'texture' for the texture that it ...
Definition: OsgScreenSpaceQuadRepresentation.h:53
std::shared_ptr< OsgUniform< std::shared_ptr< OsgTextureRectangle > > > m_rectangleTextureUniform
Uniform to carry the rectangle texture "texture".
Definition: OsgScreenSpaceQuadRepresentation.h:147
virtual void setLocation(double x, double y)
Sets the location in screen space.
Definition: OsgScreenSpaceQuadRepresentation.cpp:192
osg::ref_ptr< osg::Geometry > m_geometry
Local geometry pointer.
Definition: OsgScreenSpaceQuadRepresentation.h:119
Definition: CompoundShapeToGraphics.cpp:29
OsgScreenSpaceQuadRepresentation(const std::string &name)
Constructor.
Definition: OsgScreenSpaceQuadRepresentation.cpp:52
int m_displayWidth
Definition: OsgScreenSpaceQuadRepresentation.h:129
A quad to display on the screen in screen space coordinates, use setPose() to set the position but x,...
Definition: ScreenSpaceQuadRepresentation.h:36
std::shared_ptr< OsgUniform< std::shared_ptr< OsgTexture2d > > > m_textureUniform
Uniform to carry the power of two texture, "texture".
Definition: OsgScreenSpaceQuadRepresentation.h:144
osg::ref_ptr< osg::Geode > m_geode
Local geode to contain geometry.
Definition: OsgScreenSpaceQuadRepresentation.h:116
bool setTexture(std::shared_ptr< Texture > texture) override
Sets a Texture for this quad, this should replace a current texture, this is a convenience function a...
Definition: OsgScreenSpaceQuadRepresentation.cpp:121
void getSize(double *width, double *height) const override
Gets the size of the quad.
Definition: OsgScreenSpaceQuadRepresentation.cpp:114
void doUpdate(double dt) override
Definition: OsgScreenSpaceQuadRepresentation.cpp:226
virtual void getLocation(double *x, double *y)
Gets the location in screen space.
Definition: OsgScreenSpaceQuadRepresentation.cpp:199
~OsgScreenSpaceQuadRepresentation()
Definition: OsgScreenSpaceQuadRepresentation.cpp:102
void setTextureCoordinates(float left, float bottom, float right, float top)
Sets texture coordinates for the quad.
Definition: OsgScreenSpaceQuadRepresentation.cpp:182
void setSize(double width, double height) override
Sets the size for the quad in screen coordinates.
Definition: OsgScreenSpaceQuadRepresentation.cpp:107
void setTransparent(bool value)
Sets whether or not the alpha component of the texture should be used for transparancy blending.
Definition: OsgScreenSpaceQuadRepresentation.cpp:208
osg::Vec3 m_scale
Size of the quad.
Definition: OsgScreenSpaceQuadRepresentation.h:125
Base OSG implementation of a graphics representation.
Definition: OsgRepresentation.h:55
SurgSim::DataStructures::OptionalValue< int > m_texureType
Indicate which type of texture is currently being used.
Definition: OsgScreenSpaceQuadRepresentation.h:150