| OpenCV 3.4.8 Open Source Computer Vision

Public Member Functions | List of all members
cv::ovis::WindowScene Class Referenceabstract
OGRE 3D Visualiser

`#include <opencv2/ovis.hpp>`

## Public Member Functions
virtual | ~WindowScene ()
virtual Rect2d | createCameraEntity (const String &name, InputArray K, const Size &imsize, float zFar, InputArray tvec=noArray(), InputArray rot=noArray())=0
virtual void | createEntity (const String &name, const String &meshname, InputArray tvec=noArray(), InputArray rot=noArray())=0
virtual void | createLightEntity (const String &name, InputArray tvec=noArray(), InputArray rot=noArray(), const Scalar &diffuseColor=Scalar::all(1), const Scalar &specularColor=Scalar::all(1))=0
virtual void | fixCameraYawAxis (bool useFixed, InputArray up=noArray())=0
virtual void | getCameraPose (OutputArray R=noArray(), OutputArray tvec=noArray(), bool invert=false)=0
virtual void | getCompositorTexture (const String &compname, const String &texname, OutputArray out, int mrtIndex=0)=0
virtual void | getDepth (OutputArray depth)=0
virtual void | getEntityProperty (const String &name, int prop, OutputArray value)=0
virtual void | getScreenshot (OutputArray frame)=0
virtual void | removeEntity (const String &name)=0
virtual void | setBackground (InputArray image)=0
virtual void | setBackground (const Scalar &color)=0
virtual void | setCameraIntrinsics (InputArray K, const Size &imsize, float zNear=-1, float zFar=-1)=0
virtual void | setCameraLookAt (const String &target, InputArray offset=noArray())=0
virtual void | setCameraPose (InputArray tvec=noArray(), InputArray rot=noArray(), bool invert=false)=0
virtual void | setCompositors (const std::vector< String > &names)=0
virtual void | setEntityPose (const String &name, InputArray tvec=noArray(), InputArray rot=noArray(), bool invert=false)=0
virtual void | setEntityProperty (const String &name, int prop, const Scalar &value)=0
virtual void | setEntityProperty (const String &name, int prop, const String &value)=0
virtual void | updateEntityPose (const String &name, InputArray tvec=noArray(), InputArray rot=noArray())=0

## Detailed Description

A 3D viewport and the associated scene

## Constructor & Destructor Documentation

## § ~WindowScene()

virtual cv::ovis::WindowScene::~WindowScene | ( |  | ) |
| virtual

## Member Function Documentation

## § createCameraEntity()

virtual Rect2d cv::ovis::WindowScene::createCameraEntity | ( | const String & | name,
|  | InputArray | K,
|  | const Size & | imsize,
|  | float | zFar,
|  | InputArray | tvec = `noArray()`,
|  | InputArray | rot = `noArray()`
| ) |  |
| pure virtual

convenience method to visualize a camera position

the entity uses a material with the same name that can be used to change the line color.

Parameters

  name | entity name
  K | intrinsic matrix
  imsize | image size
  zFar | far plane in camera coordinates
  rot | Rodrigues vector or 3x3 rotation matrix
  tvec | translation

Returns
  the extents of the Frustum at far plane, where the top left corner denotes the principal point offset

## § createEntity()

virtual void cv::ovis::WindowScene::createEntity | ( | const String & | name,
|  | const String & | meshname,
|  | InputArray | tvec = `noArray()`,
|  | InputArray | rot = `noArray()`
| ) |  |
| pure virtual

place an entity of an mesh in the scene

the mesh needs to be created beforehand. Either programmatically by e.g. createPointCloudMesh or by placing an Ogre .mesh file in a resource location.

See also
  addResourceLocation

Parameters

  name | entity name
  meshname | mesh name
  rot | Rodrigues vector or 3x3 rotation matrix
  tvec | translation

## § createLightEntity()

virtual void cv::ovis::WindowScene::createLightEntity | ( | const String & | name,
|  | InputArray | tvec = `noArray()`,
|  | InputArray | rot = `noArray()`,
|  | const Scalar & | diffuseColor = `Scalar::all(1)`,
|  | const Scalar & | specularColor = `Scalar::all(1)`
| ) |  |
| pure virtual

creates a point light in the scene

Parameters

  name | entity name
  rot | Rodrigues vector or 3x3 rotation matrix
  tvec | translation
  diffuseColor |
  specularColor |

## § fixCameraYawAxis()

virtual void cv::ovis::WindowScene::fixCameraYawAxis | ( | bool | useFixed,
|  | InputArray | up = `noArray()`
| ) |  |
| pure virtual

convenience method to force the "up" axis to stay fixed

works with both programmatic changes and SCENE_INTERACTIVE

Parameters

  useFixed | whether to enforce the fixed yaw axis
  up | the axis to be fixed

## § getCameraPose()

virtual void cv::ovis::WindowScene::getCameraPose | ( | OutputArray | R = `noArray()`,
|  | OutputArray | tvec = `noArray()`,
|  | bool | invert = `false`
| ) |  |
| pure virtual

