python_shared.cpp 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201
  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_COPYLEFT
  26. extern void python_export_igl_copyleft(py::module &);
  27. #endif
  28. #ifdef PY_PNG
  29. extern void python_export_igl_png(py::module &);
  30. #endif
  31. #ifdef PY_BBW
  32. extern void python_export_igl_bbw(py::module &);
  33. #endif
  34. PYBIND11_PLUGIN(pyigl) {
  35. py::module m("pyigl", R"pyigldoc(
  36. Python wrappers for libigl
  37. --------------------------
  38. .. currentmodule:: pyigl
  39. .. autosummary::
  40. :toctree: _generate
  41. AABB
  42. ARAPEnergyType
  43. MeshBooleanType
  44. SolverStatus
  45. active_set
  46. arap
  47. avg_edge_length
  48. barycenter
  49. barycentric_coordinates
  50. barycentric_to_global
  51. bbw_bbw
  52. boundary_conditions
  53. boundary_facets
  54. boundary_loop
  55. cat
  56. collapse_edge
  57. colon
  58. column_to_quats
  59. comb_cross_field
  60. comb_frame_field
  61. compute_frame_field_bisectors
  62. copyleft_cgal_RemeshSelfIntersectionsParam
  63. copyleft_cgal_mesh_boolean
  64. copyleft_cgal_remesh_self_intersections
  65. copyleft_comiso_miq
  66. copyleft_comiso_nrosy
  67. copyleft_marching_cubes
  68. copyleft_swept_volume
  69. copyleft_tetgen_tetrahedralize
  70. cotmatrix
  71. covariance_scatter_matrix
  72. cross_field_missmatch
  73. cut_mesh_from_singularities
  74. deform_skeleton
  75. directed_edge_orientations
  76. directed_edge_parents
  77. doublearea
  78. dqs
  79. edge_lengths
  80. edge_topology
  81. eigs
  82. embree_ambient_occlusion
  83. embree_reorient_facets_raycast
  84. find_cross_field_singularities
  85. fit_rotations
  86. floor
  87. forward_kinematics
  88. gaussian_curvature
  89. get_seconds
  90. grad
  91. harmonic
  92. hsv_to_rgb
  93. internal_angles
  94. invert_diag
  95. is_irregular_vertex
  96. jet
  97. lbs_matrix
  98. local_basis
  99. lscm
  100. map_vertices_to_circle
  101. massmatrix
  102. min_quad_with_fixed
  103. n_polyvector
  104. normalize_row_lengths
  105. normalize_row_sums
  106. parula
  107. per_corner_normals
  108. per_edge_normals
  109. per_face_normals
  110. per_vertex_normals
  111. planarize_quad_mesh
  112. png_readPNG
  113. png_writePNG
  114. point_mesh_squared_distance
  115. polar_svd
  116. principal_curvature
  117. quad_planarity
  118. randperm
  119. readDMAT
  120. readMESH
  121. readOBJ
  122. readOFF
  123. readTGF
  124. read_triangle_mesh
  125. remove_duplicate_vertices
  126. rotate_vectors
  127. setdiff
  128. signed_distance
  129. slice
  130. slice_into
  131. slice_mask
  132. slice_tets
  133. sortrows
  134. streamlines
  135. triangle_triangle_adjacency
  136. triangle_triangulate
  137. unique
  138. unproject_onto_mesh
  139. upsample
  140. winding_number
  141. writeMESH
  142. writeOBJ
  143. )pyigldoc");
  144. python_export_vector(m);
  145. python_export_igl(m);
  146. #ifdef PY_VIEWER
  147. python_export_igl_viewer(m);
  148. #endif
  149. #ifdef PY_COMISO
  150. python_export_igl_comiso(m);
  151. #endif
  152. #ifdef PY_TETGEN
  153. python_export_igl_tetgen(m);
  154. #endif
  155. #ifdef PY_EMBREE
  156. python_export_igl_embree(m);
  157. #endif
  158. #ifdef PY_TRIANGLE
  159. python_export_igl_triangle(m);
  160. #endif
  161. #ifdef PY_CGAL
  162. python_export_igl_cgal(m);
  163. #endif
  164. #ifdef PY_COPYLEFT
  165. python_export_igl_copyleft(m);
  166. #endif
  167. #ifdef PY_PNG
  168. python_export_igl_png(m);
  169. #endif
  170. #ifdef PY_BBW
  171. python_export_igl_bbw(m);
  172. #endif
  173. return m.ptr();
  174. }