SurgSim::Graphics::OsgCamera Class Reference

OSG implementation of a graphics camera. More...

`#include <SurgSim/Graphics/OsgCamera.h>`

Inheritance diagram for SurgSim::Graphics::OsgCamera:

## Public Member Functions

| OsgCamera (const std::string &name)
| Constructor. More...
| SURGSIM_CLASSNAME (SurgSim::Graphics::OsgCamera)
bool | setRenderGroup (std::shared_ptr< Group > group) override
| Sets the group of representations that will be seen by this camera. More...
bool | setRenderGroups (const std::vector< std::shared_ptr< Group >> &groups) override
| Sets the representation groups that will be seen by this camera. More...
void | setLocalActive (bool val) override
| Set the component's active state. More...
virtual SurgSim::Math::Matrix44d | getViewMatrix () const
| Gets the view matrix of the camera. More...
virtual SurgSim::Math::Matrix44d | getInverseViewMatrix () const
| Gets the inverse view matrix of the camera. More...
void | setProjectionMatrix (const SurgSim::Math::Matrix44d &matrix) override
| Sets the projection matrix of the camera. More...
const SurgSim::Math::Matrix44d & | getProjectionMatrix () const override
| Gets the projection matrix of the camera. More...
SurgSim::Math::Matrix44d | getInverseProjectionMatrix () const override
| Gets the inverse projection matrix of the camera. More...
void | update (double dt) override
| Updates the representation. More...
osg::ref_ptr< osg::Camera > | getOsgCamera () const
osg::ref_ptr< osg::Node > | getOsgNode () const
bool | setRenderTarget (std::shared_ptr< RenderTarget > renderTarget) override
| Sets RenderTarget for the current camera, enables the camera to render to off-screen textures. More...
std::shared_ptr< RenderTarget > | getRenderTarget () const override
| Gets RenderTarget that is currently being used by the camera. More...
bool | setMaterial (std::shared_ptr< SurgSim::Framework::Component > material) override
| Sets the material that defines the visual appearance of the representation. More...
std::shared_ptr< Material > | getMaterial () const override
| Gets the material that defines the visual appearance of the representation. More...
void | clearMaterial () override
| Removes the material from the representation. More...
void | setRenderOrder (RenderOrder order, int value) override
| Determine when this camera will render. More...
void | setAmbientColor (const SurgSim::Math::Vector4d &color) override
| Sets a value for the ambient lighting term, this can add light to the scene when there is no lighting. More...
SurgSim::Math::Vector4d | getAmbientColor () override
void | setGenerateTangents (bool value) override
| Enable or disable the generation of tangents. More...
void | setPerspectiveProjection (double fovy, double aspect, double near, double far) override
| Set the projection matrix with the appropriate perspective projection parameters. More...
void | setOrthogonalProjection (double left, double right, double bottom, double top, double near, double far) override
| Set the projection matrix with the appropriate orthogonal projection parameters. More...
void | setViewport (int x, int y, int width, int height) override
| Sets the viewport size for this camera. More...
void | getViewport (int *x, int *y, int *width, int *height) const override
| collect the viewport values More...
void | setViewportSize (std::array< double, 2 > dimensions) override
| Sets the width and height of the viewport. More...
std::array< double, 2 > | getViewportSize () const override
| Gets the dimensions of the viewport. More...
void | setMainCamera (bool val) override
| Marks the camera as a main view camera, this means that view dependent passes should follow this camera with their appropriate calculations, for this purpose when isMainCamera() is true, the camera provides a uniform struct with it's transforms. More...
bool | isMainCamera () override
Public Member Functions inherited from SurgSim::Graphics::OsgRepresentation
| OsgRepresentation (const std::string &name)
| Constructor. More...
virtual | ~OsgRepresentation ()
| Destructor. More...
osg::ref_ptr< osg::Node > | getOsgNode () const
| Returns the root OSG Node for this representations portion of the scene graph. More...
bool | setMaterial (std::shared_ptr< SurgSim::Framework::Component > material) override
| Sets the material that defines the visual appearance of the representation. More...
std::shared_ptr< Material > | getMaterial () const override
| Gets the material that defines the visual appearance of the representation. More...
void | clearMaterial () override
| Removes the material from the representation. More...
void | setDrawAsWireFrame (bool val) override
| Sets the representation to render as a wire frame. More...
bool | getDrawAsWireFrame () const override
| Return if the representation is rendered as a wire frame. More...
void | setGenerateTangents (bool value) override
| Enable the generation of tangents When enabled it is up to the subclasses responsibility to react to changes and trigger the regeneration of Tangents. More...
bool | isGeneratingTangents () const override
void | update (double dt) override
| Updates the representation. More...
void | addUniform (std::shared_ptr< SurgSim::Graphics::UniformBase > uniform)
| Adds a uniform to this representation. More...
void | addUniform (const std::string &type, const std::string &name, const boost::any &value)
| Adds and a uniform to this representation and set its value. More...
Public Member Functions inherited from SurgSim::Graphics::Representation
| Representation (const std::string &name)
| Constructor. More...
virtual | ~Representation ()
| Destructor. More...
void | addGroupReferences (const std::vector< std::string > &groups)
| Adds a list of group references. More...
void | setGroupReferences (const std::vector< std::string > &groups)
| Sets the list of group references. More...
void | setGroupReference (const std::string &group)
| Helper functions, this clears all the references and sets, only the reference given in the parameter. More...
std::vector< std::string > | getGroupReferences () const
| Gets group references. More...
bool | removeGroupReference (const std::string &group)
| Function to remove an unwanted reference. More...
void | clearGroupReferences ()
| Clear all the Group references. More...
Public Member Functions inherited from SurgSim::Framework::Representation
| Representation (const std::string &name)
| Constructor. More...
virtual void | setLocalPose (const SurgSim::Math::RigidTransform3d &pose)
| Set the pose of the representation with respect to the Scene Element. More...
virtual SurgSim::Math::RigidTransform3d | getLocalPose () const
| Get the pose of the representation with respect to the Scene Element. More...
virtual SurgSim::Math::RigidTransform3d | getPose () const
| Get the pose of the representation in world coordinates. More...
Public Member Functions inherited from SurgSim::Framework::Component
| Component (const std::string &name)
| Constructor. More...
virtual | ~Component ()
| Destructor. More...
std::string | getName () const
| Gets component name. More...
std::string | getFullName () const
| Gets a string containing the name of the Component and (if it has one) its SceneElement. More...
void | setName (const std::string &name)
| Sets the name of component. More...
boost::uuids::uuid | getUuid () const
| Gets the id of the component. More...
bool | isInitialized () const
bool | initialize (const std::weak_ptr< Runtime > &runtime)
| Initialize this component, this needs to be called before wakeUp() can be called. More...
bool | isAwake () const
bool | wakeUp ()
| Wakeup this component, this will be called when the component is inserted into the ComponentManager that is responsible for handling this component. More...
void | retire ()
| Retire this component, this will be called when the component is removed from the ComponentManager that is responsible for handling this component. More...
void | setScene (std::weak_ptr< Scene > scene)
| Sets the scene. More...
std::shared_ptr< Scene > | getScene ()
| Gets the scene. More...
void | setSceneElement (std::weak_ptr< SceneElement > sceneElement)
| Sets the scene element. More...
std::shared_ptr< SceneElement > | getSceneElement ()
| Gets the scene element. More...
std::shared_ptr< const SceneElement > | getSceneElement () const
| Gets the scene element, constant version. More...
std::shared_ptr< Runtime > | getRuntime () const
| Get the runtime which contains this component. More...
virtual std::string | getClassName () const
| The class name for this class, this being the base class it should return SurgSim::Framework::Component but this would make missing implemenentations of this hard to catch, therefore this calls SURGSIM_FAILURE. More...
std::shared_ptr< Component > | getSharedPtr ()
| Gets a shared pointer to this component. More...
virtual void | doRetire ()
| Interface to be implemented by derived classes Has a default implementation, does nothing. More...
bool | isActive () const
bool | isLocalActive () const
Public Member Functions inherited from SurgSim::Framework::Accessible
| Accessible ()
| Default Constructor. More...
| ~Accessible ()
| Destructor. More...
template<class T >
T | getValue (const std::string &name) const
| Retrieves the value with the name by executing the getter if it is found and tries to convert it to the given type. More...
boost::any | getValue (const std::string &name) const
| Retrieves the value with the name by executing the getter if it is found. More...
template<class T >
bool | getValue (const std::string &name, T *value) const
| Retrieves the value with the name by executing the getter if it is found, and converts it to the type of the output parameter. More...
void | setValue (const std::string &name, const boost::any &value)
| Sets a value of a property that has setter. More...
bool | isReadable (const std::string &name) const
| Check whether a property is readable. More...
bool | isWriteable (const std::string &name) const
| Check whether a property is writable. More...
void | setGetter (const std::string &name, GetterType func)
| Sets a getter for a given property. More...
void | setSetter (const std::string &name, SetterType func)
| Sets a setter for a given property. More...
void | setAccessors (const std::string &name, GetterType getter, SetterType setter)
| Sets the accessors getter and setter in one function. More...
void | removeAccessors (const std::string &name)
| Removes all the accessors (getter and setter) for a given property. More...
void | forwardProperty (const std::string &name, const Accessible &target, const std::string &targetProperty)
| Adds a property with the given name that uses the targets accessors, in effect forwarding the value to the target. More...
void | setSerializable (const std::string &name, EncoderType encoder, DecoderType decoder)
| Sets the functions used to convert data from and to a YAML::Node. More...
void | setDecoder (const std::string &name, DecoderType decoder)
| Sets the functions used to convert data from a YAML::Node. More...
YAML::Node | encode () const
| Encode this Accessible to a YAML::Node. More...
void | decode (const YAML::Node &node, const std::vector< std::string > &ignoredProperties=std::vector< std::string >())
| Decode this Accessible from a YAML::Node, will throw an exception if the data type cannot be converted. More...
template<>
boost::any | getValue (const std::string &name) const
Public Member Functions inherited from SurgSim::Graphics::Camera
| Camera (const std::string &name)
| Constructor. More...
void | setRenderGroupReference (const std::string &name)
| Set the group reference that this camera wants to use as the group for rendering. More...
void | setRenderGroupReferences (const std::vector< std::string > &names)
| Set the collections of group references that this camera wants to use for rendering. More...
std::vector< std::string > | getRenderGroupReferences () const
| Gets the collection of names of render groups used for rendering. More...
void | addRenderGroupReference (const std::string &name)
| Adds a single group reference to the collection of group references for rendering. More...
virtual bool | addRenderGroup (std::shared_ptr< Group > group)
| Add a group of representations that will seen by this camera. More...
std::vector< std::shared_ptr< Group > > | getRenderGroups () const
| Gets all groups of representations that will be seen by this camera. More...
bool | addGroupReference (const std::string &name) override
| Add a reference to a group, this will eventual add this representation to the group with the the same name. More...

