python_shared.cpp 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164
  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. PYBIND11_PLUGIN(pyigl) {
  29. py::module m("pyigl", R"pyigldoc(
  30. Python wrappers for libigl
  31. --------------------------
  32. .. currentmodule:: pyigl
  33. .. autosummary::
  34. :toctree: _generate
  35. AABB
  36. ARAPEnergyType
  37. MeshBooleanType
  38. SolverStatus
  39. active_set
  40. arap
  41. avg_edge_length
  42. barycenter
  43. barycentric_coordinates
  44. boundary_facets
  45. boundary_loop
  46. cat
  47. collapse_edge
  48. colon
  49. comb_cross_field
  50. comb_frame_field
  51. compute_frame_field_bisectors
  52. copyleft_cgal_mesh_boolean
  53. copyleft_comiso_miq
  54. copyleft_comiso_nrosy
  55. copyleft_marching_cubes
  56. copyleft_tetgen_tetrahedralize
  57. cotmatrix
  58. covariance_scatter_matrix
  59. cross_field_missmatch
  60. cut_mesh_from_singularities
  61. doublearea
  62. edge_lengths
  63. eigs
  64. embree_ambient_occlusion
  65. embree_reorient_facets_raycast
  66. find_cross_field_singularities
  67. fit_rotations
  68. floor
  69. gaussian_curvature
  70. grad
  71. harmonic
  72. hsv_to_rgb
  73. internal_angles
  74. invert_diag
  75. is_irregular_vertex
  76. jet
  77. local_basis
  78. lscm
  79. map_vertices_to_circle
  80. massmatrix
  81. min_quad_with_fixed
  82. n_polyvector
  83. parula
  84. per_corner_normals
  85. per_edge_normals
  86. per_face_normals
  87. per_vertex_normals
  88. planarize_quad_mesh
  89. png_readPNG
  90. png_writePNG
  91. point_mesh_squared_distance
  92. polar_svd
  93. principal_curvature
  94. quad_planarity
  95. randperm
  96. readDMAT
  97. readMESH
  98. readOBJ
  99. readOFF
  100. read_triangle_mesh
  101. rotate_vectors
  102. setdiff
  103. signed_distance
  104. slice
  105. slice_into
  106. slice_mask
  107. slice_tets
  108. sortrows
  109. triangle_triangulate
  110. unique
  111. unproject_onto_mesh
  112. upsample
  113. winding_number
  114. writeMESH
  115. writeOBJ
  116. )pyigldoc");
  117. python_export_vector(m);
  118. python_export_igl(m);
  119. #ifdef PY_VIEWER
  120. python_export_igl_viewer(m);
  121. #endif
  122. #ifdef PY_COMISO
  123. python_export_igl_comiso(m);
  124. #endif
  125. #ifdef PY_TETGEN
  126. python_export_igl_tetgen(m);
  127. #endif
  128. #ifdef PY_EMBREE
  129. python_export_igl_embree(m);
  130. #endif
  131. #ifdef PY_TRIANGLE
  132. python_export_igl_triangle(m);
  133. #endif
  134. #ifdef PY_CGAL
  135. python_export_igl_cgal(m);
  136. #endif
  137. #ifdef PY_PNG
  138. python_export_igl_png(m);
  139. #endif
  140. return m.ptr();
  141. }