python_shared.cpp 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182
  1. #include "python_shared.h"
  2. #include <sstream>
  3. #include <string>
  4. #include <fstream>
  5. extern void python_export_vector(py::module &);
  6. extern void python_export_igl(py::module &);
  7. #ifdef PY_VIEWER
  8. extern void python_export_igl_viewer(py::module &);
  9. #endif
  10. #ifdef PY_COMISO
  11. extern void python_export_igl_comiso(py::module &);
  12. #endif
  13. #ifdef PY_TETGEN
  14. extern void python_export_igl_tetgen(py::module &);
  15. #endif
  16. #ifdef PY_EMBREE
  17. extern void python_export_igl_embree(py::module &);
  18. #endif
  19. #ifdef PY_TRIANGLE
  20. extern void python_export_igl_triangle(py::module &);
  21. #endif
  22. #ifdef PY_CGAL
  23. extern void python_export_igl_cgal(py::module &);
  24. #endif
  25. #ifdef PY_PNG
  26. extern void python_export_igl_png(py::module &);
  27. #endif
  28. #ifdef PY_COPYLEFT
  29. extern void python_export_igl_copyleft(py::module &);
  30. #endif
  31. PYBIND11_PLUGIN(pyigl) {
  32. py::module m("pyigl", R"pyigldoc(
  33. Python wrappers for libigl
  34. --------------------------
  35. .. currentmodule:: pyigl
  36. .. autosummary::
  37. :toctree: _generate
  38. AABB
  39. ARAPEnergyType
  40. MeshBooleanType
  41. SolverStatus
  42. active_set
  43. arap
  44. avg_edge_length
  45. barycenter
  46. barycentric_coordinates
  47. barycentric_to_global
  48. boundary_facets
  49. boundary_loop
  50. cat
  51. collapse_edge
  52. colon
  53. comb_cross_field
  54. comb_frame_field
  55. compute_frame_field_bisectors
  56. copyleft_cgal_mesh_boolean
  57. copyleft_cgal_remesh_self_intersections
  58. copyleft_cgal_RemeshSelfIntersectionsParam
  59. copyleft_comiso_miq
  60. copyleft_comiso_nrosy
  61. copyleft_marching_cubes
  62. copyleft_swept_volume
  63. copyleft_tetgen_tetrahedralize
  64. cotmatrix
  65. covariance_scatter_matrix
  66. cross_field_missmatch
  67. cut_mesh_from_singularities
  68. doublearea
  69. edge_lengths
  70. edge_topology
  71. eigs
  72. embree_ambient_occlusion
  73. embree_reorient_facets_raycast
  74. find_cross_field_singularities
  75. fit_rotations
  76. floor
  77. gaussian_curvature
  78. get_seconds
  79. grad
  80. harmonic
  81. hsv_to_rgb
  82. internal_angles
  83. invert_diag
  84. is_irregular_vertex
  85. jet
  86. local_basis
  87. lscm
  88. map_vertices_to_circle
  89. massmatrix
  90. min_quad_with_fixed
  91. n_polyvector
  92. parula
  93. per_corner_normals
  94. per_edge_normals
  95. per_face_normals
  96. per_vertex_normals
  97. planarize_quad_mesh
  98. png_readPNG
  99. png_writePNG
  100. point_mesh_squared_distance
  101. polar_svd
  102. principal_curvature
  103. quad_planarity
  104. randperm
  105. readDMAT
  106. readMESH
  107. readOBJ
  108. readOFF
  109. read_triangle_mesh
  110. remove_duplicate_vertices
  111. rotate_vectors
  112. setdiff
  113. signed_distance
  114. slice
  115. slice_into
  116. slice_mask
  117. slice_tets
  118. sortrows
  119. streamlines_init
  120. streamlines_next
  121. triangle_triangle_adjacency
  122. triangle_triangulate
  123. unique
  124. unproject_onto_mesh
  125. upsample
  126. winding_number
  127. writeMESH
  128. writeOBJ
  129. )pyigldoc");
  130. python_export_vector(m);
  131. python_export_igl(m);
  132. #ifdef PY_VIEWER
  133. python_export_igl_viewer(m);
  134. #endif
  135. #ifdef PY_COMISO
  136. python_export_igl_comiso(m);
  137. #endif
  138. #ifdef PY_TETGEN
  139. python_export_igl_tetgen(m);
  140. #endif
  141. #ifdef PY_EMBREE
  142. python_export_igl_embree(m);
  143. #endif
  144. #ifdef PY_TRIANGLE
  145. python_export_igl_triangle(m);
  146. #endif
  147. #ifdef PY_CGAL
  148. python_export_igl_cgal(m);
  149. #endif
  150. #ifdef PY_PNG
  151. python_export_igl_png(m);
  152. #endif
  153. #ifdef PY_COPYLEFT
  154. python_export_igl_copyleft(m);
  155. #endif
  156. return m.ptr();
  157. }