## Private Member Functions

void | attachRenderTargetTexture (osg::Camera::BufferComponent buffer, std::shared_ptr< Texture > texture)
| Attach a specific texture to a specific BufferComponent, works for Depth and all the Colors. More...
void | detachCurrentRenderTarget ()
| Detach the current render target from the camera. More...

## Private Attributes

osg::ref_ptr< osg::Camera > | m_camera
SurgSim::Math::Matrix44d | m_projectionMatrix
| Projection matrix of the camera. More...
std::unordered_map< int, std::shared_ptr< Texture > > | m_textureMap
std::shared_ptr< RenderTarget > | m_renderTarget
std::shared_ptr< OsgUniform< SurgSim::Math::Matrix44f > > | m_viewMatrixUniform
| Uniform to carry the view matrix. More...
std::shared_ptr< OsgUniform< SurgSim::Math::Matrix44f > > | m_inverseViewMatrixUniform
| Uniform to carry the inverse view matrix. More...
std::shared_ptr< OsgUniform< SurgSim::Math::Vector4f > > | m_ambientColorUniform
| Uniform to carry the ambient color. More...
SurgSim::Math::Vector4d | m_ambientColor
| Value for ambient color. More...
bool | m_isMainCamera

## Additional Inherited Members

Public Types inherited from SurgSim::Framework::Accessible
typedef std::function< boost::any(void)> | GetterType
typedef std::function< void(boost::any)> | SetterType
typedef std::function< YAML::Node(void)> | EncoderType
typedef std::function< void(const YAML::Node *)> | DecoderType
Public Types inherited from SurgSim::Framework::FactoryBase1< Component, std::string >
typedef ObjectFactory1< Component, std::string > | FactoryType
Public Types inherited from SurgSim::Graphics::Camera
enum | RenderOrder { RENDER_ORDER_PRE_RENDER = 0, RENDER_ORDER_IN_ORDER, RENDER_ORDER_POST_RENDER, RENDER_ORDER_COUNT }
Static Public Member Functions inherited from SurgSim::Framework::FactoryBase1< Component, std::string >
static FactoryType & | getFactory ()
Static Public Attributes inherited from SurgSim::Graphics::Representation
static const std::string | DefaultGroupName = "__OssDefault__"
static const std::string | DefaultHudGroupName = "__OssDefaulHud__"
Protected Member Functions inherited from SurgSim::Graphics::OsgRepresentation
virtual void | doUpdate (double dt)
void | setVisible (bool val)
| Set the visibility of this representation. More...
void | updateTangents ()
| Causes the tangents to be recalculated if tangent generation is enabled Subclasses should call this whenever the state changes in a way that need tangents to be recalculated. More...
Protected Member Functions inherited from SurgSim::Framework::Component
virtual std::shared_ptr< PoseComponent > | getPoseComponent ()
| Get the PoseComponent for this component. More...
virtual std::shared_ptr< const PoseComponent > | getPoseComponent () const
| Get the PoseComponent for this component, constant access. More...
Protected Attributes inherited from SurgSim::Graphics::OsgRepresentation
osg::ref_ptr< osg::Switch > | m_switch
| Switch used to toggle the visibility of the representation. More...
osg::ref_ptr< osg::PositionAttitudeTransform > | m_transform
| Transform used to pose the representation. More...
osg::ref_ptr< osg::Group > | m_materialProxy
| Holder for attributes coming from OsgMaterial. More...
std::shared_ptr< OsgMaterial > | m_material
| Material defining the visual appearance of the representation. More...
osg::ref_ptr< TangentSpaceGenerator > | m_tangentGenerator
| Visitor to generate tangents. More...
bool | m_drawAsWireFrame
| Indicates if the representation is rendered as a wireframe. More...
std::shared_ptr< OsgUniform< SurgSim::Math::Matrix44f > > | m_modelMatrixUniform

