Open3D (C++ API)  0.18.0
TriangleMesh.h
Go to the documentation of this file.
1 // ----------------------------------------------------------------------------
2 // - Open3D: www.open3d.org -
3 // ----------------------------------------------------------------------------
4 // Copyright (c) 2018-2023 www.open3d.org
5 // SPDX-License-Identifier: MIT
6 // ----------------------------------------------------------------------------
7 
8 #pragma once
9 
10 #include "open3d/core/Tensor.h"
11 
12 namespace open3d {
13 namespace t {
14 namespace geometry {
15 namespace kernel {
16 namespace trianglemesh {
17 
18 void NormalizeNormalsCPU(core::Tensor& normals);
19 
20 void ComputeTriangleNormalsCPU(const core::Tensor& vertices,
21  const core::Tensor& triangles,
22  core::Tensor& normals);
23 
24 void ComputeVertexNormalsCPU(const core::Tensor& triangles,
25  const core::Tensor& triangle_normals,
26  core::Tensor& vertex_normals);
27 
28 void ComputeTriangleAreasCPU(const core::Tensor& vertices,
29  const core::Tensor& triangles,
30  core::Tensor& triangle_areas);
31 
32 #ifdef BUILD_CUDA_MODULE
33 void NormalizeNormalsCUDA(core::Tensor& normals);
34 
35 void ComputeTriangleNormalsCUDA(const core::Tensor& vertices,
36  const core::Tensor& triangles,
37  core::Tensor& normals);
38 
39 void ComputeVertexNormalsCUDA(const core::Tensor& triangles,
40  const core::Tensor& triangle_normals,
41  core::Tensor& vertex_normals);
42 
43 void ComputeTriangleAreasCUDA(const core::Tensor& vertices,
44  const core::Tensor& triangles,
45  core::Tensor& triangle_areas);
46 #endif
47 
48 } // namespace trianglemesh
49 } // namespace kernel
50 } // namespace geometry
51 } // namespace t
52 } // namespace open3d
Definition: Tensor.h:32
void NormalizeNormalsCPU(core::Tensor &normals)
Definition: TriangleMeshImpl.h:33
void ComputeTriangleAreasCPU(const core::Tensor &vertices, const core::Tensor &triangles, core::Tensor &triangle_areas)
Definition: TriangleMeshImpl.h:115
void ComputeTriangleNormalsCPU(const core::Tensor &vertices, const core::Tensor &triangles, core::Tensor &normals)
Definition: TriangleMeshImpl.h:70
void ComputeVertexNormalsCPU(const core::Tensor &triangles, const core::Tensor &triangle_normals, core::Tensor &vertex_normals)
Definition: TriangleMeshCPU.cpp:16
Definition: PinholeCameraIntrinsic.cpp:16