@ccpc/math 0.1.0 → 0.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.cjs +226 -0
- package/package.json +19 -37
- package/types/algorithm/bool_operate/bool2d/bool2d.d.ts +22 -0
- package/types/algorithm/bool_operate/bool2d/difference.d.ts +9 -0
- package/types/algorithm/bool_operate/bool2d/intersect.d.ts +9 -0
- package/types/algorithm/bool_operate/bool2d/split.d.ts +3 -0
- package/types/algorithm/bool_operate/bool2d/union.d.ts +9 -0
- package/types/algorithm/bool_operate/bool2d/utils.d.ts +40 -0
- package/types/algorithm/bool_operate/bool_operate_clipper.d.ts +18 -0
- package/types/algorithm/bool_operate/polycurve_polygon_bool.d.ts +13 -0
- package/types/algorithm/bool_operate_2d.d.ts +67 -0
- package/types/algorithm/calc_d.d.ts +85 -0
- package/types/algorithm/calc_offset.d.ts +70 -0
- package/types/algorithm/calc_overlap.d.ts +56 -0
- package/types/algorithm/calc_project.d.ts +29 -0
- package/types/algorithm/calc_x.d.ts +215 -0
- package/types/algorithm/calculate_util/geometry_subdevide_infos.d.ts +73 -0
- package/types/algorithm/calculate_util/iterative_method.d.ts +30 -0
- package/types/algorithm/discrete/discrete_curve.d.ts +31 -0
- package/types/algorithm/discrete/discrete_refiner.d.ts +35 -0
- package/types/algorithm/discrete/discrete_surface.d.ts +74 -0
- package/types/algorithm/discrete/discrete_topology.d.ts +32 -0
- package/types/algorithm/discrete/discrete_util.d.ts +96 -0
- package/types/algorithm/discrete/grid_discrete_data.d.ts +58 -0
- package/types/algorithm/discrete/libtess.d.ts +12 -0
- package/types/algorithm/discrete/uniform_grid_discrete.d.ts +3 -0
- package/types/algorithm/distance/base_calc_distance/curves_distance_util.d.ts +20 -0
- package/types/algorithm/distance/base_calc_distance/define_of_calculate_distance.d.ts +12 -0
- package/types/algorithm/distance/curve2ds_distance/arc2s_distance.d.ts +17 -0
- package/types/algorithm/distance/curve2ds_distance/line2d_to_arc2d_distance.d.ts +17 -0
- package/types/algorithm/distance/curve2ds_distance/line2s_distance.d.ts +15 -0
- package/types/algorithm/distance/curve2s_distance.d.ts +15 -0
- package/types/algorithm/distance/curve3ds_distance/line3d_to_line3d_distance_paramed.d.ts +12 -0
- package/types/algorithm/distance/curve3s_distance.d.ts +31 -0
- package/types/algorithm/distance/pt_to_curve2_signed_distance.d.ts +17 -0
- package/types/algorithm/distance/pt_to_curve3_distance.d.ts +25 -0
- package/types/algorithm/distance/pt_to_curve_distance_info.d.ts +12 -0
- package/types/algorithm/distance/pt_to_surface_distance.d.ts +17 -0
- package/types/algorithm/distance/pts_to_curves_distance.d.ts +13 -0
- package/types/algorithm/distance/pts_to_pts_distance.d.ts +7 -0
- package/types/algorithm/geometry_merge.d.ts +22 -0
- package/types/algorithm/index.d.ts +32 -0
- package/types/algorithm/intersect/box_cut_line.d.ts +6 -0
- package/types/algorithm/intersect/curve_self_x.d.ts +13 -0
- package/types/algorithm/intersect/curve_surface_x.d.ts +34 -0
- package/types/algorithm/intersect/curve_surface_x_util.d.ts +32 -0
- package/types/algorithm/intersect/curves_x/circulars_x.d.ts +35 -0
- package/types/algorithm/intersect/curves_x/linear_circular_x.d.ts +40 -0
- package/types/algorithm/intersect/curves_x/lines_x.d.ts +17 -0
- package/types/algorithm/intersect/curves_x/lines_x_util.d.ts +4 -0
- package/types/algorithm/intersect/curves_x.d.ts +26 -0
- package/types/algorithm/intersect/curves_x_util.d.ts +35 -0
- package/types/algorithm/intersect/intersect_info_util.d.ts +9 -0
- package/types/algorithm/intersect/surface_self_x.d.ts +8 -0
- package/types/algorithm/intersect/surfaces_x.d.ts +53 -0
- package/types/algorithm/intersect/surfaces_x_complex.d.ts +29 -0
- package/types/algorithm/intersect/surfaces_x_special.d.ts +16 -0
- package/types/algorithm/intersect/surfaces_x_util.d.ts +41 -0
- package/types/algorithm/intersect/x_info.d.ts +65 -0
- package/types/algorithm/loop_property/loop-area.d.ts +49 -0
- package/types/algorithm/loop_property/loop-centroid.d.ts +40 -0
- package/types/algorithm/merge_geometry/halfplane.d.ts +24 -0
- package/types/algorithm/merge_geometry/merge_curve.d.ts +14 -0
- package/types/algorithm/merge_geometry/merge_point.d.ts +18 -0
- package/types/algorithm/mesh/clip_mesh.d.ts +27 -0
- package/types/algorithm/mesh/extrude_clip.d.ts +236 -0
- package/types/algorithm/mesh/mesh_assist.d.ts +21 -0
- package/types/algorithm/mesh/mesh_contour.d.ts +26 -0
- package/types/algorithm/mesh/mesh_util.d.ts +115 -0
- package/types/algorithm/offset/loop2d_offset.d.ts +22 -0
- package/types/algorithm/offset/polygon_offset.d.ts +27 -0
- package/types/algorithm/overlap/curve_surface_coincide.d.ts +6 -0
- package/types/algorithm/overlap/curves_colinear.d.ts +38 -0
- package/types/algorithm/overlap/curves_merge.d.ts +74 -0
- package/types/algorithm/overlap/curves_overlap.d.ts +34 -0
- package/types/algorithm/overlap/i_overlap.d.ts +9 -0
- package/types/algorithm/overlap/surfaces_coplaner.d.ts +5 -0
- package/types/algorithm/pattern/blocks2Geometry.d.ts +50 -0
- package/types/algorithm/pattern/math.d.ts +42 -0
- package/types/algorithm/pattern/pattern.d.ts +43 -0
- package/types/algorithm/pattern/pattern_util.d.ts +53 -0
- package/types/algorithm/pattern/pave.d.ts +33 -0
- package/types/algorithm/pj/curves_oj.d.ts +19 -0
- package/types/algorithm/pj/curves_pj.d.ts +19 -0
- package/types/algorithm/pj/loops_pj.d.ts +13 -0
- package/types/algorithm/pj/pj_type.d.ts +46 -0
- package/types/algorithm/pj/pt_loop_pj.d.ts +24 -0
- package/types/algorithm/pj/pt_polygon_pj.d.ts +18 -0
- package/types/algorithm/pj/pt_polygon_position_judger.d.ts +11 -0
- package/types/algorithm/position_judge.d.ts +72 -0
- package/types/algorithm/project/curve3d_to_plane_project.d.ts +11 -0
- package/types/algorithm/project/curve_curve_project.d.ts +9 -0
- package/types/algorithm/search_graph/iloops_polygonex.d.ts +28 -0
- package/types/algorithm/search_graph/loop_tree_node.d.ts +30 -0
- package/types/algorithm/search_graph/loops_to_loop_tree_search_graph.d.ts +25 -0
- package/types/algorithm/search_graph/polygon_polygonex.d.ts +13 -0
- package/types/algorithm/search_graph/search_loop2d.d.ts +20 -0
- package/types/algorithm/search_graph/search_polyline.d.ts +11 -0
- package/types/algorithm/search_graph.d.ts +45 -0
- package/types/algorithm/topology_edit.d.ts +10 -0
- package/types/base/box.d.ts +100 -0
- package/types/base/box2.d.ts +17 -0
- package/types/base/box3.d.ts +20 -0
- package/types/base/coord.d.ts +10 -0
- package/types/base/coord2.d.ts +92 -0
- package/types/base/coord3.d.ts +139 -0
- package/types/base/discrete_param.d.ts +28 -0
- package/types/base/euler.d.ts +102 -0
- package/types/base/geo_element.d.ts +54 -0
- package/types/base/interval.d.ts +122 -0
- package/types/base/ivector.d.ts +126 -0
- package/types/base/matrix.d.ts +108 -0
- package/types/base/matrix3.d.ts +118 -0
- package/types/base/matrix4.d.ts +166 -0
- package/types/base/matrix_util.d.ts +5 -0
- package/types/base/period_inverval.d.ts +127 -0
- package/types/base/quaternion.d.ts +39 -0
- package/types/base/tangent_cone.d.ts +11 -0
- package/types/base/tilt_box.d.ts +11 -0
- package/types/base/tol.d.ts +120 -0
- package/types/base/vec.d.ts +46 -0
- package/types/base/vec2.d.ts +146 -0
- package/types/base/vec3.d.ts +158 -0
- package/types/brep-src/algorithm/alg_const.d.ts +23 -0
- package/types/brep-src/algorithm/alg_types.d.ts +47 -0
- package/types/brep-src/algorithm/algorithm_util/base_define.d.ts +7 -0
- package/types/brep-src/algorithm/algorithm_util/body_base_util.d.ts +4 -0
- package/types/brep-src/algorithm/algorithm_util/curve_solid_analysis.d.ts +28 -0
- package/types/brep-src/algorithm/algorithm_util/face_face_analysis.d.ts +39 -0
- package/types/brep-src/algorithm/algorithm_util/search_wire.d.ts +8 -0
- package/types/brep-src/algorithm/body_builder/basic_body_builder.d.ts +15 -0
- package/types/brep-src/algorithm/body_builder/extrude_body.d.ts +23 -0
- package/types/brep-src/algorithm/body_builder/sweep_body.d.ts +37 -0
- package/types/brep-src/algorithm/body_builder.d.ts +36 -0
- package/types/brep-src/algorithm/body_util.d.ts +21 -0
- package/types/brep-src/algorithm/bool_sk/brep_converter.d.ts +11 -0
- package/types/brep-src/algorithm/brep_calc_project.d.ts +50 -0
- package/types/brep-src/algorithm/brep_calc_x.d.ts +34 -0
- package/types/brep-src/algorithm/brep_pj.d.ts +47 -0
- package/types/brep-src/algorithm/index.d.ts +5 -0
- package/types/brep-src/algorithm/intersect/curve_face_overlap.d.ts +10 -0
- package/types/brep-src/algorithm/intersect/face_face_intersect.d.ts +22 -0
- package/types/brep-src/algorithm/intersect/face_faces_intersect.d.ts +15 -0
- package/types/brep-src/algorithm/intersect/line_face_intersect.d.ts +16 -0
- package/types/brep-src/algorithm/podition_judge/body_pj.d.ts +25 -0
- package/types/brep-src/algorithm/podition_judge/extrude_pj.d.ts +28 -0
- package/types/brep-src/algorithm/podition_judge/pt_body_pj.d.ts +32 -0
- package/types/brep-src/algorithm/project/body_project.d.ts +8 -0
- package/types/brep-src/algorithm/project/face_project.d.ts +20 -0
- package/types/brep-src/algorithm/project/face_surface_project.d.ts +8 -0
- package/types/brep-src/algorithm/project/space_project.d.ts +26 -0
- package/types/brep-src/algorithm/project/space_project_simple.d.ts +10 -0
- package/types/brep-src/algorithm/project/view_project.d.ts +25 -0
- package/types/brep-src/algorithm/shell_builder/create_shell_from_curves.d.ts +38 -0
- package/types/brep-src/algorithm/shell_builder.d.ts +25 -0
- package/types/brep-src/algorithm/shell_edit/add_edges/add_edges.d.ts +14 -0
- package/types/brep-src/algorithm/shell_edit/add_edges/add_edges_core.d.ts +11 -0
- package/types/brep-src/algorithm/shell_edit/copy_faces.d.ts +20 -0
- package/types/brep-src/algorithm/shell_edit/delete_faces_edges/delete_edge.d.ts +9 -0
- package/types/brep-src/algorithm/shell_edit/delete_faces_edges/delete_faces_edges.d.ts +17 -0
- package/types/brep-src/algorithm/shell_edit/faces_boolean/faces_boolean.d.ts +19 -0
- package/types/brep-src/algorithm/shell_edit/faces_boolean/faces_shells_boolean.d.ts +13 -0
- package/types/brep-src/algorithm/shell_edit/faces_boolean/octree.d.ts +11 -0
- package/types/brep-src/algorithm/shell_edit/isolate_faces.d.ts +21 -0
- package/types/brep-src/algorithm/shell_edit/merge_connect_faces.d.ts +14 -0
- package/types/brep-src/algorithm/shell_edit/merge_edges.d.ts +8 -0
- package/types/brep-src/algorithm/shell_edit/move_operators/move_edges.d.ts +31 -0
- package/types/brep-src/algorithm/shell_edit/move_operators/move_faces.d.ts +14 -0
- package/types/brep-src/algorithm/shell_edit/operator/dispose_topo.d.ts +2 -0
- package/types/brep-src/algorithm/shell_edit/operator/merge_connect_edge.d.ts +3 -0
- package/types/brep-src/algorithm/shell_edit/operator/merge_connect_face.d.ts +2 -0
- package/types/brep-src/algorithm/shell_edit/operator/merge_overlap_edge.d.ts +3 -0
- package/types/brep-src/algorithm/shell_edit/operator/merge_shell.d.ts +11 -0
- package/types/brep-src/algorithm/shell_edit/operator/merge_vertex.d.ts +2 -0
- package/types/brep-src/algorithm/shell_edit/operator/split_edge.d.ts +4 -0
- package/types/brep-src/algorithm/shell_edit/operator/split_shell.d.ts +6 -0
- package/types/brep-src/algorithm/shell_edit/pull_push_face/pull_push_face.d.ts +18 -0
- package/types/brep-src/algorithm/shell_edit/pull_push_face/pull_push_face_core.d.ts +6 -0
- package/types/brep-src/algorithm/shell_edit/pull_push_face/pull_push_face_preview.d.ts +16 -0
- package/types/brep-src/algorithm/shell_edit/pull_push_face/pull_push_face_preview_core.d.ts +24 -0
- package/types/brep-src/algorithm/shell_edit/roundinng/2d_rounding.d.ts +22 -0
- package/types/brep-src/algorithm/shell_edit/shell_modeling_base.d.ts +10 -0
- package/types/brep-src/algorithm/shell_edit/shell_modeling_result.d.ts +21 -0
- package/types/brep-src/algorithm/shell_edit/smooth/detect_loop_util.d.ts +27 -0
- package/types/brep-src/algorithm/shell_edit/smooth/shell_modeling_util.d.ts +24 -0
- package/types/brep-src/algorithm/shell_edit/smooth/smooth_util.d.ts +22 -0
- package/types/brep-src/algorithm/shell_edit/split_edge.d.ts +10 -0
- package/types/brep-src/algorithm/shell_edit.d.ts +119 -0
- package/types/brep-src/algorithm/shell_valid/base_brep_topo_error.d.ts +176 -0
- package/types/brep-src/algorithm/shell_valid/diagnose_shell.d.ts +14 -0
- package/types/brep-src/brep/brep_body.d.ts +19 -0
- package/types/brep-src/brep/coedge3d.d.ts +83 -0
- package/types/brep-src/brep/edge.d.ts +96 -0
- package/types/brep-src/brep/face.d.ts +150 -0
- package/types/brep-src/brep/shell.d.ts +166 -0
- package/types/brep-src/brep/topo_object.d.ts +40 -0
- package/types/brep-src/brep/vertex.d.ts +48 -0
- package/types/brep-src/brep/wire.d.ts +66 -0
- package/types/brep-src/continuous/continuous_edge.d.ts +17 -0
- package/types/brep-src/continuous/continuous_face.d.ts +10 -0
- package/types/brep-src/continuous/continuous_util.d.ts +60 -0
- package/types/brep-src/continuous/continuous_uv.d.ts +24 -0
- package/types/brep-src/continuous/index.d.ts +4 -0
- package/types/brep-src/index.d.ts +14 -0
- package/types/brep-src/type_define/i_types.d.ts +46 -0
- package/types/brep-src/util/util.d.ts +23 -0
- package/types/conversion/units_conversion.d.ts +14 -0
- package/types/geometry/arc2d.d.ts +249 -0
- package/types/geometry/arc3d.d.ts +204 -0
- package/types/geometry/circle3d.d.ts +92 -0
- package/types/geometry/circular_surface.d.ts +52 -0
- package/types/geometry/coord_based_surface.d.ts +25 -0
- package/types/geometry/curve.d.ts +228 -0
- package/types/geometry/curve2.d.ts +62 -0
- package/types/geometry/curve3d.d.ts +66 -0
- package/types/geometry/cylinder.d.ts +73 -0
- package/types/geometry/discrete_arrow.d.ts +3 -0
- package/types/geometry/extend_curve2.d.ts +75 -0
- package/types/geometry/geometry2d.d.ts +35 -0
- package/types/geometry/geometry3d.d.ts +36 -0
- package/types/geometry/intersect_curve3.d.ts +90 -0
- package/types/geometry/ln2.d.ts +168 -0
- package/types/geometry/ln3.d.ts +152 -0
- package/types/geometry/nurbs_curve2.d.ts +106 -0
- package/types/geometry/nurbs_curve3.d.ts +191 -0
- package/types/geometry/offset_curve2.d.ts +63 -0
- package/types/geometry/offset_curve3.d.ts +97 -0
- package/types/geometry/offset_parameter_mapper.d.ts +72 -0
- package/types/geometry/plane.d.ts +109 -0
- package/types/geometry/polyline.d.ts +12 -0
- package/types/geometry/smooth_poly2.d.ts +78 -0
- package/types/geometry/smooth_poly3.d.ts +85 -0
- package/types/geometry/surface.d.ts +173 -0
- package/types/index.d.ts +78 -0
- package/types/io/obj_parser.d.ts +4 -0
- package/types/io/svgparser.d.ts +22 -0
- package/types/loader/loader.d.ts +23 -0
- package/types/loader/register_geo.d.ts +7 -0
- package/types/math/gauss_integration.d.ts +13 -0
- package/types/math/inv_bilinear.d.ts +33 -0
- package/types/solve_equations/cubic_equation.d.ts +7 -0
- package/types/solve_equations/linear_system.d.ts +6 -0
- package/types/solve_equations/nonlinear_system.d.ts +11 -0
- package/types/solve_equations/plurality.d.ts +9 -0
- package/types/solve_equations/polynomial_equation.d.ts +6 -0
- package/types/solve_equations/quadratic_equation.d.ts +6 -0
- package/types/solve_equations/quartic_equation.d.ts +6 -0
- package/types/solve_equations/solve_equation_util.d.ts +50 -0
- package/types/test_util/loop_generator.d.ts +21 -0
- package/types/topology/evolution_map.d.ts +90 -0
- package/types/topology/loop.d.ts +50 -0
- package/types/topology/polycurve.d.ts +109 -0
- package/types/topology/polygon.d.ts +118 -0
- package/types/topology/trimmed_surface.d.ts +136 -0
- package/types/type_define/const.d.ts +18 -0
- package/types/type_define/i_element.d.ts +9 -0
- package/types/type_define/i_element_type.d.ts +34 -0
- package/types/type_define/i_geometry.d.ts +191 -0
- package/types/type_define/i_types.d.ts +280 -0
- package/types/util/array_util.d.ts +8 -0
- package/types/util/assert.d.ts +21 -0
- package/types/util/clipper2_util.d.ts +5 -0
- package/types/util/clipper_format_converter.d.ts +21 -0
- package/types/util/clipper_util.d.ts +10 -0
- package/types/util/curve_util.d.ts +72 -0
- package/types/util/geom_util.d.ts +23 -0
- package/types/util/log.d.ts +19 -0
- package/types/util/math_error.d.ts +37 -0
- package/types/util/surface_util.d.ts +13 -0
- package/types/util/util.d.ts +18 -0
- package/types/util/uv_util.d.ts +68 -0
- package/types/verb/export_verb.d.ts +2 -0
- package/types/wasm/a2d.d.ts +19 -0
- package/types/wasm/bx2.d.ts +16 -0
- package/types/wasm/c2d.d.ts +29 -0
- package/types/wasm/elli.d.ts +19 -0
- package/types/wasm/grapher2d.d.ts +39 -0
- package/types/wasm/grapherutil.d.ts +9 -0
- package/types/wasm/l2d.d.ts +14 -0
- package/types/wasm/loader.d.ts +8 -0
- package/types/wasm/pt.d.ts +19 -0
- package/types/wasm/wasm-geom.d.ts +296 -0
- package/types/wasm/wasminstance.d.ts +19 -0
- package/types/wasm/wrapper.d.ts +82 -0
- package/README.md +0 -21
- package/dist/constants/geom_type.d.ts +0 -13
- package/dist/constants/geom_type.d.ts.map +0 -1
- package/dist/constants/geom_type.js +0 -17
- package/dist/constants/math_const.d.ts +0 -9
- package/dist/constants/math_const.d.ts.map +0 -1
- package/dist/constants/math_const.js +0 -12
- package/dist/core/box2.d.ts +0 -71
- package/dist/core/box2.d.ts.map +0 -1
- package/dist/core/box2.js +0 -243
- package/dist/core/coord2d.d.ts +0 -62
- package/dist/core/coord2d.d.ts.map +0 -1
- package/dist/core/coord2d.js +0 -155
- package/dist/core/geom_base.d.ts +0 -19
- package/dist/core/geom_base.d.ts.map +0 -1
- package/dist/core/geom_base.js +0 -18
- package/dist/core/mat3.d.ts +0 -101
- package/dist/core/mat3.d.ts.map +0 -1
- package/dist/core/mat3.js +0 -290
- package/dist/core/vec2.d.ts +0 -138
- package/dist/core/vec2.d.ts.map +0 -1
- package/dist/core/vec2.js +0 -297
- package/dist/curves/arc2.d.ts +0 -49
- package/dist/curves/arc2.d.ts.map +0 -1
- package/dist/curves/arc2.js +0 -265
- package/dist/curves/bspline2.d.ts +0 -150
- package/dist/curves/bspline2.d.ts.map +0 -1
- package/dist/curves/bspline2.js +0 -793
- package/dist/curves/circle2.d.ts +0 -42
- package/dist/curves/circle2.d.ts.map +0 -1
- package/dist/curves/circle2.js +0 -135
- package/dist/curves/circle_curve2.d.ts +0 -38
- package/dist/curves/circle_curve2.d.ts.map +0 -1
- package/dist/curves/circle_curve2.js +0 -112
- package/dist/curves/curve2.d.ts +0 -214
- package/dist/curves/curve2.d.ts.map +0 -1
- package/dist/curves/curve2.js +0 -238
- package/dist/curves/ellipse2.d.ts +0 -42
- package/dist/curves/ellipse2.d.ts.map +0 -1
- package/dist/curves/ellipse2.js +0 -125
- package/dist/curves/ellipse_arc2.d.ts +0 -49
- package/dist/curves/ellipse_arc2.d.ts.map +0 -1
- package/dist/curves/ellipse_arc2.js +0 -184
- package/dist/curves/ellipse_curve2.d.ts +0 -56
- package/dist/curves/ellipse_curve2.d.ts.map +0 -1
- package/dist/curves/ellipse_curve2.js +0 -262
- package/dist/curves/interval.d.ts +0 -112
- package/dist/curves/interval.d.ts.map +0 -1
- package/dist/curves/interval.js +0 -200
- package/dist/curves/line2.d.ts +0 -64
- package/dist/curves/line2.d.ts.map +0 -1
- package/dist/curves/line2.js +0 -193
- package/dist/curves/period_interval.d.ts +0 -129
- package/dist/curves/period_interval.d.ts.map +0 -1
- package/dist/curves/period_interval.js +0 -240
- package/dist/discretize/discretize_defaults.d.ts +0 -12
- package/dist/discretize/discretize_defaults.d.ts.map +0 -1
- package/dist/discretize/discretize_defaults.js +0 -12
- package/dist/discretize/discretize_engine.d.ts +0 -33
- package/dist/discretize/discretize_engine.d.ts.map +0 -1
- package/dist/discretize/discretize_engine.js +0 -347
- package/dist/discretize/discretize_errors.d.ts +0 -15
- package/dist/discretize/discretize_errors.d.ts.map +0 -1
- package/dist/discretize/discretize_errors.js +0 -30
- package/dist/discretize/discretize_options.d.ts +0 -18
- package/dist/discretize/discretize_options.d.ts.map +0 -1
- package/dist/discretize/discretize_options.js +0 -19
- package/dist/discretize/discretize_types.d.ts +0 -36
- package/dist/discretize/discretize_types.d.ts.map +0 -1
- package/dist/discretize/discretize_types.js +0 -1
- package/dist/discretize/internal/curve_guards.d.ts +0 -35
- package/dist/discretize/internal/curve_guards.d.ts.map +0 -1
- package/dist/discretize/internal/curve_guards.js +0 -62
- package/dist/discretize/internal/postprocess.d.ts +0 -5
- package/dist/discretize/internal/postprocess.d.ts.map +0 -1
- package/dist/discretize/internal/postprocess.js +0 -109
- package/dist/discretize/internal/sampling_utils.d.ts +0 -8
- package/dist/discretize/internal/sampling_utils.d.ts.map +0 -1
- package/dist/discretize/internal/sampling_utils.js +0 -36
- package/dist/discretize/register_builtin_strategies.d.ts +0 -3
- package/dist/discretize/register_builtin_strategies.d.ts.map +0 -1
- package/dist/discretize/register_builtin_strategies.js +0 -10
- package/dist/discretize/strategies/bspline_strategy.d.ts +0 -4
- package/dist/discretize/strategies/bspline_strategy.d.ts.map +0 -1
- package/dist/discretize/strategies/bspline_strategy.js +0 -115
- package/dist/discretize/strategies/circle_strategy.d.ts +0 -7
- package/dist/discretize/strategies/circle_strategy.d.ts.map +0 -1
- package/dist/discretize/strategies/circle_strategy.js +0 -55
- package/dist/discretize/strategies/ellipse_strategy.d.ts +0 -7
- package/dist/discretize/strategies/ellipse_strategy.d.ts.map +0 -1
- package/dist/discretize/strategies/ellipse_strategy.js +0 -86
- package/dist/discretize/strategies/line_strategy.d.ts +0 -4
- package/dist/discretize/strategies/line_strategy.d.ts.map +0 -1
- package/dist/discretize/strategies/line_strategy.js +0 -40
- package/dist/discretize/strategy_registry.d.ts +0 -9
- package/dist/discretize/strategy_registry.d.ts.map +0 -1
- package/dist/discretize/strategy_registry.js +0 -34
- package/dist/index.d.ts +0 -30
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -24
- package/dist/intersections/analytic_x_algorithm.d.ts +0 -10
- package/dist/intersections/analytic_x_algorithm.d.ts.map +0 -1
- package/dist/intersections/analytic_x_algorithm.js +0 -83
- package/dist/intersections/curve_x_engine.d.ts +0 -9
- package/dist/intersections/curve_x_engine.d.ts.map +0 -1
- package/dist/intersections/curve_x_engine.js +0 -27
- package/dist/intersections/index.d.ts +0 -5
- package/dist/intersections/index.d.ts.map +0 -1
- package/dist/intersections/index.js +0 -11
- package/dist/intersections/internal/certification.d.ts +0 -34
- package/dist/intersections/internal/certification.d.ts.map +0 -1
- package/dist/intersections/internal/certification.js +0 -238
- package/dist/intersections/internal/interval_clipping.d.ts +0 -29
- package/dist/intersections/internal/interval_clipping.d.ts.map +0 -1
- package/dist/intersections/internal/interval_clipping.js +0 -123
- package/dist/intersections/internal/kind.d.ts +0 -4
- package/dist/intersections/internal/kind.d.ts.map +0 -1
- package/dist/intersections/internal/kind.js +0 -16
- package/dist/intersections/internal/pair.d.ts +0 -9
- package/dist/intersections/internal/pair.d.ts.map +0 -1
- package/dist/intersections/internal/pair.js +0 -14
- package/dist/intersections/internal/result.d.ts +0 -20
- package/dist/intersections/internal/result.d.ts.map +0 -1
- package/dist/intersections/internal/result.js +0 -125
- package/dist/intersections/internal/sampling.d.ts +0 -15
- package/dist/intersections/internal/sampling.d.ts.map +0 -1
- package/dist/intersections/internal/sampling.js +0 -131
- package/dist/intersections/internal/segment.d.ts +0 -32
- package/dist/intersections/internal/segment.d.ts.map +0 -1
- package/dist/intersections/internal/segment.js +0 -137
- package/dist/intersections/internal/tolerance.d.ts +0 -10
- package/dist/intersections/internal/tolerance.d.ts.map +0 -1
- package/dist/intersections/internal/tolerance.js +0 -20
- package/dist/intersections/intersector.d.ts +0 -6
- package/dist/intersections/intersector.d.ts.map +0 -1
- package/dist/intersections/intersector.js +0 -1
- package/dist/intersections/numeric_x_algorithm.d.ts +0 -10
- package/dist/intersections/numeric_x_algorithm.d.ts.map +0 -1
- package/dist/intersections/numeric_x_algorithm.js +0 -73
- package/dist/intersections/solvers/bspline_self_solver.d.ts +0 -7
- package/dist/intersections/solvers/bspline_self_solver.d.ts.map +0 -1
- package/dist/intersections/solvers/bspline_self_solver.js +0 -308
- package/dist/intersections/solvers/line_line_pair_solver.d.ts +0 -7
- package/dist/intersections/solvers/line_line_pair_solver.d.ts.map +0 -1
- package/dist/intersections/solvers/line_line_pair_solver.js +0 -35
- package/dist/intersections/solvers/pair_solvers.d.ts +0 -94
- package/dist/intersections/solvers/pair_solvers.d.ts.map +0 -1
- package/dist/intersections/solvers/pair_solvers.js +0 -1078
- package/dist/intersections/solvers/polyline_pair_intersector.d.ts +0 -51
- package/dist/intersections/solvers/polyline_pair_intersector.d.ts.map +0 -1
- package/dist/intersections/solvers/polyline_pair_intersector.js +0 -731
- package/dist/intersections/types.d.ts +0 -11
- package/dist/intersections/types.d.ts.map +0 -1
- package/dist/intersections/types.js +0 -1
- package/dist/serialize/dump_types.d.ts +0 -101
- package/dist/serialize/dump_types.d.ts.map +0 -1
- package/dist/serialize/dump_types.js +0 -5
- package/dist/serialize/geom_mgr.d.ts +0 -24
- package/dist/serialize/geom_mgr.d.ts.map +0 -1
- package/dist/serialize/geom_mgr.js +0 -30
- package/dist/types/type_define.d.ts +0 -29
- package/dist/types/type_define.d.ts.map +0 -1
- package/dist/types/type_define.js +0 -10
- package/dist/types/type_guard.d.ts +0 -46
- package/dist/types/type_guard.d.ts.map +0 -1
- package/dist/types/type_guard.js +0 -5
- package/dist/utils/math_error.d.ts +0 -16
- package/dist/utils/math_error.d.ts.map +0 -1
- package/dist/utils/math_error.js +0 -35
- package/dist/utils/math_utils.d.ts +0 -9
- package/dist/utils/math_utils.d.ts.map +0 -1
- package/dist/utils/math_utils.js +0 -25
- package/dist/utils/precision.d.ts +0 -29
- package/dist/utils/precision.d.ts.map +0 -1
- package/dist/utils/precision.js +0 -44
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import { Box2 } from '../../base/box2';
|
|
2
|
+
import { Box3 } from '../../base/box3';
|
|
3
|
+
import { Coord3 } from '../../base/coord3';
|
|
4
|
+
import { Ln3 } from '../../geometry/ln3';
|
|
5
|
+
import { Surface } from '../../geometry/surface';
|
|
6
|
+
import { types } from '../../type_define/i_types';
|
|
7
|
+
import { IMesh2d } from '../discrete/discrete_refiner';
|
|
8
|
+
import { BrepBody, Shell } from '../../brep-src';
|
|
9
|
+
import { DiscreteParam } from '../..';
|
|
10
|
+
import { Curve3, Polygon } from '../..';
|
|
11
|
+
export declare class MeshUtil {
|
|
12
|
+
/**
|
|
13
|
+
*
|
|
14
|
+
* @param box
|
|
15
|
+
* @param mesh 被切割mesh
|
|
16
|
+
* @param fillClip 是否对切割mesh补面
|
|
17
|
+
*/
|
|
18
|
+
static boxClip(box: types.IFlatMesh, mesh: types.IFlatMesh, fillClip?: boolean): types.IFlatMesh;
|
|
19
|
+
static createFlatMeshByMesh2d(mesh2d: IMesh2d, surface?: Surface): types.IFlatMesh;
|
|
20
|
+
static createFlatMesh(): types.IFlatMesh;
|
|
21
|
+
static createFlatMeshByBox2(box: Box2, z?: number): types.IFlatMesh;
|
|
22
|
+
static createFlatMeshByBox3(box: Box3): types.IFlatMesh;
|
|
23
|
+
static toFlatMesh(mesh: types.IMesh): types.IFlatMesh;
|
|
24
|
+
static toMesh(mesh: types.IFlatMesh): types.IMesh;
|
|
25
|
+
static clone<MeshType extends types.IFlatMesh>(mesh: MeshType): MeshType;
|
|
26
|
+
static merge(...meshes: types.IFlatMesh[]): types.IFlatMesh;
|
|
27
|
+
/**
|
|
28
|
+
* 将 mesh 投影到 xy 平面,并返回其轮廓线
|
|
29
|
+
* @param mesh
|
|
30
|
+
* @returns 返回的轮廓线按含内环多边形列表进行组织
|
|
31
|
+
*/
|
|
32
|
+
static getContour(mesh: types.IFlatMesh): types.IXY[][][];
|
|
33
|
+
/**
|
|
34
|
+
* 计算 mesh 与 line 的交点
|
|
35
|
+
* @param mesh
|
|
36
|
+
* @param line
|
|
37
|
+
* @returns 返回交点在 line 上的参数,并按从小到大排序
|
|
38
|
+
*/
|
|
39
|
+
static intersectLine(mesh: types.IFlatMesh, line: Ln3): number[];
|
|
40
|
+
/**
|
|
41
|
+
* 裁切 mesh,仅保留 plane 上方的三角面片。方法支持多组 uv,支持多组mesh,输出为裁切后的mesh以及对应的之前的mesh,补面生成的mesh对应为undefined
|
|
42
|
+
* @example 若有 a、b 两组 uv,则 uv 的表达为: [a0.x, a0.y, a1.x, a1.y ... aN.x, aN.y, b0.x, b0.y, b1.x, b1.y ... bN.x, bN.y]
|
|
43
|
+
* @param mesh 待裁切网格,支持多组 uv 数据
|
|
44
|
+
* @param coord 切平面所在坐标系
|
|
45
|
+
* @param fillClip 是否要对裁切面进行补面
|
|
46
|
+
* @param xRange 当指定 xRange 参数时,仅对 xRange 范围内部分进行裁切
|
|
47
|
+
* @param interpolateFunction 额外插值函数。clip 函数会默认对顶点坐标、法向、uv进行插值,可通过该插值函数进行额外插值。例如,对于含有骨骼的模型,可传入 MeshUtil.clipBoneInterpolation
|
|
48
|
+
*/
|
|
49
|
+
static clipSeperate<MeshType extends types.IFlatMesh>(meshes: MeshType[], coord: Coord3, fillClip?: boolean, xRange?: types.IInterval[], interpolateFunction?: (oldMesh: MeshType, newMesh: MeshType, vertexIndex1: number, vertexIndex2: number, weight1: number) => void): Map<MeshType, MeshType | undefined>;
|
|
50
|
+
/**
|
|
51
|
+
* 裁切 mesh,仅保留 plane 上方的三角面片。方法支持多组 uv。
|
|
52
|
+
* @example 若有 a、b 两组 uv,则 uv 的表达为: [a0.x, a0.y, a1.x, a1.y ... aN.x, aN.y, b0.x, b0.y, b1.x, b1.y ... bN.x, bN.y]
|
|
53
|
+
* @param mesh 待裁切网格,支持多组 uv 数据
|
|
54
|
+
* @param coord 切平面所在坐标系
|
|
55
|
+
* @param fillClip 是否要对裁切面进行补面
|
|
56
|
+
* @param xRange 当指定 xRange 参数时,仅对 xRange 范围内部分进行裁切
|
|
57
|
+
* @param interpolateFunction 额外插值函数。clip 函数会默认对顶点坐标、法向、uv进行插值,可通过该插值函数进行额外插值。例如,对于含有骨骼的模型,可传入 MeshUtil.clipBoneInterpolation
|
|
58
|
+
*/
|
|
59
|
+
static clip<MeshType extends types.IFlatMeshPlus>(mesh: MeshType, coord: Coord3, fillClip?: boolean, xRange?: types.IInterval, interpolateFunction?: (oldMesh: MeshType, newMesh: MeshType, vertexIndex1: number, vertexIndex2: number, weight1: number) => void): MeshType;
|
|
60
|
+
/**
|
|
61
|
+
* clip 函数可选用的插值函数
|
|
62
|
+
* @param oldMesh
|
|
63
|
+
* @param newMesh
|
|
64
|
+
* @param vertexIndex1
|
|
65
|
+
* @param vertexIndex2
|
|
66
|
+
* @param weight1
|
|
67
|
+
*/
|
|
68
|
+
static clipBoneInterpolation(oldMesh: types.IBoneFlatMesh, newMesh: types.IBoneFlatMesh, vertexIndex1: number, vertexIndex2: number, weight1: number): void;
|
|
69
|
+
/**
|
|
70
|
+
* brep转mesh
|
|
71
|
+
* @param brep BrepBody
|
|
72
|
+
* @param discreteParams 离散参数
|
|
73
|
+
* @returns types.IFlatMesh
|
|
74
|
+
*/
|
|
75
|
+
static brepToMesh(brep: BrepBody | Shell, discreteParams?: DiscreteParam): types.IFlatMesh;
|
|
76
|
+
/**
|
|
77
|
+
* 扫掠算法
|
|
78
|
+
* @param coordinate 扫描轮廓所在的局部坐标系
|
|
79
|
+
* @param polygon2d 扫描轮廓
|
|
80
|
+
* @param path3d 扫描路径
|
|
81
|
+
* @param discreteParams 离散参数
|
|
82
|
+
* @param adjustProfile 自动调整扫描轮廓,垂直于路径
|
|
83
|
+
* @param adjustPath 自动调整扫描路径,寻找起始路径(距离近,且角度大)
|
|
84
|
+
* @returns types.IFlatMesh
|
|
85
|
+
*/
|
|
86
|
+
static sweep(coordinate: Coord3, polygon2d: Polygon, path3d: Curve3[], discreteParams?: DiscreteParam, adjustProfile?: boolean, adjustPath?: boolean): types.IFlatMesh;
|
|
87
|
+
/**
|
|
88
|
+
* 拉伸算法
|
|
89
|
+
* @param loop2ds 二维点集合
|
|
90
|
+
* @param coord 二维平面在三维空间中的坐标系
|
|
91
|
+
* @param offset 世界坐标系下的挤出方向
|
|
92
|
+
* @param isSmooth 法向量是否为均匀过渡,默认法向为非光滑,若指定该参数,需与loop2ds维度一致
|
|
93
|
+
*/
|
|
94
|
+
static extrude(loop2ds: types.IXY[][], coord: Coord3, offset: types.IXYZ, isSmooth?: boolean[][]): types.IFlatMesh;
|
|
95
|
+
/**
|
|
96
|
+
* 拉伸算法
|
|
97
|
+
* @param loop2ds 二维点集合
|
|
98
|
+
* @param coord 二维平面在三维空间中的坐标系
|
|
99
|
+
* @param offset 世界坐标系下的挤出方向
|
|
100
|
+
* @param isSmooth 法向量是否为均匀过渡,默认法向为非光滑,若指定该参数,需与loop2ds维度一致
|
|
101
|
+
*/
|
|
102
|
+
static extrudeSeperateFaces(loop2ds: types.IXY[][], coord: Coord3, offset: types.IXYZ, isSmooth?: boolean[][]): {
|
|
103
|
+
top: types.IFlatMesh;
|
|
104
|
+
bottom: types.IFlatMesh;
|
|
105
|
+
sides: types.IFlatMesh[][];
|
|
106
|
+
};
|
|
107
|
+
/**
|
|
108
|
+
* 平面切割mesh,同时计算平面切割时部分,补面的uvTransform
|
|
109
|
+
*/
|
|
110
|
+
private static _clip;
|
|
111
|
+
private static _fillClip;
|
|
112
|
+
private static _fillClipSeperate;
|
|
113
|
+
private static _distanceToPlane;
|
|
114
|
+
private static _isNext;
|
|
115
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { Tol } from '../../base/tol';
|
|
2
|
+
import { Curve2 } from '../../geometry/curve2';
|
|
3
|
+
import { EvolutionMap } from '../../topology/evolution_map';
|
|
4
|
+
export declare class Loop2dOffset {
|
|
5
|
+
static execute(curves: Curve2[], offsetDist: number, tol?: Tol, isMerge?: boolean, offsetIndexes?: number[]): {
|
|
6
|
+
loops: Curve2[][];
|
|
7
|
+
evolution: EvolutionMap<Curve2>;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* 根据给定偏移量,偏置平面曲线,保证曲线首尾相接
|
|
11
|
+
* @param curves 待偏置的曲线组
|
|
12
|
+
* @param offsetDist 平面方向偏移量。关于偏移方向:以第一条curve为准,正值的offset就是第一条curve的右边;负值的offset就是第一条curve的左边
|
|
13
|
+
*/
|
|
14
|
+
static offsetCurve2dList(curves: Curve2[], offsetDist: number): {
|
|
15
|
+
curveList: Curve2[];
|
|
16
|
+
evolution: EvolutionMap<Curve2>;
|
|
17
|
+
};
|
|
18
|
+
private static _isDegeneratedCurve2d;
|
|
19
|
+
private static _connectCurve2ds;
|
|
20
|
+
private static _makeJoints;
|
|
21
|
+
private static _findLoop2ds;
|
|
22
|
+
}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { Polygon } from '../../topology/polygon';
|
|
2
|
+
import { Curve2 } from '../../geometry/curve2';
|
|
3
|
+
export interface IPolygonOffsetResult {
|
|
4
|
+
/**
|
|
5
|
+
* 偏移的结果
|
|
6
|
+
*/
|
|
7
|
+
offsetPolygon: Polygon;
|
|
8
|
+
/**
|
|
9
|
+
* 结果和原始曲线之间的对应关系 new --> origin
|
|
10
|
+
*/
|
|
11
|
+
evolution?: Map<Curve2, Curve2>;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* polygon的offset
|
|
15
|
+
*/
|
|
16
|
+
export declare class PolygonOffset {
|
|
17
|
+
static execute(loop: Polygon, _delta: number, withEvolution?: boolean): IPolygonOffsetResult;
|
|
18
|
+
/**
|
|
19
|
+
* 偏移polygon中部分曲线
|
|
20
|
+
* @param polygon 路径
|
|
21
|
+
* @param _delta 偏移距离
|
|
22
|
+
* @param offsetIndexes 偏移曲线角标 number[][], [[loop角标, curve角标]]
|
|
23
|
+
* @param isMerge 是否合并和简化线段,默认true,如果不简化,有部分polygon可能会有一定问题。
|
|
24
|
+
*/
|
|
25
|
+
static offsetCurves(polygon: Polygon, _delta: number, offsetIndexes: number[][], isMerge?: boolean): Polygon;
|
|
26
|
+
private static _calEvolution;
|
|
27
|
+
}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { Tol } from '../../base/tol';
|
|
2
|
+
import { Vec } from '../../base/vec';
|
|
3
|
+
import { IArc, ILine, IOffsetCurve, INurbsCurve, IExtendCurve } from '../../type_define/i_geometry';
|
|
4
|
+
import { Arc2 } from '../../geometry/arc2d';
|
|
5
|
+
import { Arc3 } from '../../geometry/arc3d';
|
|
6
|
+
import { Ln2 } from '../../geometry/ln2';
|
|
7
|
+
import { Ln3 } from '../../geometry/ln3';
|
|
8
|
+
import { OffsetCurve3 } from '../../geometry/offset_curve3';
|
|
9
|
+
import { OffsetCurve2 } from '../../geometry/offset_curve2';
|
|
10
|
+
import { Curve3 } from '../../geometry/curve3d';
|
|
11
|
+
import { Curve2 } from '../../geometry/curve2';
|
|
12
|
+
import { Curve } from '../../geometry/curve';
|
|
13
|
+
export declare class CurvesColinear {
|
|
14
|
+
static curve3ds(curve1: Curve3, curve2: Curve3, tol?: Tol): boolean;
|
|
15
|
+
static curve2ds(curve1: Curve2, curve2: Curve2, tol?: Tol): boolean;
|
|
16
|
+
static lines(line1: Ln2, line2: Ln2, tol?: Tol): boolean;
|
|
17
|
+
static lines(line1: Ln3, line2: Ln3, tol?: Tol): boolean;
|
|
18
|
+
static lines<VectorType extends Vec>(line1: ILine<VectorType>, line2: ILine<VectorType>, tol?: Tol): boolean;
|
|
19
|
+
static arcs(arc1: Arc3, arc2: Arc3, tol?: Tol): boolean;
|
|
20
|
+
static arcs(arc1: Arc2, arc2: Arc2, tol?: Tol): boolean;
|
|
21
|
+
static arcs<VectorType extends Vec>(arc1: IArc<VectorType>, arc2: IArc<VectorType>, tol: Tol): boolean;
|
|
22
|
+
static areArcsSameDirection<VectorType extends Vec>(arc1: IArc<VectorType>, arc2: IArc<VectorType>): boolean;
|
|
23
|
+
static offsetCurves(offCurv1: OffsetCurve3, offCurv2: OffsetCurve3, tol?: Tol): boolean;
|
|
24
|
+
static offsetCurves(offCurv1: OffsetCurve2, offCurv2: OffsetCurve2, tol?: Tol): boolean;
|
|
25
|
+
static offsetCurves<VectorType extends Vec>(offCurv1: IOffsetCurve<VectorType>, offCurv2: IOffsetCurve<VectorType>, tol: Tol): boolean;
|
|
26
|
+
static extendCurves<VectorType extends Vec>(etdCurv1: IExtendCurve<VectorType>, etdCurv2: IExtendCurve<VectorType>, tol: Tol): boolean;
|
|
27
|
+
/**
|
|
28
|
+
* 采用采样的方式,判断 crv 在 range 范围内是否与 crv0 重合
|
|
29
|
+
* @param crv0
|
|
30
|
+
* @param crv
|
|
31
|
+
* @param range
|
|
32
|
+
* @param tol
|
|
33
|
+
* @param pointCount
|
|
34
|
+
* @returns
|
|
35
|
+
*/
|
|
36
|
+
static testBySamples<VectorType extends Vec>(crv0: Curve<VectorType>, crv: Curve<VectorType>, range?: import("../..").Interval, tol?: Tol, pointCount?: number): boolean;
|
|
37
|
+
static nurbsCurves<VectorType extends Vec>(nurbsCurv1: INurbsCurve<VectorType>, nurbsCurv2: INurbsCurve<VectorType>, tol: Tol): boolean;
|
|
38
|
+
}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { Tol } from '../../base/tol';
|
|
2
|
+
import { Vec } from '../../base/vec';
|
|
3
|
+
import { Arc2 } from '../../geometry/arc2d';
|
|
4
|
+
import { Arc3 } from '../../geometry/arc3d';
|
|
5
|
+
import { Curve2 } from '../../geometry/curve2';
|
|
6
|
+
import { Curve3 } from '../../geometry/curve3d';
|
|
7
|
+
import { Ln2 } from '../../geometry/ln2';
|
|
8
|
+
import { Ln3 } from '../../geometry/ln3';
|
|
9
|
+
import { EvolutionMap } from '../../topology/evolution_map';
|
|
10
|
+
import { IArc, ILine, INurbsCurve, IOffsetCurve } from '../../type_define/i_geometry';
|
|
11
|
+
export declare enum MergeReverseMode {
|
|
12
|
+
merge = 0,
|
|
13
|
+
remove = 1
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* 尝试将两曲线的合并,并返回合并后的曲线
|
|
17
|
+
*/
|
|
18
|
+
export declare class CurvesMerge {
|
|
19
|
+
/**
|
|
20
|
+
* 将loop简化:合并相邻的共线的curve
|
|
21
|
+
* @param curves
|
|
22
|
+
* @param tol
|
|
23
|
+
*/
|
|
24
|
+
static mergeLoopCurve3ds(curves: Curve3[], tol?: Tol): Curve3[];
|
|
25
|
+
static mergeCurves3ds(curves: Curve3[], tol?: Tol): Curve3[];
|
|
26
|
+
static mergeCurves2ds(curves: Curve2[], tol?: Tol): Curve2[];
|
|
27
|
+
/**
|
|
28
|
+
* 尝试合并曲线,返回合并后的结果。若无法合并,则返回 undefined
|
|
29
|
+
* @param curve1
|
|
30
|
+
* @param curve2
|
|
31
|
+
* @param mode merge:无论曲线方向,一律合并;remove:当曲线反向时,会将反向部分从合并结果中去除
|
|
32
|
+
* @param tol
|
|
33
|
+
*/
|
|
34
|
+
static curve2ds(curve1: Curve2, curve2: Curve2, mode?: MergeReverseMode, tol?: Tol): Curve2[] | undefined;
|
|
35
|
+
/**
|
|
36
|
+
* 尝试合并曲线,返回合并后的结果。若无法合并,则返回 undefined
|
|
37
|
+
* @param curve1
|
|
38
|
+
* @param curve2
|
|
39
|
+
* @param mode merge:无论曲线方向,一律合并;remove:当曲线反向时,会将反向部分从合并结果中去除
|
|
40
|
+
* @param tol
|
|
41
|
+
* @returns 演化关系,从新曲线映射到旧曲线
|
|
42
|
+
*/
|
|
43
|
+
static curve2dsEvolution(curve1: Curve2, curve2: Curve2, mode?: MergeReverseMode, tol?: Tol): EvolutionMap<Curve2> | undefined;
|
|
44
|
+
/**
|
|
45
|
+
* 尝试合并曲线,返回合并后的结果。若无法合并,则返回 undefined
|
|
46
|
+
* @param curve1
|
|
47
|
+
* @param curve2
|
|
48
|
+
* @param mode merge:无论曲线方向,一律合并;remove:当曲线反向时,会将反向部分从合并结果中去除
|
|
49
|
+
* @param tol
|
|
50
|
+
*/
|
|
51
|
+
static curve3ds(curve1: Curve3, curve2: Curve3, mode?: MergeReverseMode, tol?: Tol): Curve3[] | undefined;
|
|
52
|
+
/**
|
|
53
|
+
* 尝试合并曲线,返回合并后的结果。若无法合并,则返回 undefined
|
|
54
|
+
* @param curve1
|
|
55
|
+
* @param curve2
|
|
56
|
+
* @param mode merge:无论曲线方向,一律合并;remove:当曲线反向时,会将反向部分从合并结果中去除
|
|
57
|
+
* @param tol
|
|
58
|
+
* @returns 演化关系,从新曲线映射到旧曲线
|
|
59
|
+
*/
|
|
60
|
+
static curve3dsEvolution(curve1: Curve3, curve2: Curve3, mode?: MergeReverseMode, tol?: Tol): EvolutionMap<Curve3> | undefined;
|
|
61
|
+
static lines(line1: Ln2, line2: Ln2, mode?: MergeReverseMode, tol?: Tol): Ln2[] | undefined;
|
|
62
|
+
static lines(line1: Ln3, line2: Ln3, mode?: MergeReverseMode, tol?: Tol): Ln3[] | undefined;
|
|
63
|
+
static lines<VectorType extends Vec>(line1: ILine<VectorType>, line2: ILine<VectorType>, mode?: MergeReverseMode, tol?: Tol): ILine<VectorType>[] | undefined;
|
|
64
|
+
static linesEvolution<VectorType extends Vec>(line1: ILine<VectorType>, line2: ILine<VectorType>, mode?: MergeReverseMode, tol?: Tol): EvolutionMap<ILine<VectorType>> | undefined;
|
|
65
|
+
static arcs(arc1: Arc2, arc2: Arc2, mode?: MergeReverseMode, tol?: Tol): Arc2[] | undefined;
|
|
66
|
+
static arcs(arc1: Arc3, arc2: Arc3, mode?: MergeReverseMode, tol?: Tol): Arc3[] | undefined;
|
|
67
|
+
static arcs<VectorType extends Vec>(arc1: IArc<VectorType>, arc2: IArc<VectorType>, mode?: MergeReverseMode, tol?: Tol): IArc<VectorType>[] | undefined;
|
|
68
|
+
static arcsEvolution<VectorType extends Vec>(arc1: IArc<VectorType>, arc2: IArc<VectorType>, mode?: MergeReverseMode, tol?: Tol): EvolutionMap<IArc<VectorType>> | undefined;
|
|
69
|
+
static nurbsEvolution<VectorType extends Vec>(nurbs1: INurbsCurve<VectorType>, nurbs2: INurbsCurve<VectorType>, mode?: MergeReverseMode, tol?: Tol): EvolutionMap<INurbsCurve<VectorType>> | undefined;
|
|
70
|
+
static offsetCurvesEvolution<VectorType extends Vec>(crv1: IOffsetCurve<VectorType>, crv2: IOffsetCurve<VectorType>, mode?: MergeReverseMode, tol?: Tol): EvolutionMap<IOffsetCurve<VectorType>> | undefined;
|
|
71
|
+
private static _simpleCurves;
|
|
72
|
+
private static _nurbsRange;
|
|
73
|
+
private static _periodCurves;
|
|
74
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Tol } from '../../base/tol';
|
|
2
|
+
import { Vec } from '../../base/vec';
|
|
3
|
+
import { Curve2 } from '../../geometry/curve2';
|
|
4
|
+
import { Curve3 } from '../../geometry/curve3d';
|
|
5
|
+
import { IArc, ILine, IOffsetCurve, INurbsCurve, IExtendCurve } from '../../type_define/i_geometry';
|
|
6
|
+
import { ICurvesOverlapInfo } from './i_overlap';
|
|
7
|
+
import { Curve } from '../../geometry/curve';
|
|
8
|
+
/**
|
|
9
|
+
* 计算两曲线的重合情况
|
|
10
|
+
*/
|
|
11
|
+
export declare class CurvesOverlap {
|
|
12
|
+
static curve2ds(curve1: Curve2, curve2: Curve2, tol?: Tol): ICurvesOverlapInfo[];
|
|
13
|
+
static curve3ds(curve1: Curve3, curve2: Curve3, tol?: Tol): ICurvesOverlapInfo[];
|
|
14
|
+
static lines<VectorType extends Vec>(line1: ILine<VectorType>, line2: ILine<VectorType>, tol?: Tol): ICurvesOverlapInfo[];
|
|
15
|
+
static arcs<VectorType extends Vec>(arc1: IArc<VectorType>, arc2: IArc<VectorType>, tol?: Tol): ICurvesOverlapInfo[];
|
|
16
|
+
static offsetCurves<VectorType extends Vec>(offCurv1: IOffsetCurve<VectorType>, offCurv2: IOffsetCurve<VectorType>, tol?: Tol): ICurvesOverlapInfo[] | undefined;
|
|
17
|
+
static extendCurves<VectorType extends Vec>(etdCurv1: IExtendCurve<VectorType>, etdCurv2: IExtendCurve<VectorType>, tol?: Tol): ICurvesOverlapInfo[] | undefined;
|
|
18
|
+
static nurbsCurves<VectorType extends Vec>(nurbsCurv1: INurbsCurve<VectorType>, nurbsCurv2: INurbsCurve<VectorType>, tol?: Tol): ICurvesOverlapInfo[] | undefined;
|
|
19
|
+
static generalCurves<VectorType extends Vec>(crv1: Curve<VectorType>, crv2: Curve<VectorType>, tol?: Tol, testPointCount?: number): ICurvesOverlapInfo[];
|
|
20
|
+
private static _linesOverlap;
|
|
21
|
+
private static _arcsOverlap;
|
|
22
|
+
private static _offsetCurvesOverlap;
|
|
23
|
+
private static _extendCurvesOverlap;
|
|
24
|
+
private static _nurbsCurvesOverlap;
|
|
25
|
+
/**
|
|
26
|
+
*
|
|
27
|
+
* @param crv1 openCrv
|
|
28
|
+
* @param crv2
|
|
29
|
+
* @param tol
|
|
30
|
+
* @param testPointCount
|
|
31
|
+
* @returns
|
|
32
|
+
*/
|
|
33
|
+
private static _generalOpenCurves;
|
|
34
|
+
}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { IPoint, Paths } from "./pave";
|
|
2
|
+
export declare function clipBlocks2Geometry(result: {
|
|
3
|
+
blocks: {
|
|
4
|
+
data: Map<number, Paths[] | boolean>;
|
|
5
|
+
offset: IPoint;
|
|
6
|
+
};
|
|
7
|
+
joints: Paths[];
|
|
8
|
+
}[], unitDefs: {
|
|
9
|
+
joint: Paths;
|
|
10
|
+
blocks: Paths[];
|
|
11
|
+
coords: number[][][];
|
|
12
|
+
}): {
|
|
13
|
+
joints: {
|
|
14
|
+
vertices: number[];
|
|
15
|
+
indices: number[];
|
|
16
|
+
uvs: number[];
|
|
17
|
+
};
|
|
18
|
+
blocks: {
|
|
19
|
+
vertices: Float32Array<ArrayBuffer>;
|
|
20
|
+
uvs: Float32Array<ArrayBuffer>;
|
|
21
|
+
indices: Uint32Array<ArrayBuffer>;
|
|
22
|
+
unitIndex: number;
|
|
23
|
+
}[];
|
|
24
|
+
};
|
|
25
|
+
export declare function fullBlocks2Geometry(fullBlocks: IPoint[], unitDef: {
|
|
26
|
+
joint: Paths;
|
|
27
|
+
blocks: Paths[];
|
|
28
|
+
coords: number[][][];
|
|
29
|
+
}): {
|
|
30
|
+
blocks: {
|
|
31
|
+
uvs: Float32Array<ArrayBuffer>;
|
|
32
|
+
vertices: Float32Array<ArrayBuffer>;
|
|
33
|
+
indices: Uint32Array<ArrayBuffer>;
|
|
34
|
+
}[];
|
|
35
|
+
joints: {
|
|
36
|
+
vertices: Float32Array<ArrayBuffer>;
|
|
37
|
+
indices: Uint32Array<ArrayBuffer>;
|
|
38
|
+
uvs: Float32Array<ArrayBuffer>;
|
|
39
|
+
};
|
|
40
|
+
};
|
|
41
|
+
/**
|
|
42
|
+
* 三角化
|
|
43
|
+
* @param paths
|
|
44
|
+
* @returns
|
|
45
|
+
*/
|
|
46
|
+
export declare function triangle(paths: Paths): {
|
|
47
|
+
uvs: number[];
|
|
48
|
+
indices: number[];
|
|
49
|
+
vertices: number[];
|
|
50
|
+
};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Paths64, PolyPath64 } from 'clipper2-wasm/dist/clipper2z';
|
|
2
|
+
import { IPoint, Path, Paths } from './pave';
|
|
3
|
+
export interface Point<T extends bigint | number> {
|
|
4
|
+
x: T;
|
|
5
|
+
y: T;
|
|
6
|
+
}
|
|
7
|
+
export declare function dot(v1: IPoint, another: IPoint): number;
|
|
8
|
+
export declare function getUVMinMax(uDirNormal: IPoint, vDirNormal: IPoint, path: IPoint[], origin: IPoint): {
|
|
9
|
+
uMin: number;
|
|
10
|
+
uMax: number;
|
|
11
|
+
vMin: number;
|
|
12
|
+
vMax: number;
|
|
13
|
+
};
|
|
14
|
+
export declare function getParamAtUV(uDirNormal: IPoint, vDirNormal: IPoint, another: IPoint): number[];
|
|
15
|
+
export declare function getPointAt(dir: IPoint, param: number): {
|
|
16
|
+
x: number;
|
|
17
|
+
y: number;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
*
|
|
21
|
+
* @param data [
|
|
22
|
+
[this._xDir.x, this._xDir.y, 0],
|
|
23
|
+
[this._yDir.x, this._yDir.y, 0],
|
|
24
|
+
[this._origin.x, this._origin.y, 1],
|
|
25
|
+
],
|
|
26
|
+
*/
|
|
27
|
+
export declare function applyMatrix(arr: number[], start: number, matrix: number[][]): void;
|
|
28
|
+
export declare function applyMatrixToPt(pt: IPoint, matrix: number[][]): {
|
|
29
|
+
x: number;
|
|
30
|
+
y: number;
|
|
31
|
+
};
|
|
32
|
+
export declare function multiplyMatrix(A: number[][], B: number[][]): number[][];
|
|
33
|
+
export declare function inv(square: number[][]): number[][];
|
|
34
|
+
export declare function getBBox(bg: IPoint[][], offset?: number): {
|
|
35
|
+
right: number;
|
|
36
|
+
left: number;
|
|
37
|
+
bottom: number;
|
|
38
|
+
top: number;
|
|
39
|
+
};
|
|
40
|
+
export declare function convert2Js(solution: Paths64, precise: number): Paths;
|
|
41
|
+
export declare function toArray(path: Path, reversed?: boolean): number[];
|
|
42
|
+
export declare function addPolyPathToResult(solution: PolyPath64, joints: Paths[], precise: number, holes: Point<bigint>[][]): void;
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { IPoint, Paths } from './pave';
|
|
2
|
+
import { IPavePattern, IPolygon } from './pattern_util';
|
|
3
|
+
export declare class Pattern {
|
|
4
|
+
private precise;
|
|
5
|
+
private recOffset;
|
|
6
|
+
private jointOffset;
|
|
7
|
+
private _clip;
|
|
8
|
+
private _clipLines;
|
|
9
|
+
private _unitJoints;
|
|
10
|
+
private _unitsBlock;
|
|
11
|
+
private _holes;
|
|
12
|
+
private _unitRect;
|
|
13
|
+
private _unitsPaths;
|
|
14
|
+
private _bgRects;
|
|
15
|
+
patternData: IPavePattern;
|
|
16
|
+
private _clipper;
|
|
17
|
+
private _enableGap;
|
|
18
|
+
constructor(patternData: IPavePattern, background: IPolygon, enableGap?: boolean);
|
|
19
|
+
getUnit(): {
|
|
20
|
+
joint: Paths;
|
|
21
|
+
blocks: Paths[];
|
|
22
|
+
coords: number[][][];
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* 单元box与边界是否相交
|
|
26
|
+
* @param offset
|
|
27
|
+
* @returns -1: outer, 0: 不与线相交, 1: 与线相交, 2: box中有洞
|
|
28
|
+
*/
|
|
29
|
+
isUnitXBackground(offset: IPoint): 2 | 1 | 0 | -1;
|
|
30
|
+
/**
|
|
31
|
+
* 计算clip
|
|
32
|
+
* @param offset 偏移
|
|
33
|
+
* @param canUseHole 是否可以使用切砖缝的洞作为砖
|
|
34
|
+
* @returns
|
|
35
|
+
*/
|
|
36
|
+
execute(offset: IPoint, canUseHole?: boolean): {
|
|
37
|
+
blocks: {
|
|
38
|
+
data: Map<number, boolean | Paths[]>;
|
|
39
|
+
offset: IPoint;
|
|
40
|
+
};
|
|
41
|
+
joints: Paths[];
|
|
42
|
+
} | undefined;
|
|
43
|
+
}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Coord2, Curve2 } from '../..';
|
|
2
|
+
import { types } from '../../type_define/i_types';
|
|
3
|
+
import { IPoint, Paths } from './pave';
|
|
4
|
+
export declare class RegionMesh {
|
|
5
|
+
buffer: types.IFlatMesh;
|
|
6
|
+
material: number;
|
|
7
|
+
}
|
|
8
|
+
export declare class IPavePattern {
|
|
9
|
+
gap: {
|
|
10
|
+
unit: number;
|
|
11
|
+
material: number;
|
|
12
|
+
};
|
|
13
|
+
units: {
|
|
14
|
+
outer: Curve2[];
|
|
15
|
+
holes: Curve2[][];
|
|
16
|
+
materials: number[];
|
|
17
|
+
seed: number;
|
|
18
|
+
coord: Coord2;
|
|
19
|
+
}[];
|
|
20
|
+
udir: types.IXY;
|
|
21
|
+
vdir: types.IXY;
|
|
22
|
+
coord: Coord2;
|
|
23
|
+
}
|
|
24
|
+
export declare class IPolygon {
|
|
25
|
+
outer: Curve2[];
|
|
26
|
+
holes: Curve2[][];
|
|
27
|
+
}
|
|
28
|
+
export declare class PatternUtil {
|
|
29
|
+
/**
|
|
30
|
+
* 铺贴
|
|
31
|
+
* @param pattern 铺贴模板
|
|
32
|
+
* @param background 铺贴区域
|
|
33
|
+
* @param enableGap 是否生成砖缝
|
|
34
|
+
* @returns
|
|
35
|
+
*/
|
|
36
|
+
static getRegionMesh(pavePattern: IPavePattern, background: IPolygon, enableGap?: boolean): RegionMesh[];
|
|
37
|
+
static executeClip(patternData: IPavePattern, background: IPolygon, enableGap?: boolean): {
|
|
38
|
+
clipBlocks: {
|
|
39
|
+
blocks: {
|
|
40
|
+
data: Map<number, Paths[] | boolean>;
|
|
41
|
+
offset: IPoint;
|
|
42
|
+
};
|
|
43
|
+
joints: Paths[];
|
|
44
|
+
}[];
|
|
45
|
+
fullBlocks: IPoint[];
|
|
46
|
+
unit: {
|
|
47
|
+
joint: Paths;
|
|
48
|
+
blocks: Paths[];
|
|
49
|
+
coords: number[][][];
|
|
50
|
+
};
|
|
51
|
+
};
|
|
52
|
+
private static geos2IMesh;
|
|
53
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import { MainModule } from "clipper2-wasm/dist/clipper2z";
|
|
2
|
+
export interface IPoint {
|
|
3
|
+
x: number;
|
|
4
|
+
y: number;
|
|
5
|
+
}
|
|
6
|
+
export type Path = IPoint[];
|
|
7
|
+
export type Paths = Path[];
|
|
8
|
+
export declare const allUnits: {
|
|
9
|
+
x: number;
|
|
10
|
+
y: number;
|
|
11
|
+
}[][];
|
|
12
|
+
export declare const unit: {
|
|
13
|
+
x: number;
|
|
14
|
+
y: number;
|
|
15
|
+
}[];
|
|
16
|
+
export declare const unitBlock: {
|
|
17
|
+
x: number;
|
|
18
|
+
y: number;
|
|
19
|
+
}[];
|
|
20
|
+
export declare function toArray(path: Path, reversed?: boolean): number[];
|
|
21
|
+
export declare function clipBlock(unit: Path, block: Path, bg: Paths, clipperLib: MainModule): (offset: IPoint, onlyEdgeX?: boolean) => {
|
|
22
|
+
joint: Paths;
|
|
23
|
+
tile: Paths;
|
|
24
|
+
isX: boolean;
|
|
25
|
+
isFull: boolean;
|
|
26
|
+
offset: IPoint;
|
|
27
|
+
} | undefined;
|
|
28
|
+
export declare function getBBox(bg: IPoint[]): {
|
|
29
|
+
maxX: number;
|
|
30
|
+
minX: number;
|
|
31
|
+
maxY: number;
|
|
32
|
+
minY: number;
|
|
33
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Curve } from '../../geometry/curve';
|
|
2
|
+
import { CurvesPJType } from './pj_type';
|
|
3
|
+
import { Vec } from '../../base/vec';
|
|
4
|
+
import { Interval } from '../../base/interval';
|
|
5
|
+
export interface ISimpleXInfo {
|
|
6
|
+
param1: number;
|
|
7
|
+
param2: number;
|
|
8
|
+
isOverlap: boolean;
|
|
9
|
+
overlap1?: Interval;
|
|
10
|
+
overlap2?: Interval;
|
|
11
|
+
overlapDirection?: boolean;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
*
|
|
15
|
+
* 两曲线间的重叠关系判断:不重叠、重叠、完全重叠
|
|
16
|
+
*/
|
|
17
|
+
export declare class CurvesOverlapJudge {
|
|
18
|
+
static execute<PointType extends Vec>(curve1: Curve<PointType>, curve2: Curve<PointType>, distanceTol?: number, angleTol?: number): CurvesPJType;
|
|
19
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { CurvesPJType } from './pj_type';
|
|
2
|
+
import { Vec } from '../../base/vec';
|
|
3
|
+
import { Curve } from '../../geometry/curve';
|
|
4
|
+
/**
|
|
5
|
+
* #### 2.两曲线间的位置关系`curveToCurve`:重叠,相交,不相交
|
|
6
|
+
*/
|
|
7
|
+
declare class CurvesPJ {
|
|
8
|
+
/**
|
|
9
|
+
* 曲线与曲线的位置关系判断:相交,重叠,不相交
|
|
10
|
+
*
|
|
11
|
+
* 支持 Ln2 Arc2
|
|
12
|
+
* @param curve1
|
|
13
|
+
* @param curve2
|
|
14
|
+
* @param tolerance
|
|
15
|
+
* @returns `CurvesPJType`
|
|
16
|
+
*/
|
|
17
|
+
static execute<PointType extends Vec>(curve1: Curve<PointType>, curve2: Curve<PointType>, distanceTol?: number, angleTol?: number): CurvesPJType;
|
|
18
|
+
}
|
|
19
|
+
export { CurvesPJ };
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { LoopsPJType } from './pj_type';
|
|
2
|
+
import { Loop } from '../../topology/loop';
|
|
3
|
+
declare class LoopsPJ {
|
|
4
|
+
/**
|
|
5
|
+
* Loop1与Loop2的位置关系判断,以loop2位基准
|
|
6
|
+
* @param loop1
|
|
7
|
+
* @param loop2
|
|
8
|
+
* @param tolerance
|
|
9
|
+
*/
|
|
10
|
+
static execute(loop1: Loop, loop2: Loop, tol?: number, tangentIsIntersect?: boolean): LoopsPJType;
|
|
11
|
+
private static _polygonIsValid;
|
|
12
|
+
}
|
|
13
|
+
export { LoopsPJ };
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 曲线间位置关系类型
|
|
3
|
+
*
|
|
4
|
+
* 重叠,十位数为1:
|
|
5
|
+
* - OVERLAP 部分或完全重叠x
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
*
|
|
10
|
+
* 相交,十位数为2
|
|
11
|
+
* - INTERSECT_IN 在曲线内部相交
|
|
12
|
+
* - INTERSECT_ON 在曲线端点处相交
|
|
13
|
+
*
|
|
14
|
+
* 不相交(为0)
|
|
15
|
+
* - NOT_INTERSECT 不相交
|
|
16
|
+
*/
|
|
17
|
+
declare enum CurvesPJType {
|
|
18
|
+
NOT_INTERSECT = 0,
|
|
19
|
+
OVERLAP = 10,
|
|
20
|
+
TOTALLY_OVERLAP = 11,
|
|
21
|
+
INTERSECT_IN = 21,
|
|
22
|
+
INTERSECT_ON = 22
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* 点与loop的关系类型:
|
|
26
|
+
* - OUT 点在loop外部
|
|
27
|
+
* - ON 点在loop边界上
|
|
28
|
+
* - IN 点在loop内部
|
|
29
|
+
*/
|
|
30
|
+
declare enum PtLoopPJType {
|
|
31
|
+
OUT = 0,
|
|
32
|
+
ONEDGE = -1,
|
|
33
|
+
ONVERTEX = -2,
|
|
34
|
+
IN = 1
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* loop与loop的关系
|
|
38
|
+
*/
|
|
39
|
+
declare enum LoopsPJType {
|
|
40
|
+
INTERSECT = "x",
|
|
41
|
+
EQUAL = "eq",
|
|
42
|
+
IN = "in",
|
|
43
|
+
CONTAIN = "ct",
|
|
44
|
+
OUT = "out"
|
|
45
|
+
}
|
|
46
|
+
export { CurvesPJType, PtLoopPJType, LoopsPJType };
|