Open3D (C++ API)  0.12.0
Public Types | Public Member Functions | Static Public Attributes | Protected Attributes
open3d::visualization::rendering::Scene Class Referenceabstract

#include <Scene.h>

Inheritance diagram for open3d::visualization::rendering::Scene:
open3d::visualization::rendering::FilamentScene

Public Types

using Transform = Eigen::Transform< float, 3, Eigen::Affine >
 

Public Member Functions

 Scene (Renderer &renderer)
 
virtual ~Scene ()=default
 
virtual ViewHandle AddView (std::int32_t x, std::int32_t y, std::uint32_t w, std::uint32_t h)=0
 
virtual ViewGetView (const ViewHandle &view_id) const =0
 
virtual void SetViewActive (const ViewHandle &view_id, bool is_active)=0
 
virtual void SetRenderOnce (const ViewHandle &view_id)=0
 
virtual void RemoveView (const ViewHandle &view_id)=0
 
virtual void AddCamera (const std::string &camera_name, std::shared_ptr< Camera > cam)=0
 
virtual void RemoveCamera (const std::string &camera_name)=0
 
virtual void SetActiveCamera (const std::string &camera_name)=0
 
virtual bool AddGeometry (const std::string &object_name, const geometry::Geometry3D &geometry, const Material &material, const std::string &downsampled_name="", size_t downsample_threshold=SIZE_MAX)=0
 
virtual bool AddGeometry (const std::string &object_name, const t::geometry::PointCloud &point_cloud, const Material &material, const std::string &downsampled_name="", size_t downsample_threshold=SIZE_MAX)=0
 
virtual bool AddGeometry (const std::string &object_name, const TriangleMeshModel &model)=0
 
virtual bool HasGeometry (const std::string &object_name) const =0
 
virtual void UpdateGeometry (const std::string &object_name, const t::geometry::PointCloud &point_cloud, uint32_t update_flags)=0
 
virtual void RemoveGeometry (const std::string &object_name)=0
 
virtual void ShowGeometry (const std::string &object_name, bool show)=0
 
virtual bool GeometryIsVisible (const std::string &object_name)=0
 
virtual void OverrideMaterial (const std::string &object_name, const Material &material)=0
 
virtual void GeometryShadows (const std::string &object_name, bool cast_shadows, bool receive_shadows)=0
 
virtual void SetGeometryCulling (const std::string &object_name, bool enable)=0
 
virtual void SetGeometryPriority (const std::string &object_name, uint8_t priority)=0
 
virtual void QueryGeometry (std::vector< std::string > &geometry)=0
 
virtual void SetGeometryTransform (const std::string &object_name, const Transform &transform)=0
 
virtual Transform GetGeometryTransform (const std::string &object_name)=0
 
virtual geometry::AxisAlignedBoundingBox GetGeometryBoundingBox (const std::string &object_name)=0
 
virtual void OverrideMaterialAll (const Material &material, bool shader_only=true)=0
 
virtual bool AddPointLight (const std::string &light_name, const Eigen::Vector3f &color, const Eigen::Vector3f &position, float intensity, float falloff, bool cast_shadows)=0
 
virtual bool AddSpotLight (const std::string &light_name, const Eigen::Vector3f &color, const Eigen::Vector3f &position, const Eigen::Vector3f &direction, float intensity, float falloff, float inner_cone_angle, float outer_cone_angle, bool cast_shadows)=0
 
virtual bool AddDirectionalLight (const std::string &light_name, const Eigen::Vector3f &color, const Eigen::Vector3f &direction, float intensity, bool cast_shadows)=0
 
virtual LightGetLight (const std::string &light_name)=0
 
virtual void RemoveLight (const std::string &light_name)=0
 
virtual void UpdateLight (const std::string &light_name, const Light &light)=0
 
virtual void UpdateLightColor (const std::string &light_name, const Eigen::Vector3f &color)=0
 
virtual void UpdateLightPosition (const std::string &light_name, const Eigen::Vector3f &position)=0
 
virtual void UpdateLightDirection (const std::string &light_name, const Eigen::Vector3f &direction)=0
 
virtual void UpdateLightIntensity (const std::string &light_name, float intensity)=0
 
virtual void UpdateLightFalloff (const std::string &light_name, float falloff)=0
 
virtual void UpdateLightConeAngles (const std::string &light_name, float inner_cone_angle, float outer_cone_angle)=0
 
virtual void EnableLightShadow (const std::string &light_name, bool cast_shadows)=0
 
