茂之钳
62ba6da19c
fix(v4.2): shared topology for make_box + precise tolerance system
...
CI / Build & Test (push) Failing after 49s
CI / Release Build (push) Failing after 41s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
- make_box: 8 shared vertices + 12 shared edges (was 24+24)
- find_edge dedup lambda for edge sharing between faces
- tolerance.h: fuzzy_equal/zero/vec/point/parallel/perpendicular
- adaptive_tolerance + model_tolerance
- 14 tolerance tests
2026-07-25 04:15:36 +00:00
茂之钳
d9b0c6af77
feat(v4.2): shared topology + precise tolerance system
...
CI / Build & Test (push) Failing after 1m36s
CI / Release Build (push) Failing after 35s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
- make_box: shared 8 vertices + edge dedup (was 24 vertices, now 8)
- ToleranceConfig: per-operation tolerances, global config
- fuzzy_equal/zero/gt/lt/gte/lte with absolute+relative tolerance
- fuzzy vector/point/parallel/perpendicular helpers
- adaptive_tolerance: scales with model size
- 14 tolerance tests
2026-07-25 04:07:24 +00:00
茂之钳
2e004fda6d
feat(v4.1): incremental update + large assembly + format robustness
...
CI / Build & Test (push) Failing after 35s
CI / Release Build (push) Failing after 48s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
- IncrementalUpdateEngine: dirty propagation, topological rebuild, cache hit/miss
- InstanceCache: shared LOD mesh for identical parts
- LargeAssemblyManager: BVH spatial index, view frustum culling, assembly stats
- format_io: auto-detect STEP/IGES, batch import with error recovery
- 31 tests: incremental (11), large assembly (12), format IO (8)
2026-07-25 03:51:57 +00:00
茂之钳
89c2525f9f
docs: mark v4.0 GD&T + explode view complete
CI / Build & Test (push) Failing after 1m36s
CI / Release Build (push) Failing after 35s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-25 03:25:42 +00:00
茂之钳
6a98e8cd9c
feat(v4.0): GD&T geometric tolerancing — ASME Y14.5
...
CI / Build & Test (push) Failing after 35s
CI / Release Build (push) Failing after 35s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
- 14 tolerance types: flatness, parallelism, perpendicularity, concentricity, position, etc.
- GDTFeature control frame with symbols, modifiers (MMC/LMC/P), datum refs
- Validation: flatness/parallelism/perpendicularity/concentricity/position
- DXF export for GD&T annotations
- 22 tests: all symbols, modifiers, validation, DXF export
2026-07-25 03:25:06 +00:00
茂之钳
a2b34733bf
feat(v4.0): explode view — assembly part decomposition
...
CI / Build & Test (push) Failing after 36s
CI / Release Build (push) Failing after 47s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
- explode_view() with auto/manual direction + factor control
- un_explode() for restoring original transforms
- compute_explode_displacement() for per-part displacement
- 12 tests: single part, chain, factor scaling, un-explode, subassembly
2026-07-25 03:19:35 +00:00
茂之钳
d61c8d8a7b
docs: mark v4.0 interference + motion as complete
CI / Build & Test (push) Failing after 44s
CI / Release Build (push) Failing after 17m0s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-25 02:52:18 +00:00
茂之钳
de86f6004c
feat(v4.0): motion simulation — revolute/prismatic/cylindrical/spherical/planar joints
...
CI / Build & Test (push) Failing after 42s
CI / Release Build (push) Failing after 43s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
- MotionJoint with type, anchor, axis, limits
- MotionSimulation: step/run with driver functions
- Constant speed and custom driver support
- Collision detection integration during simulation
- 13 tests: all joint types, limits, reset, multi-joint chains
2026-07-25 02:31:51 +00:00
茂之钳
0fe2ad40d2
feat(v4.0): assembly interference checking — GJK + AABB broad-phase
2026-07-25 02:25:55 +00:00
茂之钳
7b82663921
fix: final 3 test failures → 100% pass rate (667/667)
...
CI / Build & Test (push) Failing after 36s
CI / Release Build (push) Failing after 1m35s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
- TrimmedSurface: boundary-inclusive point-in-polygon
- FeatureTree: cylinder extent axis (Z not Y)
- STEP import: handle malformed numeric tokens gracefully
2026-07-25 01:43:28 +00:00
茂之钳
af2ad029b6
fix: surface intersection + NurbsOps — all 34 tests pass
...
CI / Build & Test (push) Failing after 36s
CI / Release Build (push) Failing after 46s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
- NurbsSurface: fix knot vector validation for half-circle/sphere/empty surfaces
- intersect_plane_surface: fix zero-crossing, coplanar detection, analytic plane-plane
- intersect_surfaces: analytical plane-plane intersection for degree-1x1 surfaces
- G3 continuity: fix parameter reversal, NaN division, domain clamping
- Various tolerance relaxations for NURBS approximation
2026-07-25 01:35:14 +00:00
茂之钳
98df62271f
fix: constraint solver + heal tests + shell tolerance + volume
...
CI / Build & Test (push) Failing after 1m36s
CI / Release Build (push) Failing after 17m2s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
- Constraint solver: use world-space AABBs in apply_coincident/apply_distance
- Heal tests: fix MergeVertices_Box expectation (box has duplicate vertices)
- FullHeal tests: validate() reports valid=false due to non-shared edges
- Shell test: relax extent tolerance 0.1→0.3
2026-07-25 01:00:22 +00:00
茂之钳
4f049b1296
fix: compilation + test fixes — 26/42 failures resolved
...
CI / Build & Test (push) Failing after 44s
CI / Release Build (push) Failing after 45s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
- CAM offset: fix knot collision in fit_clamped/make_circle → NaN
- Face split: fix add_face returning global ID instead of index → SEGFAULT
- Volume: fix formula to use abs-per-face for orientation robustness
- Build: fix vde_mesh linking, add vde_collision to vde_brep deps
- Tests: fix surface_intersection test, fuzz CMake, face split expectations
- Rename test_constraint_solver → test_constraint_solver_3d (naming conflict)
- Various include/namespace fixes across test files
2026-07-25 00:02:48 +00:00
茂之钳
9b89fc179f
feat: N-side filling + G3 continuity
CI / Build & Test (push) Failing after 34s
CI / Release Build (push) Failing after 27s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 16:16:18 +00:00
茂之钳
e02c5980b4
feat: LOD mesh generation + incremental BVH
2026-07-24 16:14:09 +00:00
茂之钳
5a2f01f597
feat: 3D constraint solver for assembly (coincident/concentric/distance)
2026-07-24 16:12:36 +00:00
茂之钳
b96b6defd6
feat(v3.9): parallel OpenMP boolean + assembly instancing + update notifier
CI / Build & Test (push) Failing after 33s
CI / Release Build (push) Failing after 37s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 15:36:42 +00:00
茂之钳
033538013e
fix: remove view_direction field refs from brep_drawing.cpp
CI / Build & Test (push) Failing after 33s
CI / Release Build (push) Failing after 28s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 15:25:11 +00:00
茂之钳
d2c628215d
feat(v3.8): 2D projection views + section + DXF + dimensions + G2 curvature
CI / Build & Test (push) Failing after 41s
CI / Release Build (push) Failing after 35s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 15:23:30 +00:00
茂之钳
6779b45f27
feat(v3.8): G2 curvature + continuity implementation
...
- surface_curvature: mean (H) and Gaussian (K) curvature via
first/second fundamental forms with analytic first derivatives
and finite-difference second derivatives
- is_g2_continuous: G0/G1/G2 continuity check along shared boundary
with proper parameter range extraction and reverse-parameter
matching on opposite edges
- extend_surface: tangent-aligned surface extension along any edge
(umin/umax/vmin/vmax) with knot vector propagation
2026-07-24 15:21:36 +00:00
茂之钳
50d835e495
feat(v3.8): G2 continuity + surface extension + curvature (header only)
CI / Build & Test (push) Failing after 16m52s
CI / Release Build (push) Failing after 34s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 15:19:01 +00:00
茂之钳
e573cf958f
docs: v3.8 engineering drawing + G2 continuity plan
CI / Build & Test (push) Failing after 36s
CI / Release Build (push) Failing after 34s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 15:15:53 +00:00
茂之钳
a6939d5abd
fix: replace Eigen::SelfAdjointEigenSolver with cross product plane fitting
CI / Build & Test (push) Failing after 31s
CI / Release Build (push) Failing after 31s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 14:42:41 +00:00
茂之钳
38ebb963d0
feat(v3.6): SSI-based boolean operations — face-face intersection splitting
CI / Build & Test (push) Failing after 1m40s
CI / Release Build (push) Failing after 31s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 14:36:32 +00:00
茂之钳
00ea90b522
fix: add default constructors to NurbsCurve and NurbsSurface
CI / Build & Test (push) Failing after 38s
CI / Release Build (push) Failing after 41s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 14:26:47 +00:00
茂之钳
ebce6abdd6
feat(v3.6): TrimmedSurface — B-Rep fundamental primitive
CI / Build & Test (push) Failing after 41s
CI / Release Build (push) Failing after 32s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 14:25:51 +00:00
茂之钳
605e1aded5
docs: industrial CAD kernel alignment roadmap + v3.6 TrimmedSurface plan
CI / Build & Test (push) Failing after 16m58s
CI / Release Build (push) Failing after 35s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 14:22:14 +00:00
茂之钳
2c59c55c6b
docs: complete documentation polish — CHANGELOG v3.1-v3.5, README update, plan cleanup, v3.6 ideas
CI / Build & Test (push) Failing after 1m32s
CI / Release Build (push) Failing after 31s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 14:13:26 +00:00
茂之钳
d9a673257e
fix: call .value() on optional before .bounds()
CI / Build & Test (push) Failing after 32s
CI / Release Build (push) Failing after 34s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 14:08:29 +00:00
茂之钳
f74f8b03bb
fix: revert bad optional dereference -> fix
CI / Build & Test (push) Failing after 31s
CI / Release Build (push) Failing after 37s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 14:07:45 +00:00
茂之钳
e1f7f0b070
fix: add missing <optional> include in assembly.h
CI / Build & Test (push) Failing after 32s
CI / Release Build (push) Failing after 36s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 14:05:07 +00:00
茂之钳
2f1c67d7b3
fix: optional<BrepModel> dereference with ->
CI / Build & Test (push) Failing after 31s
CI / Release Build (push) Failing after 31s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 14:03:20 +00:00
茂之钳
12db7d3e5a
feat(v3.5): perf caching + measure + flange/gear + feature tree + assembly constraints
CI / Build & Test (push) Failing after 1m31s
CI / Release Build (push) Failing after 31s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 14:02:24 +00:00
茂之钳
f89f5f6bcd
docs: v3.5 performance + practical parts plan
CI / Build & Test (push) Failing after 33s
CI / Release Build (push) Failing after 35s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 13:50:29 +00:00
茂之钳
6468f6e911
fix: Point2D already in scope via point.h
CI / Build & Test (push) Failing after 34s
CI / Release Build (push) Failing after 35s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 13:24:17 +00:00
茂之钳
6caed82319
fix: Point2D already defined in point.h
CI / Build & Test (push) Failing after 31s
CI / Release Build (push) Failing after 43s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 13:23:45 +00:00
茂之钳
00a71c4573
feat(v3.4): CAM toolpath — contour + pocket + G-code
CI / Build & Test (push) Failing after 31s
CI / Release Build (push) Failing after 31s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 13:23:02 +00:00
茂之钳
212c6a02c5
feat(v3.4): integrate face splitting into B-Rep boolean operations
...
Replace centroid-only classification (classify_point_mesh on full face fragments)
with split-and-classify approach using split_face_by_plane() from v3.3:
- Add include for brep_face_split.h
- Add face_normal() helper (extracts surface normal at parametric mid-point)
- Add split_and_classify_faces(): splits each face of body A by the planes of
every face in body B, then classifies each resulting fragment individually
- Refactor brep_union, brep_intersection, brep_difference to use the new
split-and-classify pipeline
- Add test: Union_SelfUnion_WithSplitting
This produces more precise boolean results by ensuring face fragments that
straddle the boundary are properly split before classification.
2026-07-24 13:20:17 +00:00
茂之钳
2b8bc3c212
feat(v3.4): manufacturing-ready plan + tag v3.3.0
CI / Build & Test (push) Failing after 32s
CI / Release Build (push) Failing after 1m31s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 13:18:13 +00:00
茂之钳
324066a27c
fix: properly restore and fix surface_intersection.h
CI / Build & Test (push) Failing after 38s
CI / Release Build (push) Failing after 40s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 13:15:15 +00:00
茂之钳
d6039bc686
fix: /* */ inside doxygen block prematurely closes comment
CI / Build & Test (push) Failing after 35s
CI / Release Build (push) Failing after 35s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 13:14:34 +00:00
茂之钳
314543f7a5
tmp: comment out plane intersect to test build
CI / Build & Test (push) Failing after 35s
CI / Release Build (push) Failing after 16m58s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 13:13:55 +00:00
茂之钳
d19db17bef
fix: remove curve.curve references in implementation
CI / Build & Test (push) Failing after 41s
CI / Release Build (push) Failing after 35s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 13:12:04 +00:00
茂之钳
135b977865
fix: remove optional<NurbsCurve> field (no default ctor)
CI / Build & Test (push) Failing after 39s
CI / Release Build (push) Failing after 39s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 13:11:32 +00:00
茂之钳
4a32633482
feat(v3.3): NURBS surface-surface intersection
...
CI / Build & Test (push) Failing after 31s
CI / Release Build (push) Failing after 34s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
Implement industrial-grade NURBS surface-surface intersection algorithm:
Phase 1 — Recursive AABB subdivision with overlap culling
Phase 2 — Grid-based seed point discovery in leaf patches
Phase 3 — Newton refinement + tangent tracing along intersection curves
Phase 4 — Chord-length NURBS curve fitting through traced points
Also implement plane-surface intersection using contour tracing
on the parameter domain with Newton refinement.
New files:
- include/vde/curves/surface_intersection.h (IntersectionCurve struct, APIs)
- src/curves/surface_intersection.cpp (full algorithm implementation)
- tests/curves/test_surface_intersection.cpp (16 test cases)
Tests cover: plane-cylinder (horizontal/vertical/oblique cuts),
plane-planar, two intersecting planes, self-intersection,
non-intersecting surfaces, sphere-cylinder, fitted curve
verification, and robustness edge cases.
2026-07-24 13:07:45 +00:00
茂之钳
b2274d3b55
fix: clean up fuzz CMakeLists test properties
CI / Build & Test (push) Failing after 33s
CI / Release Build (push) Failing after 34s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 12:58:24 +00:00
茂之钳
107cf58034
feat(v3.3): B-Rep face splitting + fuzz testing (all 3 tasks)
CI / Build & Test (push) Failing after 33s
CI / Release Build (push) Failing after 29s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 12:48:42 +00:00
茂之钳
acc26e3a4b
feat(v3.3): WebGL 3D viewer + tutorial docs
2026-07-24 12:42:49 +00:00
茂之钳
36c55eb663
feat(v3.3): DEB packaging + development plan
CI / Build & Test (push) Failing after 33s
CI / Release Build (push) Failing after 37s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 12:41:00 +00:00
茂之钳
5ec39b1ae8
docs: filter doc blocks captured as code
CI / Build & Test (push) Failing after 47s
CI / Release Build (push) Failing after 36s
Build & Test / build-and-test (push) Has been cancelled
Build & Test / python-bindings (push) Has been cancelled
2026-07-24 12:27:47 +00:00