Switched to automatic (and sorted) generation of py_igl.cpp and py_doc.*
Former-commit-id: 76abdffac1
This commit is contained in:
+753
-735
File diff suppressed because it is too large
Load Diff
+66
-65
@@ -1,77 +1,78 @@
|
||||
extern const char *__doc_igl_principal_curvature;
|
||||
extern const char *__doc_igl_local_basis;
|
||||
extern const char *__doc_igl_signed_distance;
|
||||
extern const char *__doc_igl_signed_distance_pseudonormal;
|
||||
extern const char *__doc_igl_signed_distance_winding_number;
|
||||
extern const char *__doc_igl_cotmatrix;
|
||||
extern const char *__doc_igl_floor;
|
||||
extern const char *__doc_igl_slice;
|
||||
extern const char *__doc_igl_per_face_normals;
|
||||
extern const char *__doc_igl_per_face_normals_stable;
|
||||
extern const char *__doc_igl_quad_planarity;
|
||||
extern const char *__doc_igl_readOFF;
|
||||
extern const char *__doc_igl_per_vertex_normals;
|
||||
extern const char *__doc_igl_sortrows;
|
||||
extern const char *__doc_igl_barycenter;
|
||||
extern const char *__doc_igl_jet;
|
||||
extern const char *__doc_igl_cat;
|
||||
extern const char *__doc_igl_eigs;
|
||||
extern const char *__doc_igl_per_corner_normals;
|
||||
extern const char *__doc_igl_massmatrix;
|
||||
extern const char *__doc_igl_unproject_onto_mesh;
|
||||
extern const char *__doc_igl_colon;
|
||||
extern const char *__doc_igl_fit_rotations;
|
||||
extern const char *__doc_igl_fit_rotations_planar;
|
||||
extern const char *__doc_igl_fit_rotations_SSE;
|
||||
extern const char *__doc_igl_rotate_vectors;
|
||||
extern const char *__doc_igl_read_triangle_mesh;
|
||||
extern const char *__doc_igl_gaussian_curvature;
|
||||
extern const char *__doc_igl_planarize_quad_mesh;
|
||||
extern const char *__doc_igl_avg_edge_length;
|
||||
extern const char *__doc_igl_barycentric_coordinates;
|
||||
extern const char *__doc_igl_lscm;
|
||||
extern const char *__doc_igl_find_cross_field_singularities;
|
||||
extern const char *__doc_igl_upsample;
|
||||
extern const char *__doc_igl_slice_mask;
|
||||
extern const char *__doc_igl_point_mesh_squared_distance;
|
||||
extern const char *__doc_igl_parula;
|
||||
extern const char *__doc_igl_setdiff;
|
||||
extern const char *__doc_igl_comb_frame_field;
|
||||
extern const char *__doc_igl_map_vertices_to_circle;
|
||||
extern const char *__doc_igl_writeOBJ;
|
||||
extern const char *__doc_igl_active_set;
|
||||
extern const char *__doc_igl_per_edge_normals;
|
||||
extern const char *__doc_igl_covariance_scatter_matrix;
|
||||
extern const char *__doc_igl_arap_precomputation;
|
||||
extern const char *__doc_igl_arap_solve;
|
||||
extern const char *__doc_igl_avg_edge_length;
|
||||
extern const char *__doc_igl_barycenter;
|
||||
extern const char *__doc_igl_barycentric_coordinates;
|
||||
extern const char *__doc_igl_boundary_facets;
|
||||
extern const char *__doc_igl_boundary_loop;
|
||||
extern const char *__doc_igl_cat;
|
||||
extern const char *__doc_igl_colon;
|
||||
extern const char *__doc_igl_comb_cross_field;
|
||||
extern const char *__doc_igl_comb_frame_field;
|
||||
extern const char *__doc_igl_compute_frame_field_bisectors;
|
||||
extern const char *__doc_igl_edge_lengths;
|
||||
extern const char *__doc_igl_readOBJ;
|
||||
extern const char *__doc_igl_copyleft_cgal_mesh_boolean;
|
||||
extern const char *__doc_igl_copyleft_comiso_miq;
|
||||
extern const char *__doc_igl_copyleft_comiso_nrosy;
|
||||
extern const char *__doc_igl_copyleft_tetgen_tetrahedralize;
|
||||
extern const char *__doc_igl_cotmatrix;
|
||||
extern const char *__doc_igl_covariance_scatter_matrix;
|
||||
extern const char *__doc_igl_cross_field_missmatch;
|
||||
extern const char *__doc_igl_cut_mesh_from_singularities;
|
||||
extern const char *__doc_igl_readDMAT;
|
||||
extern const char *__doc_igl_doublearea;
|
||||
extern const char *__doc_igl_doublearea_single;
|
||||
extern const char *__doc_igl_doublearea_quad;
|
||||
extern const char *__doc_igl_edge_lengths;
|
||||
extern const char *__doc_igl_eigs;
|
||||
extern const char *__doc_igl_embree_ambient_occlusion;
|
||||
extern const char *__doc_igl_find_cross_field_singularities;
|
||||
extern const char *__doc_igl_fit_rotations;
|
||||
extern const char *__doc_igl_fit_rotations_planar;
|
||||
extern const char *__doc_igl_fit_rotations_SSE;
|
||||
extern const char *__doc_igl_floor;
|
||||
extern const char *__doc_igl_gaussian_curvature;
|
||||
extern const char *__doc_igl_grad;
|
||||
extern const char *__doc_igl_harmonic;
|
||||
extern const char *__doc_igl_invert_diag;
|
||||
extern const char *__doc_igl_jet;
|
||||
extern const char *__doc_igl_local_basis;
|
||||
extern const char *__doc_igl_lscm;
|
||||
extern const char *__doc_igl_map_vertices_to_circle;
|
||||
extern const char *__doc_igl_massmatrix;
|
||||
extern const char *__doc_igl_min_quad_with_fixed_precompute;
|
||||
extern const char *__doc_igl_min_quad_with_fixed_solve;
|
||||
extern const char *__doc_igl_min_quad_with_fixed;
|
||||
extern const char *__doc_igl_writeMESH;
|
||||
extern const char *__doc_igl_n_polyvector;
|
||||
extern const char *__doc_igl_parula;
|
||||
extern const char *__doc_igl_per_corner_normals;
|
||||
extern const char *__doc_igl_per_edge_normals;
|
||||
extern const char *__doc_igl_per_face_normals;
|
||||
extern const char *__doc_igl_per_face_normals_stable;
|
||||
extern const char *__doc_igl_per_vertex_normals;
|
||||
extern const char *__doc_igl_planarize_quad_mesh;
|
||||
extern const char *__doc_igl_point_mesh_squared_distance;
|
||||
extern const char *__doc_igl_polar_svd;
|
||||
extern const char *__doc_igl_principal_curvature;
|
||||
extern const char *__doc_igl_quad_planarity;
|
||||
extern const char *__doc_igl_readDMAT;
|
||||
extern const char *__doc_igl_readMESH;
|
||||
extern const char *__doc_igl_readOBJ;
|
||||
extern const char *__doc_igl_readOFF;
|
||||
extern const char *__doc_igl_read_triangle_mesh;
|
||||
extern const char *__doc_igl_rotate_vectors;
|
||||
extern const char *__doc_igl_setdiff;
|
||||
extern const char *__doc_igl_signed_distance;
|
||||
extern const char *__doc_igl_signed_distance_pseudonormal;
|
||||
extern const char *__doc_igl_signed_distance_winding_number;
|
||||
extern const char *__doc_igl_slice;
|
||||
extern const char *__doc_igl_slice_into;
|
||||
extern const char *__doc_igl_slice_mask;
|
||||
extern const char *__doc_igl_slice_tets;
|
||||
extern const char *__doc_igl_sortrows;
|
||||
extern const char *__doc_igl_triangle_triangulate;
|
||||
extern const char *__doc_igl_unique;
|
||||
extern const char *__doc_igl_unique_rows;
|
||||
extern const char *__doc_igl_arap_precomputation;
|
||||
extern const char *__doc_igl_arap_solve;
|
||||
extern const char *__doc_igl_cross_field_missmatch;
|
||||
extern const char *__doc_igl_grad;
|
||||
extern const char *__doc_igl_slice_into;
|
||||
extern const char *__doc_igl_slice_tets;
|
||||
extern const char *__doc_igl_n_polyvector;
|
||||
extern const char *__doc_igl_harmonic;
|
||||
extern const char *__doc_igl_boundary_loop;
|
||||
extern const char *__doc_igl_polar_svd;
|
||||
extern const char *__doc_igl_comb_cross_field;
|
||||
extern const char *__doc_igl_invert_diag;
|
||||
extern const char *__doc_igl_readMESH;
|
||||
extern const char *__doc_igl_triangle_triangulate;
|
||||
extern const char *__doc_igl_copyleft_tetgen_tetrahedralize;
|
||||
extern const char *__doc_igl_copyleft_comiso_miq;
|
||||
extern const char *__doc_igl_copyleft_comiso_nrosy;
|
||||
extern const char *__doc_igl_embree_ambient_occlusion;
|
||||
extern const char *__doc_igl_unproject_onto_mesh;
|
||||
extern const char *__doc_igl_upsample;
|
||||
extern const char *__doc_igl_writeMESH;
|
||||
extern const char *__doc_igl_writeOBJ;
|
||||
|
||||
+116
-118
@@ -2,141 +2,139 @@
|
||||
|
||||
#include "python_shared.h"
|
||||
|
||||
#include <igl/readOFF.h>
|
||||
#include <igl/writeOBJ.h>
|
||||
#include <igl/per_face_normals.h>
|
||||
#include <igl/per_corner_normals.h>
|
||||
#include <igl/per_vertex_normals.h>
|
||||
#include <igl/gaussian_curvature.h>
|
||||
#include <igl/jet.h>
|
||||
#include <igl/read_triangle_mesh.h>
|
||||
#include <igl/cotmatrix.h>
|
||||
#include <igl/massmatrix.h>
|
||||
#include <igl/invert_diag.h>
|
||||
#include <igl/principal_curvature.h>
|
||||
#include <igl/parula.h>
|
||||
#include <igl/readDMAT.h>
|
||||
#include <igl/grad.h>
|
||||
#include <igl/avg_edge_length.h>
|
||||
#include <igl/barycenter.h>
|
||||
#include <igl/doublearea.h>
|
||||
#include <igl/floor.h>
|
||||
#include <igl/slice.h>
|
||||
#include <igl/slice_into.h>
|
||||
#include <igl/sortrows.h>
|
||||
#include <igl/colon.h>
|
||||
#include <igl/boundary_facets.h>
|
||||
#include <igl/unique.h>
|
||||
#include <igl/setdiff.h>
|
||||
#include <igl/min_quad_with_fixed.h>
|
||||
#include <igl/AABB.h>
|
||||
#include <igl/ARAPEnergyType.h>
|
||||
#include <igl/MeshBooleanType.h>
|
||||
#include <igl/SolverStatus.h>
|
||||
#include <igl/active_set.h>
|
||||
#include <igl/eigs.h>
|
||||
#include <igl/readOBJ.h>
|
||||
#include <igl/harmonic.h>
|
||||
#include <igl/arap.h>
|
||||
#include <igl/ARAPEnergyType.h>
|
||||
#include <igl/boundary_loop.h>
|
||||
#include <igl/map_vertices_to_circle.h>
|
||||
#include <igl/lscm.h>
|
||||
#include <igl/local_basis.h>
|
||||
#include <igl/rotate_vectors.h>
|
||||
#include <igl/compute_frame_field_bisectors.h>
|
||||
#include <igl/comb_cross_field.h>
|
||||
#include <igl/cross_field_missmatch.h>
|
||||
#include <igl/find_cross_field_singularities.h>
|
||||
#include <igl/cut_mesh_from_singularities.h>
|
||||
#include <igl/comb_frame_field.h>
|
||||
#include <igl/n_polyvector.h>
|
||||
|
||||
#include <igl/point_mesh_squared_distance.h>
|
||||
#include <igl/AABB.h>
|
||||
#include <igl/readMESH.h>
|
||||
#include <igl/writeMESH.h>
|
||||
#include <igl/slice_tets.h>
|
||||
#include <igl/edge_lengths.h>
|
||||
#include <igl/upsample.h>
|
||||
#include <igl/cat.h>
|
||||
#include <igl/per_edge_normals.h>
|
||||
#include <igl/avg_edge_length.h>
|
||||
#include <igl/barycenter.h>
|
||||
#include <igl/barycentric_coordinates.h>
|
||||
#include <igl/fit_rotations.h>
|
||||
#include <igl/polar_svd.h>
|
||||
#include <igl/boundary_facets.h>
|
||||
#include <igl/boundary_loop.h>
|
||||
#include <igl/cat.h>
|
||||
#include <igl/colon.h>
|
||||
#include <igl/comb_cross_field.h>
|
||||
#include <igl/comb_frame_field.h>
|
||||
#include <igl/compute_frame_field_bisectors.h>
|
||||
#include <igl/cotmatrix.h>
|
||||
#include <igl/covariance_scatter_matrix.h>
|
||||
#include <igl/slice_mask.h>
|
||||
#include <igl/signed_distance.h>
|
||||
#include <igl/quad_planarity.h>
|
||||
#include <igl/cross_field_missmatch.h>
|
||||
#include <igl/cut_mesh_from_singularities.h>
|
||||
#include <igl/doublearea.h>
|
||||
#include <igl/edge_lengths.h>
|
||||
#include <igl/eigs.h>
|
||||
#include <igl/find_cross_field_singularities.h>
|
||||
#include <igl/fit_rotations.h>
|
||||
#include <igl/floor.h>
|
||||
#include <igl/gaussian_curvature.h>
|
||||
#include <igl/grad.h>
|
||||
#include <igl/harmonic.h>
|
||||
#include <igl/invert_diag.h>
|
||||
#include <igl/jet.h>
|
||||
#include <igl/local_basis.h>
|
||||
#include <igl/lscm.h>
|
||||
#include <igl/map_vertices_to_circle.h>
|
||||
#include <igl/massmatrix.h>
|
||||
#include <igl/min_quad_with_fixed.h>
|
||||
#include <igl/n_polyvector.h>
|
||||
#include <igl/parula.h>
|
||||
#include <igl/per_corner_normals.h>
|
||||
#include <igl/per_edge_normals.h>
|
||||
#include <igl/per_face_normals.h>
|
||||
#include <igl/per_vertex_normals.h>
|
||||
#include <igl/planarize_quad_mesh.h>
|
||||
#include <igl/point_mesh_squared_distance.h>
|
||||
#include <igl/polar_svd.h>
|
||||
#include <igl/principal_curvature.h>
|
||||
#include <igl/quad_planarity.h>
|
||||
#include <igl/readDMAT.h>
|
||||
#include <igl/readMESH.h>
|
||||
#include <igl/readOBJ.h>
|
||||
#include <igl/readOFF.h>
|
||||
#include <igl/read_triangle_mesh.h>
|
||||
#include <igl/rotate_vectors.h>
|
||||
#include <igl/setdiff.h>
|
||||
#include <igl/signed_distance.h>
|
||||
#include <igl/slice.h>
|
||||
#include <igl/slice_into.h>
|
||||
#include <igl/slice_mask.h>
|
||||
#include <igl/slice_tets.h>
|
||||
#include <igl/sortrows.h>
|
||||
#include <igl/unique.h>
|
||||
#include <igl/unproject_onto_mesh.h>
|
||||
//#include <igl/.h>
|
||||
#include <igl/upsample.h>
|
||||
#include <igl/writeMESH.h>
|
||||
#include <igl/writeOBJ.h>
|
||||
|
||||
|
||||
void python_export_igl(py::module &m)
|
||||
{
|
||||
#include "py_igl/py_readOFF.cpp"
|
||||
#include "py_igl/py_writeOBJ.cpp"
|
||||
#include "py_igl/py_per_face_normals.cpp"
|
||||
#include "py_igl/py_per_corner_normals.cpp"
|
||||
#include "py_igl/py_per_vertex_normals.cpp"
|
||||
#include "py_igl/py_gaussian_curvature.cpp"
|
||||
#include "py_igl/py_jet.cpp"
|
||||
#include "py_igl/py_read_triangle_mesh.cpp"
|
||||
#include "py_igl/py_cotmatrix.cpp"
|
||||
#include "py_igl/py_massmatrix.cpp"
|
||||
#include "py_igl/py_invert_diag.cpp"
|
||||
#include "py_igl/py_principal_curvature.cpp"
|
||||
#include "py_igl/py_parula.cpp"
|
||||
#include "py_igl/py_readDMAT.cpp"
|
||||
#include "py_igl/py_grad.cpp"
|
||||
#include "py_igl/py_avg_edge_length.cpp"
|
||||
#include "py_igl/py_barycenter.cpp"
|
||||
#include "py_igl/py_doublearea.cpp"
|
||||
#include "py_igl/py_floor.cpp"
|
||||
#include "py_igl/py_slice.cpp"
|
||||
#include "py_igl/py_slice_into.cpp"
|
||||
#include "py_igl/py_sortrows.cpp"
|
||||
#include "py_igl/py_colon.cpp"
|
||||
#include "py_igl/py_boundary_facets.cpp"
|
||||
#include "py_igl/py_unique.cpp"
|
||||
#include "py_igl/py_setdiff.cpp"
|
||||
#include "py_igl/py_min_quad_with_fixed.cpp"
|
||||
#include "py_igl/py_AABB.cpp"
|
||||
#include "py_igl/py_ARAPEnergyType.cpp"
|
||||
#include "py_igl/py_MeshBooleanType.cpp"
|
||||
#include "py_igl/py_SolverStatus.cpp"
|
||||
#include "py_igl/py_active_set.cpp"
|
||||
#include "py_igl/py_eigs.cpp"
|
||||
#include "py_igl/py_readOBJ.cpp"
|
||||
#include "py_igl/py_harmonic.cpp"
|
||||
#include "py_igl/py_ARAPEnergyType.cpp"
|
||||
#include "py_igl/py_arap.cpp"
|
||||
#include "py_igl/py_boundary_loop.cpp"
|
||||
#include "py_igl/py_map_vertices_to_circle.cpp"
|
||||
#include "py_igl/py_lscm.cpp"
|
||||
#include "py_igl/py_local_basis.cpp"
|
||||
#include "py_igl/py_rotate_vectors.cpp"
|
||||
#include "py_igl/py_compute_frame_field_bisectors.cpp"
|
||||
#include "py_igl/py_comb_cross_field.cpp"
|
||||
#include "py_igl/py_cross_field_missmatch.cpp"
|
||||
#include "py_igl/py_find_cross_field_singularities.cpp"
|
||||
#include "py_igl/py_cut_mesh_from_singularities.cpp"
|
||||
#include "py_igl/py_comb_frame_field.cpp"
|
||||
#include "py_igl/py_n_polyvector.cpp"
|
||||
|
||||
#include "py_igl/py_point_mesh_squared_distance.cpp"
|
||||
#include "py_igl/py_AABB.cpp"
|
||||
#include "py_igl/py_readMESH.cpp"
|
||||
#include "py_igl/py_writeMESH.cpp"
|
||||
#include "py_igl/py_slice_tets.cpp"
|
||||
#include "py_igl/py_edge_lengths.cpp"
|
||||
#include "py_igl/py_upsample.cpp"
|
||||
#include "py_igl/py_cat.cpp"
|
||||
#include "py_igl/py_per_edge_normals.cpp"
|
||||
#include "py_igl/py_avg_edge_length.cpp"
|
||||
#include "py_igl/py_barycenter.cpp"
|
||||
#include "py_igl/py_barycentric_coordinates.cpp"
|
||||
#include "py_igl/py_fit_rotations.cpp"
|
||||
#include "py_igl/py_polar_svd.cpp"
|
||||
#include "py_igl/py_boundary_facets.cpp"
|
||||
#include "py_igl/py_boundary_loop.cpp"
|
||||
#include "py_igl/py_cat.cpp"
|
||||
#include "py_igl/py_colon.cpp"
|
||||
#include "py_igl/py_comb_cross_field.cpp"
|
||||
#include "py_igl/py_comb_frame_field.cpp"
|
||||
#include "py_igl/py_compute_frame_field_bisectors.cpp"
|
||||
#include "py_igl/py_cotmatrix.cpp"
|
||||
#include "py_igl/py_covariance_scatter_matrix.cpp"
|
||||
#include "py_igl/py_slice_mask.cpp"
|
||||
#include "py_igl/py_signed_distance.cpp"
|
||||
#include "py_igl/py_quad_planarity.cpp"
|
||||
#include "py_igl/py_cross_field_missmatch.cpp"
|
||||
#include "py_igl/py_cut_mesh_from_singularities.cpp"
|
||||
#include "py_igl/py_doublearea.cpp"
|
||||
#include "py_igl/py_edge_lengths.cpp"
|
||||
#include "py_igl/py_eigs.cpp"
|
||||
#include "py_igl/py_find_cross_field_singularities.cpp"
|
||||
#include "py_igl/py_fit_rotations.cpp"
|
||||
#include "py_igl/py_floor.cpp"
|
||||
#include "py_igl/py_gaussian_curvature.cpp"
|
||||
#include "py_igl/py_grad.cpp"
|
||||
#include "py_igl/py_harmonic.cpp"
|
||||
#include "py_igl/py_invert_diag.cpp"
|
||||
#include "py_igl/py_jet.cpp"
|
||||
#include "py_igl/py_local_basis.cpp"
|
||||
#include "py_igl/py_lscm.cpp"
|
||||
#include "py_igl/py_map_vertices_to_circle.cpp"
|
||||
#include "py_igl/py_massmatrix.cpp"
|
||||
#include "py_igl/py_min_quad_with_fixed.cpp"
|
||||
#include "py_igl/py_n_polyvector.cpp"
|
||||
#include "py_igl/py_parula.cpp"
|
||||
#include "py_igl/py_per_corner_normals.cpp"
|
||||
#include "py_igl/py_per_edge_normals.cpp"
|
||||
#include "py_igl/py_per_face_normals.cpp"
|
||||
#include "py_igl/py_per_vertex_normals.cpp"
|
||||
#include "py_igl/py_planarize_quad_mesh.cpp"
|
||||
#include "py_igl/py_point_mesh_squared_distance.cpp"
|
||||
#include "py_igl/py_polar_svd.cpp"
|
||||
#include "py_igl/py_principal_curvature.cpp"
|
||||
#include "py_igl/py_quad_planarity.cpp"
|
||||
#include "py_igl/py_readDMAT.cpp"
|
||||
#include "py_igl/py_readMESH.cpp"
|
||||
#include "py_igl/py_readOBJ.cpp"
|
||||
#include "py_igl/py_readOFF.cpp"
|
||||
#include "py_igl/py_read_triangle_mesh.cpp"
|
||||
#include "py_igl/py_rotate_vectors.cpp"
|
||||
#include "py_igl/py_setdiff.cpp"
|
||||
#include "py_igl/py_signed_distance.cpp"
|
||||
#include "py_igl/py_slice.cpp"
|
||||
#include "py_igl/py_slice_into.cpp"
|
||||
#include "py_igl/py_slice_mask.cpp"
|
||||
#include "py_igl/py_slice_tets.cpp"
|
||||
#include "py_igl/py_sortrows.cpp"
|
||||
#include "py_igl/py_unique.cpp"
|
||||
#include "py_igl/py_unproject_onto_mesh.cpp"
|
||||
//#include "py_igl/py_.cpp"
|
||||
#include "py_igl/py_upsample.cpp"
|
||||
#include "py_igl/py_writeMESH.cpp"
|
||||
#include "py_igl/py_writeOBJ.cpp"
|
||||
|
||||
}
|
||||
|
||||
@@ -21,6 +21,7 @@ def get_filepaths(directory):
|
||||
it yields a 3-tuple (dirpath, dirnames, filenames).
|
||||
"""
|
||||
file_paths = [] # List which will store all of the full filepaths.
|
||||
root_file_paths = []
|
||||
|
||||
# Walk the tree.
|
||||
for root, directories, files in os.walk(directory):
|
||||
@@ -29,7 +30,10 @@ def get_filepaths(directory):
|
||||
filepath = os.path.join(root, filename)
|
||||
file_paths.append(filepath) # Add it to the list.
|
||||
|
||||
return file_paths # Self-explanatory.
|
||||
if root.endswith(directory): # Add only the files in the root directory
|
||||
root_file_paths.append(filepath)
|
||||
|
||||
return file_paths, root_file_paths # file_paths contains all file paths, core_file_paths only the ones in <directory>
|
||||
|
||||
|
||||
def get_name_from_path(path, basepath, prefix, postfix):
|
||||
@@ -53,8 +57,8 @@ if __name__ == '__main__':
|
||||
# List all files in the given folder and subfolders
|
||||
cpp_base_path = sys.argv[1]
|
||||
py_base_path = sys.argv[2]
|
||||
cpp_file_paths = get_filepaths(cpp_base_path)
|
||||
py_file_paths = get_filepaths(py_base_path)
|
||||
cpp_file_paths, cpp_root_file_paths = get_filepaths(cpp_base_path)
|
||||
py_file_paths, py_root_file_paths = get_filepaths(py_base_path)
|
||||
|
||||
# Add all the .h filepaths to a dict
|
||||
mapping = {}
|
||||
@@ -65,10 +69,16 @@ if __name__ == '__main__':
|
||||
|
||||
# Add all python binding files to a list
|
||||
implemented_names = []
|
||||
core_implemented_names = []
|
||||
for f in py_file_paths:
|
||||
if f.endswith(".cpp"):
|
||||
name = get_name_from_path(f, py_base_path, "py_", ".cpp")
|
||||
implemented_names.append(name)
|
||||
if f in py_root_file_paths:
|
||||
core_implemented_names.append(name)
|
||||
|
||||
implemented_names.sort()
|
||||
core_implemented_names.sort()
|
||||
|
||||
# Create a list of cpp header files for which a python binding file exists
|
||||
files_to_parse = []
|
||||
@@ -124,3 +134,9 @@ if __name__ == '__main__':
|
||||
rendered = tpl.render(functions=implemented_names)
|
||||
with open("../python_shared.cpp", 'w') as fs:
|
||||
fs.write(rendered)
|
||||
|
||||
# Write py_igl_cpp file with all core library files
|
||||
tpl = Template(filename='py_igl.mako')
|
||||
rendered = tpl.render(functions=core_implemented_names)
|
||||
with open("../py_igl.cpp", 'w') as fs:
|
||||
fs.write(rendered)
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
#include <Eigen/Dense>
|
||||
|
||||
#include "python_shared.h"
|
||||
|
||||
% for f in functions:
|
||||
#include <igl/${f}.h>
|
||||
% endfor
|
||||
|
||||
|
||||
void python_export_igl(py::module &m)
|
||||
{
|
||||
% for f in functions:
|
||||
#include "py_igl/py_${f}.cpp"
|
||||
% endfor
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user