isl-org / isl-org/Open3D

Support UpdateGeometry for more geometry types in `visualization/rendering/Scene.h`

Open
#2,601 0 comments 1 reaction 0 assignees View on GitHub
feature request visualization
Dominant language
C++
Stars
14k
Forks
2.6k
Avg merge
5d 18h
Merged PRs (30d)
6

Description

**Is your feature request related to a problem? Please describe.**

There are functions to `AddGeometry` other than `geometry::PointCloud` but there are no `UpdateGeometry` functions for these other types.
It can be seen here: https://github.com/intel-isl/Open3D/blob/master/cpp/open3d/visualization/rendering/Scene.h#L103
```
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 void UpdateGeometry(const std::string& object_name,
const t::geometry::PointCloud& point_cloud,
uint32_t update_flags) = 0;
```
This functionality is needed to change the scene actively.

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

I'd like:
```
virtual void UpdateGeometry(const std::string& object_name,
const geometry::Geometry3D& geometry,
uint32_t update_flags) = 0;
virtual void UpdateGeometry(const std::string& object_name,
const TriangleMeshModel& model,
uint32_t update_flags) = 0;
```

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.