## Detailed Description

OSG implementation of a graphics camera.

A Graphics::OsgCamera wraps a osg::Camera to provide camera functionality and a osg::Switch to allow enabling and disabling of the camera.

## Constructor & Destructor Documentation

## OsgCamera()

SurgSim::Graphics::OsgCamera::OsgCamera | ( | const std::string & | name | ) |

explicit

Constructor.

Parameters

  name | Name of the camera The view matrix is initialized with eye at (0, 0, 0), center at (0, 0, -1), and up (0, 1, 0). The projection matrix is initialized to a perspective matrix with FOV Y of 45 deg, Aspect Ratio of 1.0, Z Near of 0.01, and Z Far of 10.0.

Update storage of view and projection matrices

## Member Function Documentation

## attachRenderTargetTexture()

void SurgSim::Graphics::OsgCamera::attachRenderTargetTexture | ( | osg::Camera::BufferComponent | buffer,
|  | std::shared_ptr< Texture > | texture
| ) |  |

private

Attach a specific texture to a specific BufferComponent, works for Depth and all the Colors.

Parameters

  buffer | The BufferComponent enum.
  texture | The specific texture to attach.

## clearMaterial()

void SurgSim::Graphics::OsgCamera::clearMaterial | ( |  | ) |

override virtual

Removes the material from the representation.

