Browse Source

python: expose the new flags in meshtools.compile().

pull/2/head
Vladimír Vondruš 7 years ago
parent
commit
d5036b4c97
  1. 19
      src/python/magnum/meshtools.cpp

19
src/python/magnum/meshtools.cpp

@ -29,6 +29,7 @@
#include <Magnum/Trade/MeshData2D.h> #include <Magnum/Trade/MeshData2D.h>
#include <Magnum/Trade/MeshData3D.h> #include <Magnum/Trade/MeshData3D.h>
#include "corrade/EnumOperators.h"
#include "magnum/bootstrap.h" #include "magnum/bootstrap.h"
namespace magnum { namespace magnum {
@ -43,13 +44,19 @@ void meshtools(py::module& m) {
py::module::import("magnum.trade"); py::module::import("magnum.trade");
#endif #endif
py::enum_<MeshTools::CompileFlag> compileFlag{m, "CompileFlag", "Mesh compilation flags"};
compileFlag
.value("NONE", MeshTools::CompileFlag{})
.value("GENERATE_FLAT_NORMALS", MeshTools::CompileFlag::GenerateFlatNormals)
.value("GENERATE_SMOOTH_NORMALS", MeshTools::CompileFlag::GenerateSmoothNormals);
corrade::enumOperators(compileFlag);
m m
.def("compile", [](const Trade::MeshData2D& data) { .def("compile", static_cast<GL::Mesh(*)(const Trade::MeshData2D& data)>(&MeshTools::compile),
return MeshTools::compile(data); "Compile 2D mesh data", py::arg("mesh_data"))
}, "Compile 2D mesh data") .def("compile", [](const Trade::MeshData3D& meshData, MeshTools::CompileFlag flags) {
.def("compile", [](const Trade::MeshData3D& data) { return MeshTools::compile(meshData, flags);
return MeshTools::compile(data); }, "Compile 3D mesh data", py::arg("mesh_data"), py::arg("flags") = MeshTools::CompileFlag{});
}, "Compile 3D mesh data");
} }
} }

Loading…
Cancel
Save