Open3D (C++ API)  0.17.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 #ifdef BUILD_CUDA_MODULE
29 void NormalizeNormalsCUDA(core::Tensor& normals);
30 
31 void ComputeTriangleNormalsCUDA(const core::Tensor& vertices,
32  const core::Tensor& triangles,
33  core::Tensor& normals);
34 
35 void ComputeVertexNormalsCUDA(const core::Tensor& triangles,
36  const core::Tensor& triangle_normals,
37  core::Tensor& vertex_normals);
38 #endif
39 
40 } // namespace trianglemesh
41 } // namespace kernel
42 } // namespace geometry
43 } // namespace t
44 } // namespace open3d
Definition: Tensor.h:32
void NormalizeNormalsCPU(core::Tensor &normals)
Definition: TriangleMeshImpl.h:33
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