34 namespace visualization {
39 static constexpr
const char*
CUSTOM_IBL =
"Custom KTX file...";
42 "Material from file [default]";
44 "Cloudy day (no direct sun)";
53 rendering::Scene::Transform::Identity();
67 Eigen::Vector3f base_color = {0.9f, 0.9f, 0.9f};
69 float roughness = 0.7f;
70 float reflectance = 0.5f;
71 float clear_coat = 0.2f;
72 float clear_coat_roughness = 0.2f;
73 float anisotropy = 0.f;
79 Eigen::Vector3f base_color = {0.9f, 0.9f, 0.9f};
85 float point_size = 3.0f;
121 const std::string&
name);
143 void SetOnChanged(std::function<
void(
bool)> on_changed);
146 Eigen::Vector3f bg_color_ = {1.0f, 1.0f, 1.0f};
147 bool show_skybox_ =
false;
148 bool show_axes_ =
false;
152 Eigen::Vector3f custom_default_color = {-1.0f, -1.0f, 1.0f};
153 bool user_has_changed_color_ =
false;
154 bool user_has_changed_lighting_profile_ =
false;
155 bool user_has_customized_lighting_ =
false;
156 bool displaying_point_clouds_ =
false;
158 std::function<void(bool)> on_changed_;
160 void NotifyChanged(
bool material_changed =
false);
static const LightingProfile & GetDefaultPointCloudLightingProfile()
Definition: GuiSettingsModel.cpp:176
Eigen::Vector3f sun_color
Definition: GuiSettingsModel.h:51
std::string name
Definition: GuiSettingsModel.h:47
static constexpr const char * DEFAULT_MATERIAL_NAME
Definition: GuiSettingsModel.h:40
MaterialType
Definition: GuiSettingsModel.h:59
bool GetDisplayingPointClouds() const
Definition: GuiSettingsModel.cpp:352
rendering::Scene::Transform ibl_rotation
Definition: GuiSettingsModel.h:52
const Eigen::Vector3f & GetBackgroundColor() const
Definition: GuiSettingsModel.cpp:218
static const std::map< std::string, const LitMaterial > prefab_materials_
Definition: GuiSettingsModel.h:92
void SetCustomLighting(const LightingProfile &profile)
Definition: GuiSettingsModel.cpp:235
Eigen::Transform< float, 3, Eigen::Affine > Transform
Definition: Scene.h:67
Definition: GuiSettingsModel.h:82
double sun_intensity
Definition: GuiSettingsModel.h:49
GuiSettingsModel()
Definition: GuiSettingsModel.cpp:201
Definition: GuiSettingsModel.h:66
void SetCurrentMaterialColor(const Eigen::Vector3f &color)
Definition: GuiSettingsModel.cpp:308
const Eigen::Vector3f & GetCurrentMaterialColor() const
Definition: GuiSettingsModel.cpp:293
void SetOnChanged(std::function< void(bool)> on_changed)
Definition: GuiSettingsModel.cpp:372
bool GetUserHasCustomizedLighting() const
Definition: GuiSettingsModel.cpp:364
Definition: GuiSettingsModel.h:62
void SetMaterialType(MaterialType type)
Definition: GuiSettingsModel.cpp:244
static const LightingProfile & GetDefaultLightingProfile()
Definition: GuiSettingsModel.cpp:171
int size
Definition: FilePCD.cpp:59
int GetPointSize() const
Definition: GuiSettingsModel.cpp:343
Definition: GuiSettingsModel.h:36
void SetBackgroundColor(const Eigen::Vector3f &color)
Definition: GuiSettingsModel.cpp:221
static const std::vector< LightingProfile > lighting_profiles_
Definition: GuiSettingsModel.h:91
LitMaterial lit
Definition: GuiSettingsModel.h:83
math::float4 color
Definition: LineSetBuffers.cpp:64
Eigen::Vector3f sun_dir
Definition: GuiSettingsModel.h:50
void SetMaterialsToDefault()
Definition: GuiSettingsModel.cpp:281
static const LitMaterial & GetDefaultLitMaterial()
Definition: GuiSettingsModel.cpp:188
void SetCurrentMaterials(const Materials &materials, const std::string &name)
Definition: GuiSettingsModel.cpp:269
std::string lit_name
Definition: GuiSettingsModel.h:88
Definition: GuiSettingsModel.h:76
bool GetUserHasChangedLightingProfile() const
Definition: GuiSettingsModel.cpp:360
Definition: GuiSettingsModel.h:63
const LightingProfile & GetLighting() const
Definition: GuiSettingsModel.cpp:226
bool GetShowSkybox() const
Definition: GuiSettingsModel.cpp:206
char type
Definition: FilePCD.cpp:60
bool GetUserHasChangedColor() const
Definition: GuiSettingsModel.cpp:368
bool sun_enabled
Definition: GuiSettingsModel.h:56
void SetCustomDefaultColor(const Eigen::Vector3f color)
Definition: GuiSettingsModel.cpp:335
void SetLitMaterial(const LitMaterial &material, const std::string &name)
Definition: GuiSettingsModel.cpp:258
static constexpr const char * DEFAULT_IBL
Definition: GuiSettingsModel.h:38
void SetShowAxes(bool show)
Definition: GuiSettingsModel.cpp:213
Definition: PinholeCameraIntrinsic.cpp:35
Definition: GuiSettingsModel.h:60
Definition: GuiSettingsModel.h:46
bool GetShowAxes() const
Definition: GuiSettingsModel.cpp:212
double ibl_intensity
Definition: GuiSettingsModel.h:48
void ResetColors()
Definition: GuiSettingsModel.cpp:322
void SetShowSkybox(bool show)
Definition: GuiSettingsModel.cpp:207
bool use_default_ibl
Definition: GuiSettingsModel.h:55
void SetPointSize(int size)
Definition: GuiSettingsModel.cpp:347
MaterialType GetMaterialType() const
Definition: GuiSettingsModel.cpp:241
void SetDisplayingPointClouds(bool displaying)
If true, enables point size.
Definition: GuiSettingsModel.cpp:355
void SetLightingProfile(const LightingProfile &profile)
Definition: GuiSettingsModel.cpp:229
UnlitMaterial unlit
Definition: GuiSettingsModel.h:84
static constexpr const char * CUSTOM_IBL
Definition: GuiSettingsModel.h:39
static constexpr const char * POINT_CLOUD_PROFILE_NAME
Definition: GuiSettingsModel.h:43
Definition: GuiSettingsModel.h:61
void UnsetCustomDefaultColor()
Definition: GuiSettingsModel.cpp:339
bool ibl_enabled
Definition: GuiSettingsModel.h:54
static constexpr const char * MATERIAL_FROM_FILE_NAME
Definition: GuiSettingsModel.h:41
Open3DScene::LightingProfile profile
Definition: O3DVisualizer.cpp:278
const Materials & GetCurrentMaterials() const
Definition: GuiSettingsModel.cpp:249