1 // This file is part of libigl, a simple c++ geometry processing library.
2 //
3 // Copyright (C) 2017 Sebastian Koch <s.koch@tu-berlin.de> and Daniele Panozzo <daniele.panozzo@gmail.com>
4 //
5 // This Source Code Form is subject to the terms of the Mozilla Public License
6 // v. 2.0. If a copy of the MPL was not distributed with this file, You can
7 // obtain one at http://mozilla.org/MPL/2.0/.
8 py::enum_<igl::PerVertexNormalsWeightingType>(m, "PerVertexNormalsWeightingType")
9 .value("PER_VERTEX_NORMALS_WEIGHTING_TYPE_UNIFORM", igl::PER_VERTEX_NORMALS_WEIGHTING_TYPE_UNIFORM)
10 .value("PER_VERTEX_NORMALS_WEIGHTING_TYPE_AREA", igl::PER_VERTEX_NORMALS_WEIGHTING_TYPE_AREA)
11 .value("PER_VERTEX_NORMALS_WEIGHTING_TYPE_ANGLE", igl::PER_VERTEX_NORMALS_WEIGHTING_TYPE_ANGLE)
12 .value("PER_VERTEX_NORMALS_WEIGHTING_TYPE_DEFAULT", igl::PER_VERTEX_NORMALS_WEIGHTING_TYPE_DEFAULT)
13 .value("NUM_PER_VERTEX_NORMALS_WEIGHTING_TYPE", igl::NUM_PER_VERTEX_NORMALS_WEIGHTING_TYPE)
14 .export_values();
15
16 m.def("per_vertex_normals", []
17 (
18 const Eigen::MatrixXd& V,
19 const Eigen::MatrixXi& F,
20 const igl::PerVertexNormalsWeightingType weighting,
21 Eigen::MatrixXd& N
22 )
__anon6d20f57b0102( const Eigen::MatrixXd& V, const Eigen::MatrixXi& F, const igl::PerVertexNormalsWeightingType weighting, Eigen::MatrixXd& N ) 23 {
24 return igl::per_vertex_normals(V,F,weighting,N);
25 }, __doc_igl_per_vertex_normals,
26 py::arg("V"), py::arg("F"), py::arg("weighting"), py::arg("N"));
27
28 m.def("per_vertex_normals", []
29 (
30 const Eigen::MatrixXd& V,
31 const Eigen::MatrixXi& F,
32 Eigen::MatrixXd& N
33 )
__anon6d20f57b0202( const Eigen::MatrixXd& V, const Eigen::MatrixXi& F, Eigen::MatrixXd& N ) 34 {
35 return igl::per_vertex_normals(V,F,N);
36 }, __doc_igl_per_vertex_normals,
37 py::arg("V"), py::arg("F"), py::arg("N"));
38
39 m.def("per_vertex_normals", []
40 (
41 const Eigen::MatrixXd& V,
42 const Eigen::MatrixXi& F,
43 const igl::PerVertexNormalsWeightingType weighting,
44 const Eigen::MatrixXd& FN,
45 Eigen::MatrixXd& N
46 )
__anon6d20f57b0302( const Eigen::MatrixXd& V, const Eigen::MatrixXi& F, const igl::PerVertexNormalsWeightingType weighting, const Eigen::MatrixXd& FN, Eigen::MatrixXd& N ) 47 {
48 return igl::per_vertex_normals(V,F,weighting,FN,N);
49 }, __doc_igl_per_vertex_normals,
50 py::arg("V"), py::arg("F"), py::arg("weighting"), py::arg("FN"), py::arg("N"));
51
52 m.def("per_vertex_normals", []
53 (
54 const Eigen::MatrixXd& V,
55 const Eigen::MatrixXi& F,
56 const Eigen::MatrixXd& FN,
57 Eigen::MatrixXd& N
58 )
__anon6d20f57b0402( const Eigen::MatrixXd& V, const Eigen::MatrixXi& F, const Eigen::MatrixXd& FN, Eigen::MatrixXd& N ) 59 {
60 return igl::per_vertex_normals(V,F,FN,N);
61 }, __doc_igl_per_vertex_normals,
62 py::arg("V"), py::arg("F"), py::arg("FN"), py::arg("N"));
63