Implements SurgSim::Graphics::Representation.

## detachCurrentRenderTarget()

void SurgSim::Graphics::OsgCamera::detachCurrentRenderTarget | ( |  | ) |

private

Detach the current render target from the camera.

## getAmbientColor()

SurgSim::Math::Vector4d SurgSim::Graphics::OsgCamera::getAmbientColor | ( |  | ) |

override virtual

Returns
  the ambient light that gets added to the scene

Implements SurgSim::Graphics::Camera.

## getInverseProjectionMatrix()

SurgSim::Math::Matrix44d SurgSim::Graphics::OsgCamera::getInverseProjectionMatrix | ( |  | ) | const

override virtual

Gets the inverse projection matrix of the camera.

Returns
  Inverse Projection matrix

Implements SurgSim::Graphics::Camera.

## getInverseViewMatrix()

SurgSim::Math::Matrix44d SurgSim::Graphics::OsgCamera::getInverseViewMatrix | ( |  | ) | const

virtual

Gets the inverse view matrix of the camera.

Returns
  Inverse view matrix

Implements SurgSim::Graphics::Camera.

## getMaterial()

std::shared_ptr< Material > SurgSim::Graphics::OsgCamera::getMaterial | ( |  | ) | const

override virtual

Gets the material that defines the visual appearance of the representation.

