Open3D (C++ API)  0.19.0
Loading...
Searching...
No Matches
VtkUtils.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#include <vtkImageData.h>
9#include <vtkPolyData.h>
10#include <vtkSmartPointer.h>
11
16
17namespace open3d {
18namespace t {
19namespace geometry {
20namespace vtkutils {
21
24int DtypeToVtkType(const core::Dtype& dtype);
25
31vtkSmartPointer<vtkImageData> CreateVtkImageDataFromTensor(core::Tensor& tensor,
32 bool copy = false);
33
52vtkSmartPointer<vtkPolyData> CreateVtkPolyDataFromGeometry(
53 const Geometry& geometry,
54 const std::unordered_set<std::string>& point_attr_include,
55 const std::unordered_set<std::string>& face_attr_include,
56 const std::unordered_set<std::string>& point_attr_exclude = {},
57 const std::unordered_set<std::string>& face_attr_exclude = {},
58 bool copy = false);
59
68TriangleMesh CreateTriangleMeshFromVtkPolyData(vtkPolyData* polydata,
69 bool copy = false);
70
79LineSet CreateLineSetFromVtkPolyData(vtkPolyData* polydata, bool copy = false);
80
90TriangleMesh ExtrudeRotationTriangleMesh(const Geometry& geometry,
91 double angle,
92 const core::Tensor& axis,
93 int resolution = 16,
94 double translation = 0.0,
95 bool capping = true);
96
106LineSet ExtrudeRotationLineSet(const PointCloud& pointcloud,
107 double angle,
108 const core::Tensor& axis,
109 int resolution = 16,
110 double translation = 0.0,
111 bool capping = true);
112
119TriangleMesh ExtrudeLinearTriangleMesh(const Geometry& geometry,
120 const core::Tensor& vector,
121 double scale,
122 bool capping);
123
130LineSet ExtrudeLinearLineSet(const PointCloud& pointcloud,
131 const core::Tensor& vector,
132 double scale,
133 bool capping);
134
151TriangleMesh ComputeNormals(const TriangleMesh& mesh,
152 bool vertex_normals,
153 bool face_normals,
154 bool consistency,
155 bool auto_orient_normals,
156 bool splitting,
157 double feature_angle_deg = 30);
158
159} // namespace vtkutils
160} // namespace geometry
161} // namespace t
162} // namespace open3d
double t
Definition SurfaceReconstructionPoisson.cpp:172
bool copy
Definition VtkUtils.cpp:74
OPEN3D_LOCAL LineSet CreateLineSetFromVtkPolyData(vtkPolyData *polydata, bool copy)
Definition VtkUtils.cpp:473
int DtypeToVtkType(const core::Dtype &dtype)
Definition VtkUtils.cpp:30
TriangleMesh CreateTriangleMeshFromVtkPolyData(vtkPolyData *polydata, bool copy)
Definition VtkUtils.cpp:431
OPEN3D_LOCAL TriangleMesh ExtrudeLinearTriangleMesh(const Geometry &geometry, const core::Tensor &vector, double scale, bool capping)
Definition VtkUtils.cpp:578
OPEN3D_LOCAL LineSet ExtrudeRotationLineSet(const PointCloud &pointcloud, const double angle, const core::Tensor &axis, int resolution, double translation, bool capping)
Definition VtkUtils.cpp:539
OPEN3D_LOCAL vtkSmartPointer< vtkImageData > CreateVtkImageDataFromTensor(core::Tensor &tensor, bool copy)
Definition VtkUtils.cpp:186
OPEN3D_LOCAL LineSet ExtrudeLinearLineSet(const PointCloud &pointcloud, const core::Tensor &vector, double scale, bool capping)
Definition VtkUtils.cpp:586
OPEN3D_LOCAL TriangleMesh ExtrudeRotationTriangleMesh(const Geometry &geometry, const double angle, const core::Tensor &axis, int resolution, double translation, bool capping)
Definition VtkUtils.cpp:528
vtkSmartPointer< vtkPolyData > CreateVtkPolyDataFromGeometry(const Geometry &geometry, const std::unordered_set< std::string > &point_attr_include, const std::unordered_set< std::string > &face_attr_include, const std::unordered_set< std::string > &point_attr_exclude, const std::unordered_set< std::string > &face_attr_exclude, bool copy)
Definition VtkUtils.cpp:369
OPEN3D_LOCAL TriangleMesh ComputeNormals(const TriangleMesh &mesh, bool vertex_normals, bool face_normals, bool consistency, bool auto_orient_normals, bool splitting, double feature_angle_deg)
Definition VtkUtils.cpp:594
Definition PinholeCameraIntrinsic.cpp:16