Open3D (C++ API)
0.17.0
|
Data Structures | |
struct | VtkToTensorType |
struct | VtkToTensorType< long long > |
Functions | |
int | DtypeToVtkType (const core::Dtype &dtype) |
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) |
TriangleMesh | CreateTriangleMeshFromVtkPolyData (vtkPolyData *polydata, bool copy) |
OPEN3D_LOCAL LineSet | CreateLineSetFromVtkPolyData (vtkPolyData *polydata, bool copy) |
OPEN3D_LOCAL TriangleMesh | ExtrudeRotationTriangleMesh (const Geometry &geometry, const double angle, const core::Tensor &axis, int resolution, double translation, bool capping) |
OPEN3D_LOCAL LineSet | ExtrudeRotationLineSet (const PointCloud &pointcloud, const double angle, const core::Tensor &axis, int resolution, double translation, bool capping) |
OPEN3D_LOCAL TriangleMesh | ExtrudeLinearTriangleMesh (const Geometry &geometry, const core::Tensor &vector, double scale, bool capping) |
OPEN3D_LOCAL LineSet | ExtrudeLinearLineSet (const PointCloud &pointcloud, const core::Tensor &vector, double scale, bool capping) |
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) |
TriangleMesh open3d::t::geometry::vtkutils::ComputeNormals | ( | const TriangleMesh & | mesh, |
bool | vertex_normals, | ||
bool | face_normals, | ||
bool | consistency, | ||
bool | auto_orient_normals, | ||
bool | splitting, | ||
double | feature_angle_deg = 30 |
||
) |
Computes the normals for a mesh. In addition to computing the normals this function can fix the face vertex order and orient the normals to point outwards. This function can be applied to non-manifold or non-closed meshes but without any guarantees to correctness or quality for the result.
mesh | A point cloud. |
vertex_normals | If true compute the vertex normals. |
face_normals | If true compute the face normals. |
consistency | If true the algorithm fixes the vertex order of faces. |
auto_orient_normals | If true normals will be flipped to point outwards |
splitting | If true allows splitting of edges to account for sharp edges. Splitting an edge will create new vertices. |
feature_angle_deg | The angle in degrees that defines sharp edges for splitting. |
LineSet open3d::t::geometry::vtkutils::CreateLineSetFromVtkPolyData | ( | vtkPolyData * | polydata, |
bool | copy = false |
||
) |
Creates a LineSet a vtkPolyData object. The returned LineSet may directly use the memory of the data arrays in the vtkPolyData object. The returned LineSet will hold references to the arrays and it is not necessary to keep other references to the vtkPolyData object or its arrays alive.
polydata | Input polyData object. |
copy | If true always create a copy of the data. |
TriangleMesh open3d::t::geometry::vtkutils::CreateTriangleMeshFromVtkPolyData | ( | vtkPolyData * | polydata, |
bool | copy = false |
||
) |
Creates a triangle mesh from a vtkPolyData object. The returned TriangleMesh may directly use the memory of the data arrays in the vtkPolyData object. The returned TriangleMesh will hold references to the arrays and it is not necessary to keep other references to the vtkPolyData object or its arrays alive.
polydata | Input polyData object. |
copy | If true always create a copy of the data. |
vtkSmartPointer< vtkPolyData > open3d::t::geometry::vtkutils::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 = false |
||
) |
Creates a vtkPolyData object from a point cloud or triangle mesh. The returned vtkPolyData object may directly use the memory of the tensors stored inside the Geometry object. Therefore, the Geometry object must be kept alive until the returned vtkPolyData object is deleted.
geometry | Open3D geometry object, e.g., a TriangleMesh. |
copy | If true always create a copy of the data. |
point_attr_include | A set of keys to select which point/vertex attributes should be added. Note that the primary key may be included and will silently be ignored. |
face_attr_include | A set of keys to select which face attributes should be added. Note that the primary key may be included and will silently be ignored. |
point_attr_exclude | A set of keys for which point/vertex attributes will not be added to the vtkPolyData. The exclusion set has precedence over the included keys. |
face_attr_exclude | A set of keys for which face attributes will not be added to the vtkPolyData. The exclusion set has precedence over the included keys. |
int open3d::t::geometry::vtkutils::DtypeToVtkType | ( | const core::Dtype & | dtype | ) |
Returns the corresponding vtk data type for core::Dtype Logs an error if no conversion exists.
LineSet open3d::t::geometry::vtkutils::ExtrudeLinearLineSet | ( | const PointCloud & | pointcloud, |
const core::Tensor & | vector, | ||
double | scale, | ||
bool | capping | ||
) |
Sweeps the geometry along a direction vector.
pointcloud | A point cloud. |
vector | The direction vector. |
scale | Scalar factor which essentially scales the direction vector. |
capping | If true adds caps to the mesh. |
TriangleMesh open3d::t::geometry::vtkutils::ExtrudeLinearTriangleMesh | ( | const Geometry & | geometry, |
const core::Tensor & | vector, | ||
double | scale, | ||
bool | capping | ||
) |
Sweeps the geometry along a direction vector.
geometry | Open3D geometry object, e.g., a TriangleMesh. |
vector | The direction vector. |
scale | Scalar factor which essentially scales the direction vector. |
capping | If true adds caps to the mesh. |
LineSet open3d::t::geometry::vtkutils::ExtrudeRotationLineSet | ( | const PointCloud & | pointcloud, |
double | angle, | ||
const core::Tensor & | axis, | ||
int | resolution = 16 , |
||
double | translation = 0.0 , |
||
bool | capping = true |
||
) |
Sweeps the geometry rotationally about an axis.
pointcloud | A point cloud. |
angle | The rotation angle in degree. |
axis | The rotation axis. |
resolution | The resolution defines the number of intermediate sweeps about the rotation axis. |
translation | The translation along the rotation axis. |
capping | If true adds caps to the mesh. |
TriangleMesh open3d::t::geometry::vtkutils::ExtrudeRotationTriangleMesh | ( | const Geometry & | geometry, |
double | angle, | ||
const core::Tensor & | axis, | ||
int | resolution = 16 , |
||
double | translation = 0.0 , |
||
bool | capping = true |
||
) |
Sweeps the geometry rotationally about an axis.
geometry | Open3D geometry object, e.g., a TriangleMesh. |
angle | The rotation angle in degree. |
axis | The rotation axis. |
resolution | The resolution defines the number of intermediate sweeps about the rotation axis. |
translation | The translation along the rotation axis. |
capping | If true adds caps to the mesh. |