Returns
  Graphics material

Implements SurgSim::Graphics::Representation.

## getOsgCamera()

osg::ref_ptr< osg::Camera > SurgSim::Graphics::OsgCamera::getOsgCamera | ( |  | ) | const

Returns
  the OSG camera node

## getOsgNode()

osg::ref_ptr< osg::Node > SurgSim::Graphics::OsgCamera::getOsgNode | ( |  | ) | const

Returns
  the OSG parent node for this object

## getProjectionMatrix()

const SurgSim::Math::Matrix44d & SurgSim::Graphics::OsgCamera::getProjectionMatrix | ( |  | ) | const

override virtual

Gets the projection matrix of the camera.

Returns
  Projection matrix

Implements SurgSim::Graphics::Camera.

## getRenderTarget()

std::shared_ptr< RenderTarget > SurgSim::Graphics::OsgCamera::getRenderTarget | ( |  | ) | const

override virtual

Gets RenderTarget that is currently being used by the camera.

Returns
  The RenderTarget.

Implements SurgSim::Graphics::Camera.

## getViewMatrix()

SurgSim::Math::Matrix44d SurgSim::Graphics::OsgCamera::getViewMatrix | ( |  | ) | const

virtual

Gets the view matrix of the camera.

Returns
  View matrix

Implements SurgSim::Graphics::Camera.

## getViewport()

void SurgSim::Graphics::OsgCamera::getViewport | ( | int * | x,
|  | int * | y,
|  | int * | width,
|  | int * | height
| ) |  | const

override virtual

collect the viewport values

Parameters

  x,y,width,height | [out] non-nullptr parameters to write the viewport parameters

Implements SurgSim::Graphics::Camera.

## getViewportSize()

std::array< double, 2 > SurgSim::Graphics::OsgCamera::getViewportSize | ( |  | ) | const

override virtual

Gets the dimensions of the viewport.

Implements SurgSim::Graphics::Camera.

## isMainCamera()

bool SurgSim::Graphics::OsgCamera::isMainCamera | ( |  | ) |

