Gazebo Rendering

API Reference

9.0.0~pre2
GlobalIlluminationCiVct.hh
Go to the documentation of this file.
1/*
2 * Copyright (C) 2022 Open Source Robotics Foundation
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 *
16 */
17#ifndef GZ_RENDERING_GLOBALILLUMINATIONCIVCT_HH_
18#define GZ_RENDERING_GLOBALILLUMINATIONCIVCT_HH_
19
21
23
24#include <gz/math/Vector3.hh>
25
26namespace gz
27{
28 namespace rendering
29 {
30 inline namespace GZ_RENDERING_VERSION_NAMESPACE {
31
32 class GZ_RENDERING_VISIBLE CiVctCascade
33 {
35 public: CiVctCascade();
36
38 public: virtual ~CiVctCascade();
39
47 public: virtual void SetCorrectAreaLightShadows(
48 bool _correctAreaLightShadows) = 0;
49
52 public: virtual bool CorrectAreaLightShadows() const = 0;
53
59 public: virtual void SetAutoMultiplier(bool _autoMultiplier) = 0;
60
63 public: virtual bool AutoMultiplier() const = 0;
64
66 public: virtual void SetThinWallCounter(float _thinWallCounter) = 0;
67
70 public: virtual float ThinWallCounter() const = 0;
71
74 public: virtual void SetResolution(const uint32_t _resolution[3]) = 0;
75
78 public: virtual const uint32_t* Resolution() const = 0;
79
85 public: virtual void SetOctantCount(const uint32_t _octants[3]) = 0;
86
89 public: virtual const uint32_t* OctantCount() const = 0;
90
99 public: virtual void SetAreaHalfSize(
100 const gz::math::Vector3d &_areaHalfSize) = 0;
101
104 public: virtual gz::math::Vector3d AreaHalfSize() const = 0;
105
123 public: virtual void SetCameraStepSize(
124 const gz::math::Vector3d &_stepSize) = 0;
125
128 public: virtual gz::math::Vector3d CameraStepSize() const = 0;
129 };
130
135 class GZ_RENDERING_VISIBLE GlobalIlluminationCiVct :
137 {
154
157
159 public: virtual ~GlobalIlluminationCiVct();
160
167 public: virtual void SetMaxCascades(const uint32_t _maxCascades) = 0;
168
174 public: virtual CiVctCascadePtr AddCascade(const CiVctCascade *_ref) = 0;
175
180 public: virtual void PopCascade() = 0;
181
188 public: virtual void AutoCalculateStepSizes(
189 const gz::math::Vector3d &_stepSize) = 0;
190
228 public: virtual void SetConsistentCascadeSteps(
229 bool _consistentCascadeSteps) = 0;
230
233 public: virtual bool ConsistentCascadeSteps() const = 0;
234
238 public: virtual bool Started() const = 0;
239
253 public: virtual void Start(uint32_t _bounceCount, bool _anisotropic) = 0;
254
258 public: virtual void NewSettings(
259 uint32_t _bounceCount, bool _anisotropic) = 0;
260
263 public: virtual void Reset() = 0;
264
272 public: virtual void Bind(const CameraPtr &_camera) = 0;
273
276 public: virtual bool Anisotropic() const = 0;
277
281 public: virtual void SetHighQuality(bool _highQuality) = 0;
282
285 public: virtual bool HighQuality() const = 0;
286
290 public: virtual void SetDebugVisualization(DebugVisualizationMode _dvm) = 0;
291
294 public: virtual DebugVisualizationMode DebugVisualization() const = 0;
295
298 public: virtual void LightingChanged() = 0;
299 };
300 }
301 }
302}
303#endif