| 11 | using namespace PyMesh; |
| 12 | |
| 13 | void init_Boolean(py::module& m) { |
| 14 | py::class_<BooleanEngine, std::shared_ptr<BooleanEngine> >(m, "BooleanEngine") |
| 15 | .def_static("create", &BooleanEngine::create) |
| 16 | .def("set_mesh_1", &BooleanEngine::set_mesh_1) |
| 17 | .def("set_mesh_2", &BooleanEngine::set_mesh_2) |
| 18 | .def("get_vertices", &BooleanEngine::get_vertices) |
| 19 | .def("get_faces", &BooleanEngine::get_faces) |
| 20 | .def("clean_up", &BooleanEngine::clean_up) |
| 21 | .def("compute_union", &BooleanEngine::compute_union) |
| 22 | .def("compute_intersection", &BooleanEngine::compute_intersection) |
| 23 | .def("compute_difference", &BooleanEngine::compute_difference) |
| 24 | .def("compute_symmetric_difference", |
| 25 | &BooleanEngine::compute_symmetric_difference) |
| 26 | .def("get_face_sources", &BooleanEngine::get_face_sources) |
| 27 | .def("serialize_xml", &BooleanEngine::serialize_xml); |
| 28 | |
| 29 | py::class_<CSGTree, std::shared_ptr<CSGTree> >(m, "CSGTree") |
| 30 | .def_static("create", &CSGTree::create) |
| 31 | .def_static("create_leaf", &CSGTree::create_leaf) |
| 32 | .def("set_operand_1", &CSGTree::set_operand_1) |
| 33 | .def("set_operand_2", &CSGTree::set_operand_2) |
| 34 | .def("compute_union", &CSGTree::compute_union) |
| 35 | .def("compute_intersection", &CSGTree::compute_intersection) |
| 36 | .def("compute_difference", &CSGTree::compute_difference) |
| 37 | .def("compute_symmetric_difference", |
| 38 | &CSGTree::compute_symmetric_difference) |
| 39 | .def("get_face_sources", &CSGTree::get_face_sources) |
| 40 | .def("get_mesh_sources", &CSGTree::get_mesh_sources) |
| 41 | .def("get_vertices", &CSGTree::get_vertices) |
| 42 | .def("get_faces", &CSGTree::get_faces) |
| 43 | .def("get_num_vertices", &CSGTree::get_num_vertices) |
| 44 | .def("get_num_faces", &CSGTree::get_num_faces); |
| 45 | } |