override virtual

Returns
  whether this is used as a main camera

Implements SurgSim::Graphics::Camera.

## setAmbientColor()

void SurgSim::Graphics::OsgCamera::setAmbientColor | ( | const SurgSim::Math::Vector4d & | color | ) |

override virtual

Sets a value for the ambient lighting term, this can add light to the scene when there is no lighting.

Parameters

  color | value for the light that should get added to the scene

Implements SurgSim::Graphics::Camera.

## setGenerateTangents()

void SurgSim::Graphics::OsgCamera::setGenerateTangents | ( | bool | value | ) |

override virtual

Enable or disable the generation of tangents.

Parameters

  value | true enables tangent generation, false otherwise

Implements SurgSim::Graphics::Representation.

## setLocalActive()

void SurgSim::Graphics::OsgCamera::setLocalActive | ( | bool | val | ) |

override virtual

Set the component's active state.

Parameters

  val | If true component is active, inactive if false.

Reimplemented from SurgSim::Framework::Component.

## setMainCamera()

void SurgSim::Graphics::OsgCamera::setMainCamera | ( | bool | val | ) |

override virtual

Marks the camera as a main view camera, this means that view dependent passes should follow this camera with their appropriate calculations, for this purpose when isMainCamera() is true, the camera provides a uniform struct with it's transforms.

This function will most likely be called by the view.

struct MainCamera {
mat4 viewMatrix;
mat4 inverseViewMatrix;
mat4 projectionMatrix;
mat4 mainProjectionMatrix;
};
uniform MainCamera mainCamera;

Implements SurgSim::Graphics::Camera.

## setMaterial()

bool SurgSim::Graphics::OsgCamera::setMaterial | ( | std::shared_ptr< SurgSim::Framework::Component > | material | ) |

override virtual

Sets the material that defines the visual appearance of the representation.

Parameters

  material | Graphics material

Returns
  True if set successfully, otherwise false

Implements SurgSim::Graphics::Representation.

## setOrthogonalProjection()

void SurgSim::Graphics::OsgCamera::setOrthogonalProjection | ( | double | left,
|  | double | right,
|  | double | bottom,
|  | double | top,
|  | double | near,
|  | double | far
| ) |  |

override virtual

Set the projection matrix with the appropriate orthogonal projection parameters.

Parameters

  left,right | left and right bounds of the view volume
  bottom,top | bottom and top bounds of the view volume
  near,far | near and far bounds of the view volume

Implements SurgSim::Graphics::Camera.

## setPerspectiveProjection()

void SurgSim::Graphics::OsgCamera::setPerspectiveProjection | ( | double | fovy,
|  | double | aspect,
|  | double | near,
|  | double | far
| ) |  |

override virtual

Set the projection matrix with the appropriate perspective projection parameters.

Parameters

  fovy | Field of view along the y-axis
  aspect | Aspect ration between y and x axis in the viewport
  near,far | near and far clipping planes

Implements SurgSim::Graphics::Camera.

## setProjectionMatrix()

void SurgSim::Graphics::OsgCamera::setProjectionMatrix | ( | const SurgSim::Math::Matrix44d & | matrix | ) |

override virtual

Sets the projection matrix of the camera.

Parameters

  matrix | Projection matrix

Implements SurgSim::Graphics::Camera.

## setRenderGroup()

bool SurgSim::Graphics::OsgCamera::setRenderGroup | ( | std::shared_ptr< Group > | group | ) |

override virtual

Sets the group of representations that will be seen by this camera.

Only the representations in this group will be rendered when this camera's view is rendered.

Note
  The camera can not be part of the group that it is rendering

Parameters

  group | Group of representations

Returns
  True if it succeeded, false if it failed

Reimplemented from SurgSim::Graphics::Camera.

## setRenderGroups()

bool SurgSim::Graphics::OsgCamera::setRenderGroups | ( | const std::vector< std::shared_ptr< Group >> & | groups | ) |