Retrieves the current camera pose

Parameters

  R | 3x3 rotation matrix
  tvec | translation vector
  invert | return the inverted pose

## § getCompositorTexture()

virtual void cv::ovis::WindowScene::getCompositorTexture | ( | const String & | compname,
|  | const String & | texname,
|  | OutputArray | out,
|  | int | mrtIndex = `0`
| ) |  |
| pure virtual

read back the texture of an active compositor

Parameters

  compname | name of the compositor
  texname | name of the texture inside the compositor
  mrtIndex | if texture is a MRT, specifies the attachment
  out | the texture contents

## § getDepth()

virtual void cv::ovis::WindowScene::getDepth | ( | OutputArray | depth | ) |
| pure virtual

get the depth for the current frame.

return the per pixel distance to the camera in world units

## § getEntityProperty()

virtual void cv::ovis::WindowScene::getEntityProperty | ( | const String & | name,
|  | int | prop,
|  | OutputArray | value
| ) |  |
| pure virtual

get the property of an entity

Parameters

  name | entity name
  prop | EntityProperty
  value | the value

## § getScreenshot()

virtual void cv::ovis::WindowScene::getScreenshot | ( | OutputArray | frame | ) |
| pure virtual

read back the image generated by the last call to waitKey

## § removeEntity()

virtual void cv::ovis::WindowScene::removeEntity | ( | const String & | name | ) |
| pure virtual

remove an entity from the scene

Parameters

  name | entity name

## § setBackground() [1/2]

virtual void cv::ovis::WindowScene::setBackground | ( | InputArray | image | ) |
| pure virtual

set window background to custom image

creates a texture named "<title>_Background"

Parameters

  image |

## § setBackground() [2/2]

virtual void cv::ovis::WindowScene::setBackground | ( | const Scalar & | color | ) |
| pure virtual

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

## § setCameraIntrinsics()

virtual void cv::ovis::WindowScene::setCameraIntrinsics | ( | InputArray | K,
|  | const Size & | imsize,
|  | float | zNear = `-1`,
|  | float | zFar = `-1`
| ) |  |
| pure virtual

set intrinsics of the camera

Parameters

  K | intrinsic matrix or noArray(). If noArray() is specified, imsize is ignored and zNear/ zFar can be set separately.
  imsize | image size
  zNear | near clip distance or -1 to keep the current
  zFar | far clip distance or -1 to keep the current

## § setCameraLookAt()

virtual void cv::ovis::WindowScene::setCameraLookAt | ( | const String & | target,
|  | InputArray | offset = `noArray()`
| ) |  |
| pure virtual

convenience method to orient the camera to a specific entity

Parameters

  target | entity name
  offset | offset from entity centre

## § setCameraPose()

virtual void cv::ovis::WindowScene::setCameraPose | ( | InputArray | tvec = `noArray()`,
|  | InputArray | rot = `noArray()`,
|  | bool | invert = `false`
| ) |  |
| pure virtual

Sets the current camera pose

Parameters

  rot | Rodrigues vector or 3x3 rotation matrix
  tvec | translation
  invert | use the inverse of the given pose

## § setCompositors()

virtual void cv::ovis::WindowScene::setCompositors | ( | const std::vector< String > & | names | ) |
| pure virtual

enable an ordered chain of full-screen post processing effects

this way you can add distortion or SSAO effects. The effects themselves must be defined inside Ogre .compositor scripts.

See also
  addResourceLocation

Parameters

  names | compositor names that will be applied in order of appearance

## § setEntityPose()

virtual void cv::ovis::WindowScene::setEntityPose | ( | const String & | name,
|  | InputArray | tvec = `noArray()`,
|  | InputArray | rot = `noArray()`,
|  | bool | invert = `false`
| ) |  |
| pure virtual

set entity pose in the world coordinate space.

Parameters

  name | enitity name
  rot | Rodrigues vector or 3x3 rotation matrix
  tvec | translation
  invert | use the inverse of the given pose

## § setEntityProperty() [1/2]

virtual void cv::ovis::WindowScene::setEntityProperty | ( | const String & | name,
|  | int | prop,
|  | const Scalar & | value
| ) |  |
| pure virtual

set the property of an entity to the given value

Parameters

  name | entity name
  prop | EntityProperty
  value | the value

## § setEntityProperty() [2/2]

virtual void cv::ovis::WindowScene::setEntityProperty | ( | const String & | name,
|  | int | prop,
|  | const String & | value
| ) |  |
| pure virtual

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

## § updateEntityPose()

virtual void cv::ovis::WindowScene::updateEntityPose | ( | const String & | name,
|  | InputArray | tvec = `noArray()`,
|  | InputArray | rot = `noArray()`
| ) |  |
| pure virtual

update entity pose by transformation in the parent coordinate space. (pre-rotation)

Parameters

  name | entity name
  rot | Rodrigues vector or 3x3 rotation matrix
  tvec | translation

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

- opencv2/ovis.hpp