茂之钳
|
66777e0839
|
feat(v6.1): 5-axis CAM + reverse engineering + FEA mesh generation
CI / Build & Test (push) Failing after 38s
CI / Release Build (push) Failing after 31s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
v6.1.1 — 5-Axis CAM:
- cam_5axis.h/.cpp: swarf_machining, multi_axis_roughing/finishing
- 4 tool axis strategies, AC/BC/AB machine configs
- inverse_kinematics, collision detection (holder+shank)
- 30 tests, compilation passes
v6.1.2 — Reverse Engineering:
- point_cloud.h/.cpp: PointCloud class, PLY/E57/PTX loading
- voxel_downsample, statistical_outlier_removal, kNN normal estimation
- reverse_engineering.h/.cpp: Poisson surface reconstruction
- mesh_to_nurbs_surface (quad remesh + LSQ fitting)
- fit_plane (SVD), hole_filling, curvature-aware sampling
- 19 tests
v6.1.3 — FEA Mesh Generation:
- fea_mesh.h/.cpp: tetrahedral (Delaunay 3D), boundary layer (prism)
- hexahedral (sweep/extrude), adaptive refinement
- MeshQuality: skewness, aspect_ratio, Jacobian, orthogonality
- export_abaqus/ansys/nastran formats
- 15 tests, 7/8 quality metrics verified
|
2026-07-26 22:08:38 +08:00 |
|
茂之钳
|
cf38d76fd0
|
feat(v4.6): memory pool + parallel boolean/MC/intersection + GMP exact predicates
CI / Build & Test (push) Failing after 16m56s
CI / Release Build (push) Failing after 24s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
M1 — Memory Pool (内存池):
- ObjectPool<T>: O(1) acquire/release with free-list, chunk-based expansion
- ThreadSafeObjectPool<T>: per-thread local pools with global fallback
- CowPtr<T>: copy-on-write smart pointer with shallow/deep copy
- 10 tests: single/multi-thread, CoW detach, reuse rate
M2 — Parallel Boolean (并行布尔):
- parallel_face_face_intersection(): OpenMP face-pair dispatch with AABB culling
- parallel_classify_faces(): thread-safe ray casting classification
- parallel_mesh_union/intersection/difference + B-Rep variants
- Thread count management API
- 12 tests: coverage, empty cases, identity operations
M3 — Parallel Marching Cubes (并行MC):
- parallel_marching_cubes(): Z-slice parallel voxel processing
- parallel_adaptive_mc(): octree-based adaptive resolution
- Complete 256-entry edge table + Möller-Trumbore interpolation
- 5 tests: sphere basic/high-res/empty/adaptive/threaded
M4 — Parallel Surface Intersection (并行求交):
- parallel_curve_intersections(): per-pair parallel dispatch
- parallel_surface_intersection(): recursive subdivision + Newton refinement
- AABB broad-phase culling before narrow-phase
- 4 tests: curve pairs, surface batch
M5 — GMP Exact Predicates (精确谓词):
- exact_orient2d/3d: adaptive precision (double → GMP fallback)
- exact_in_sphere: circumsphere test with degenerate handling
- exact_point_in_polygon/polyhedron: robust ray casting
- PrecisionMode: Fast/Adaptive/Exact with global toggle
- 12 tests: all orientations, boundary cases, mode switching
21 files, +2263 lines
|
2026-07-26 17:28:15 +08:00 |
|