override virtual

Sets the representation groups that will be seen by this camera.

Parameters

  groups | Vector of groups of representations

Returns
  True if it succeeded, false if it failed

Reimplemented from SurgSim::Graphics::Camera.

## setRenderOrder()

void SurgSim::Graphics::OsgCamera::setRenderOrder | ( | RenderOrder | order,
|  | int | value
| ) |  |

override virtual

Determine when this camera will render.

The main camera will render at (RENDER_ORDER_IN_ORDER,0) In general all preprocessing should be done in RENDER_ORDER_PRE_ORDER, HUD Displaying usually at RENDER_ORDER_POST_ORDER

Parameters

  order | The phase of rendering.
  value | The index within the phase, the order between two cameras of the same phase and index is not determined.

Implements SurgSim::Graphics::Camera.

## setRenderTarget()

bool SurgSim::Graphics::OsgCamera::setRenderTarget | ( | std::shared_ptr< RenderTarget > | renderTarget | ) |

override virtual

Sets RenderTarget for the current camera, enables the camera to render to off-screen textures.

Parameters

  renderTarget | The render target.

Implements SurgSim::Graphics::Camera.

## setViewport()

void SurgSim::Graphics::OsgCamera::setViewport | ( | int | x,
|  | int | y,
|  | int | width,
|  | int | height
| ) |  |

override virtual

Sets the viewport size for this camera.

Parameters

  x,y | location of the viewport in screen space
  width,height | size of the viewport in screen space

Implements SurgSim::Graphics::Camera.

## setViewportSize()

void SurgSim::Graphics::OsgCamera::setViewportSize | ( | std::array< double, 2 > | dimensions | ) |

override virtual

Sets the width and height of the viewport.

Parameters

  dimensions | size of the viewport in screen space

Implements SurgSim::Graphics::Camera.

## SURGSIM_CLASSNAME()

SurgSim::Graphics::OsgCamera::SURGSIM_CLASSNAME | ( | SurgSim::Graphics::OsgCamera |  | ) |

## update()

void SurgSim::Graphics::OsgCamera::update | ( | double | dt | ) |

override virtual

Updates the representation.

Parameters

  dt | The time in seconds of the preceding timestep.

Implements SurgSim::Graphics::Representation.

## Member Data Documentation

## m_ambientColor

SurgSim::Math::Vector4d SurgSim::Graphics::OsgCamera::m_ambientColor

private

Value for ambient color.

## m_ambientColorUniform

std::shared_ptr<OsgUniform<SurgSim::Math::Vector4f> > SurgSim::Graphics::OsgCamera::m_ambientColorUniform

private

Uniform to carry the ambient color.

## m_camera

osg::ref_ptr<osg::Camera> SurgSim::Graphics::OsgCamera::m_camera

private

## m_inverseViewMatrixUniform

std::shared_ptr<OsgUniform<SurgSim::Math::Matrix44f> > SurgSim::Graphics::OsgCamera::m_inverseViewMatrixUniform

private

Uniform to carry the inverse view matrix.

## m_isMainCamera

bool SurgSim::Graphics::OsgCamera::m_isMainCamera

private

## m_projectionMatrix

SurgSim::Math::Matrix44d SurgSim::Graphics::OsgCamera::m_projectionMatrix

private

Projection matrix of the camera.

## m_renderTarget

std::shared_ptr<RenderTarget> SurgSim::Graphics::OsgCamera::m_renderTarget

private

## m_textureMap

std::unordered_map<int, std::shared_ptr<Texture> > SurgSim::Graphics::OsgCamera::m_textureMap

private

## m_viewMatrixUniform

std::shared_ptr<OsgUniform<SurgSim::Math::Matrix44f> > SurgSim::Graphics::OsgCamera::m_viewMatrixUniform

private

Uniform to carry the view matrix.

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

- SurgSim/Graphics/OsgCamera.h
- SurgSim/Graphics/OsgCamera.cpp