virtual void SetSunLight (const Eigen::Vector3f &direction, const Eigen::Vector3f &color, float intensity)=0
 
virtual void EnableSunLight (bool enable)=0
 
virtual void EnableSunLightShadows (bool enable)=0
 
virtual float GetSunLightIntensity ()=0
 
virtual void SetSunLightDirection (const Eigen::Vector3f &direction)=0
 
virtual Eigen::Vector3f GetSunLightDirection ()=0
 
virtual void SetSunAngularRadius (float radius)=0
 
virtual void SetSunHaloSize (float size)=0
 
virtual void SetSunHaloFalloff (float falloff)=0
 
virtual bool SetIndirectLight (const std::string &ibl_name)=0
 
virtual const std::string & GetIndirectLight ()=0
 
virtual void EnableIndirectLight (bool enable)=0
 
virtual void SetIndirectLightIntensity (float intensity)=0
 
virtual float GetIndirectLightIntensity ()=0
 
virtual void SetIndirectLightRotation (const Transform &rotation)=0
 
virtual Transform GetIndirectLightRotation ()=0
 
virtual void ShowSkybox (bool show)=0
 
virtual void SetBackground (const Eigen::Vector4f &color, const std::shared_ptr< geometry::Image > image=nullptr)=0
 
virtual void RenderToImage (std::function< void(std::shared_ptr< geometry::Image >)> callback)=0
 Size of image is the size of the window. More...
 

Static Public Attributes

static const uint32_t kUpdatePointsFlag = (1 << 0)
 
static const uint32_t kUpdateNormalsFlag = (1 << 1)
 
static const uint32_t kUpdateColorsFlag = (1 << 2)
 
static const uint32_t kUpdateUv0Flag = (1 << 3)
 

Protected Attributes

Rendererrenderer_
 

Member Typedef Documentation

◆ Transform

using open3d::visualization::rendering::Scene::Transform = Eigen::Transform<float, 3, Eigen::Affine>

Constructor & Destructor Documentation

◆ Scene()

open3d::visualization::rendering::Scene::Scene ( Renderer renderer)
inline

◆ ~Scene()

virtual open3d::visualization::rendering::Scene::~Scene ( )
virtualdefault

Member Function Documentation

◆ AddCamera()

virtual void open3d::visualization::rendering::Scene::AddCamera ( const std::string &  camera_name,
std::shared_ptr< Camera cam 
)
pure virtual

◆ AddDirectionalLight()

virtual bool open3d::visualization::rendering::Scene::AddDirectionalLight ( const std::string &  light_name,
const Eigen::Vector3f &  color,
const Eigen::Vector3f &  direction,
float  intensity,
bool  cast_shadows 
)
pure virtual

◆ AddGeometry() [1/3]

virtual bool open3d::visualization::rendering::Scene::AddGeometry ( const std::string &  object_name,
const geometry::Geometry3D geometry,
const Material material,
const std::string &  downsampled_name = "",
size_t  downsample_threshold = SIZE_MAX 
)
pure virtual

◆ AddGeometry() [2/3]

virtual bool open3d::visualization::rendering::Scene::AddGeometry ( const std::string &  object_name,
const t::geometry::PointCloud point_cloud,
const Material material,
const std::string &  downsampled_name = "",
size_t  downsample_threshold = SIZE_MAX 
)
pure virtual

◆ AddGeometry() [3/3]

virtual bool open3d::visualization::rendering::Scene::AddGeometry ( const std::string &  object_name,
const TriangleMeshModel model 
)
pure virtual

◆ AddPointLight()

virtual bool open3d::visualization::rendering::Scene::AddPointLight ( const std::string &  light_name,
const Eigen::Vector3f &  color,
const Eigen::Vector3f &  position,
float  intensity,
float  falloff,
bool  cast_shadows 
)
pure virtual

◆ AddSpotLight()

virtual bool open3d::visualization::rendering::Scene::AddSpotLight ( const std::string &  light_name,
const Eigen::Vector3f &  color,
const Eigen::Vector3f &  position,
const Eigen::Vector3f &  direction,
float  intensity,
float  falloff,
float  inner_cone_angle,
float  outer_cone_angle,
bool  cast_shadows 
)
pure virtual

◆ AddView()

virtual ViewHandle open3d::visualization::rendering::Scene::AddView ( std::int32_t  x,
std::int32_t  y,
std::uint32_t  w,
std::uint32_t  h 
)
pure virtual

◆ EnableIndirectLight()

