Open3D (C++ API)  0.19.0
Loading...
Searching...
No Matches
View.h
Go to the documentation of this file.
1// ----------------------------------------------------------------------------
2// - Open3D: www.open3d.org -
3// ----------------------------------------------------------------------------
4// Copyright (c) 2018-2024 www.open3d.org
5// SPDX-License-Identifier: MIT
6// ----------------------------------------------------------------------------
7
8#pragma once
9
10#include <Eigen/Geometry>
11
13
14namespace open3d {
15namespace visualization {
16namespace rendering {
17
18class Scene;
19class Camera;
20class ColorGradingParams;
21
22class View {
23public:
24 enum class TargetBuffers : std::uint8_t {
25 None = 0u,
26 Color = 1u,
27 Depth = 2u,
28 Stencil = 4u,
29
34 };
35
36 enum class Mode : std::uint8_t {
37 Color = 0u,
38 Depth,
39 Normals,
40 // This three modes always stay at end
44 };
45
46 enum class ShadowType : std::uint8_t {
47 kPCF, /* Percentage closer filter, the default */
48 kVSM /* Variance shadow map */
49 };
50
51 virtual ~View() {}
52
53 virtual void SetDiscardBuffers(const TargetBuffers& buffers) = 0;
54 virtual Mode GetMode() const = 0;
55 virtual void SetMode(Mode mode) = 0;
56 virtual void SetWireframe(bool enable) = 0;
57
58 virtual void SetSampleCount(int n) = 0;
59 virtual int GetSampleCount() const = 0;
60
61 virtual void SetViewport(std::int32_t x,
62 std::int32_t y,
63 std::uint32_t w,
64 std::uint32_t h) = 0;
65 virtual std::array<int, 4> GetViewport() const = 0;
66
67 virtual void SetPostProcessing(bool enabled) = 0;
68 virtual void SetAmbientOcclusion(bool enabled,
69 bool ssct_enabled = false) = 0;
70 virtual void SetBloom(bool enabled,
71 float strength = 0.5f,
72 int spread = 6) = 0;
73 virtual void SetAntiAliasing(bool enabled, bool temporal = false) = 0;
74 virtual void SetShadowing(bool enabled, ShadowType type) = 0;
75
76 virtual void SetColorGrading(const ColorGradingParams& color_grading) = 0;
77
78 virtual void ConfigureForColorPicking() = 0;
79
80 virtual void EnableViewCaching(bool enable) = 0;
81 virtual bool IsCached() const = 0;
83
84 virtual Camera* GetCamera() const = 0;
85};
86
87} // namespace rendering
88} // namespace visualization
89} // namespace open3d
Manages.
Definition ColorGrading.h:18
virtual TextureHandle GetColorBuffer()=0
virtual void SetAmbientOcclusion(bool enabled, bool ssct_enabled=false)=0
virtual std::array< int, 4 > GetViewport() const =0
virtual void SetViewport(std::int32_t x, std::int32_t y, std::uint32_t w, std::uint32_t h)=0
virtual void SetPostProcessing(bool enabled)=0
virtual void SetColorGrading(const ColorGradingParams &color_grading)=0
virtual void SetMode(Mode mode)=0
virtual void SetSampleCount(int n)=0
virtual void SetAntiAliasing(bool enabled, bool temporal=false)=0
virtual void SetDiscardBuffers(const TargetBuffers &buffers)=0
virtual void SetBloom(bool enabled, float strength=0.5f, int spread=6)=0
virtual void SetShadowing(bool enabled, ShadowType type)=0
virtual void EnableViewCaching(bool enable)=0
virtual ~View()
Definition View.h:51
virtual Camera * GetCamera() const =0
virtual void SetWireframe(bool enable)=0
virtual int GetSampleCount() const =0
virtual bool IsCached() const =0
char type
Definition FilePCD.cpp:41
Definition PinholeCameraIntrinsic.cpp:16