15 namespace visualization {
20 static constexpr
const char*
CUSTOM_IBL =
"Custom KTX file...";
23 "Material from file [default]";
25 "Cloudy day (no direct sun)";
34 rendering::Scene::Transform::Identity();
108 const std::string&
name);
139 void SetOnChanged(std::function<
void(
bool)> on_changed);
142 Eigen::Vector3f bg_color_ = {1.0f, 1.0f, 1.0f};
143 bool show_skybox_ =
false;
144 bool show_axes_ =
false;
145 bool show_ground_ =
false;
146 bool sun_follows_cam_ =
true;
147 LightingProfile lighting_;
149 Materials current_materials_;
150 Eigen::Vector3f custom_default_color = {-1.0f, -1.0f, 1.0f};
151 bool user_has_changed_color_ =
false;
152 bool user_has_changed_lighting_profile_ =
false;
153 bool user_has_customized_lighting_ =
false;
154 bool displaying_point_clouds_ =
false;
155 bool user_wants_estimate_normals_ =
false;
156 bool basic_mode_enabled_ =
false;
157 bool wireframe_mode_enabled_ =
false;
159 std::function<void(
bool)> on_changed_;
161 void NotifyChanged(
bool material_changed =
false);
CloudViewerScene::LightingProfile profile
bool GetUserHasCustomizedLighting() const
const Eigen::Vector3f & GetBackgroundColor() const
static constexpr const char * DEFAULT_IBL
bool GetUserHasChangedColor() const
static constexpr const char * MATERIAL_FROM_FILE_NAME
void EstimateNormalsClicked()
void SetCustomLighting(const LightingProfile &profile)
bool GetShowSkybox() const
void SetCurrentMaterials(const Materials &materials, const std::string &name)
void SetLitMaterial(const LitMaterial &material, const std::string &name)
void SetShowSkybox(bool show)
static const LitMaterial & GetDefaultLitMaterial()
bool GetUserWantsEstimateNormals()
void SetBackgroundColor(const Eigen::Vector3f &color)
void SetCustomDefaultColor(const Eigen::Vector3f color)
void SetCurrentMaterialColor(const Eigen::Vector3f &color)
void UnsetCustomDefaultColor()
const Materials & GetCurrentMaterials() const
static constexpr const char * CUSTOM_IBL
void SetBasicMode(bool enable)
void SetMaterialType(MaterialType type)
void SetMaterialsToDefault()
bool GetUserHasChangedLightingProfile() const
void SetDisplayingPointClouds(bool displaying)
If true, enables point size.
static const LightingProfile & GetDefaultLightingProfile()
static constexpr const char * DEFAULT_MATERIAL_NAME
void SetLightingProfile(const LightingProfile &profile)
void SetWireframeMode(bool enable)
const Eigen::Vector3f & GetCurrentMaterialColor() const
static const std::map< std::string, const LitMaterial > prefab_materials_
static const LightingProfile & GetDefaultPointCloudLightingProfile()
void SetOnChanged(std::function< void(bool)> on_changed)
bool GetSunFollowsCamera() const
void SetShowAxes(bool show)
void SetPointSize(int size)
bool GetWireframeMode() const
bool GetDisplayingPointClouds() const
bool GetBasicMode() const
static const std::vector< LightingProfile > lighting_profiles_
static constexpr const char * POINT_CLOUD_PROFILE_NAME
void SetShowGround(bool show)
bool GetShowGround() const
const LightingProfile & GetLighting() const
void SetSunFollowsCamera(bool follow)
MaterialType GetMaterialType() const
Eigen::Transform< float, 3, Eigen::Affine > Transform
Generic file read and write utility for python interface.
rendering::Scene::Transform ibl_rotation
Eigen::Vector3f sun_color
Eigen::Vector3f base_color
float clear_coat_roughness
Eigen::Vector3f base_color