virtual void open3d::visualization::rendering::Scene::EnableIndirectLight ( bool  enable)
pure virtual

◆ EnableLightShadow()

virtual void open3d::visualization::rendering::Scene::EnableLightShadow ( const std::string &  light_name,
bool  cast_shadows 
)
pure virtual

◆ EnableSunLight()

virtual void open3d::visualization::rendering::Scene::EnableSunLight ( bool  enable)
pure virtual

◆ EnableSunLightShadows()

virtual void open3d::visualization::rendering::Scene::EnableSunLightShadows ( bool  enable)
pure virtual

◆ GeometryIsVisible()

virtual bool open3d::visualization::rendering::Scene::GeometryIsVisible ( const std::string &  object_name)
pure virtual

◆ GeometryShadows()

virtual void open3d::visualization::rendering::Scene::GeometryShadows ( const std::string &  object_name,
bool  cast_shadows,
bool  receive_shadows 
)
pure virtual

◆ GetGeometryBoundingBox()

virtual geometry::AxisAlignedBoundingBox open3d::visualization::rendering::Scene::GetGeometryBoundingBox ( const std::string &  object_name)
pure virtual

◆ GetGeometryTransform()

virtual Transform open3d::visualization::rendering::Scene::GetGeometryTransform ( const std::string &  object_name)
pure virtual

◆ GetIndirectLight()

virtual const std::string& open3d::visualization::rendering::Scene::GetIndirectLight ( )
pure virtual

◆ GetIndirectLightIntensity()

virtual float open3d::visualization::rendering::Scene::GetIndirectLightIntensity ( )
pure virtual

◆ GetIndirectLightRotation()

virtual Transform open3d::visualization::rendering::Scene::GetIndirectLightRotation ( )
pure virtual

◆ GetLight()

virtual Light& open3d::visualization::rendering::Scene::GetLight ( const std::string &  light_name)
pure virtual

◆ GetSunLightDirection()

virtual Eigen::Vector3f open3d::visualization::rendering::Scene::GetSunLightDirection ( )
pure virtual

◆ GetSunLightIntensity()

virtual float open3d::visualization::rendering::Scene::GetSunLightIntensity ( )
pure virtual

◆ GetView()

virtual View* open3d::visualization::rendering::Scene::GetView ( const ViewHandle view_id) const
pure virtual

◆ HasGeometry()

virtual bool open3d::visualization::rendering::Scene::HasGeometry ( const std::string &  object_name) const
pure virtual

◆ OverrideMaterial()

virtual void open3d::visualization::rendering::Scene::OverrideMaterial ( const std::string &  object_name,
const Material material 
)
pure virtual

◆ OverrideMaterialAll()

virtual void open3d::visualization::rendering::Scene::OverrideMaterialAll ( const Material material,
bool  shader_only = true 
)
pure virtual

◆ QueryGeometry()

virtual void open3d::visualization::rendering::Scene::QueryGeometry ( std::vector< std::string > &  geometry)
pure virtual

◆ RemoveCamera()

virtual void open3d::visualization::rendering::Scene::RemoveCamera ( const std::string &  camera_name)
pure virtual

◆ RemoveGeometry()

virtual void open3d::visualization::rendering::Scene::RemoveGeometry ( const std::string &  object_name)
pure virtual

◆ RemoveLight()

virtual void open3d::visualization::rendering::Scene::RemoveLight ( const std::string &  light_name)
pure virtual

◆ RemoveView()

virtual void open3d::visualization::rendering::Scene::RemoveView ( const ViewHandle view_id)
pure virtual

◆ RenderToImage()

virtual void open3d::visualization::rendering::Scene::RenderToImage ( std::function< void(std::shared_ptr< geometry::Image >)>  callback)
pure virtual

Size of image is the size of the window.

Implemented in open3d::visualization::rendering::FilamentScene.

◆ SetActiveCamera()

virtual void open3d::visualization::rendering::Scene::SetActiveCamera ( const std::string &  camera_name)
pure virtual

◆ SetBackground()

virtual void open3d::visualization::rendering::Scene::SetBackground ( const Eigen::Vector4f &  color,
const std::shared_ptr< geometry::Image image = nullptr 
)
pure virtual

◆ SetGeometryCulling()

virtual void open3d::visualization::rendering::Scene::SetGeometryCulling ( const std::string &  object_name,
bool  enable 
)
pure virtual

◆ SetGeometryPriority()

virtual void open3d::visualization::rendering::Scene::SetGeometryPriority ( const std::string &  object_name,
uint8_t  priority 
)
pure virtual

◆ SetGeometryTransform()

virtual void open3d::visualization::rendering::Scene::SetGeometryTransform ( const std::string &  object_name,
const Transform transform 
)
pure virtual

◆ SetIndirectLight()

virtual bool open3d::visualization::rendering::Scene::SetIndirectLight ( const std::string &  ibl_name)
pure virtual

◆ SetIndirectLightIntensity()

virtual void open3d::visualization::rendering::Scene::SetIndirectLightIntensity ( float  intensity)
pure virtual

◆ SetIndirectLightRotation()

virtual void open3d::visualization::rendering::Scene::SetIndirectLightRotation ( const Transform rotation)
pure virtual

◆ SetRenderOnce()

virtual void open3d::visualization::rendering::Scene::SetRenderOnce ( const ViewHandle view_id)
pure virtual

◆ SetSunAngularRadius()

virtual void open3d::visualization::rendering::Scene::SetSunAngularRadius ( float  radius)
pure virtual

◆ SetSunHaloFalloff()

virtual void open3d::visualization::rendering::Scene::SetSunHaloFalloff ( float  falloff)
pure virtual

◆ SetSunHaloSize()

virtual void open3d::visualization::rendering::Scene::SetSunHaloSize ( float  size)
pure virtual

◆ SetSunLight()

virtual void open3d::visualization::rendering::Scene::SetSunLight ( const Eigen::Vector3f &  direction,
const Eigen::Vector3f &  color,
float  intensity 
)
pure virtual

◆ SetSunLightDirection()

virtual void open3d::visualization::rendering::Scene::SetSunLightDirection ( const Eigen::Vector3f &  direction)
pure virtual

◆ SetViewActive()

virtual void open3d::visualization::rendering::Scene::SetViewActive ( const ViewHandle view_id,
bool  is_active 
)
pure virtual

◆ ShowGeometry()

virtual void open3d::visualization::rendering::Scene::ShowGeometry ( const std::string &  object_name,
bool  show 
)
pure virtual

◆ ShowSkybox()

virtual void open3d::visualization::rendering::Scene::ShowSkybox ( bool  show)
pure virtual

◆ UpdateGeometry()

virtual void open3d::visualization::rendering::Scene::UpdateGeometry ( const std::string &  object_name,
const t::geometry::PointCloud point_cloud,
uint32_t  update_flags 
)
pure virtual

◆ UpdateLight()

virtual void open3d::visualization::rendering::Scene::UpdateLight ( const std::string &  light_name,
const Light light 
)
pure virtual

◆ UpdateLightColor()

virtual void open3d::visualization::rendering::Scene::UpdateLightColor ( const std::string &  light_name,
const Eigen::Vector3f &  color 
)
pure virtual

◆ UpdateLightConeAngles()

virtual void open3d::visualization::rendering::Scene::UpdateLightConeAngles ( const std::string &  light_name,
float  inner_cone_angle,
float  outer_cone_angle 
)
pure virtual

◆ UpdateLightDirection()

virtual void open3d::visualization::rendering::Scene::UpdateLightDirection ( const std::string &  light_name,
const Eigen::Vector3f &  direction 
)
pure virtual

◆ UpdateLightFalloff()

virtual void open3d::visualization::rendering::Scene::UpdateLightFalloff ( const std::string &  light_name,
float  falloff 
)
pure virtual

◆ UpdateLightIntensity()

virtual void open3d::visualization::rendering::Scene::UpdateLightIntensity ( const std::string &  light_name,
float  intensity 
)
pure virtual

◆ UpdateLightPosition()

virtual void open3d::visualization::rendering::Scene::UpdateLightPosition ( const std::string &  light_name,
const Eigen::Vector3f &  position 
)
pure virtual

Field Documentation

◆ kUpdateColorsFlag

const uint32_t open3d::visualization::rendering::Scene::kUpdateColorsFlag = (1 << 2)
static

◆ kUpdateNormalsFlag

const uint32_t open3d::visualization::rendering::Scene::kUpdateNormalsFlag = (1 << 1)
static

◆ kUpdatePointsFlag

const uint32_t open3d::visualization::rendering::Scene::kUpdatePointsFlag = (1 << 0)
static

◆ kUpdateUv0Flag

const uint32_t open3d::visualization::rendering::Scene::kUpdateUv0Flag = (1 << 3)
static

◆ renderer_

Renderer& open3d::visualization::rendering::Scene::renderer_
protected

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