Two complementary approaches for blade profile generation, preserving existing work while adding a faster alternative.
Mode A: Precise Section (Current - 2026)
Input: Part solid + blade plane at compound angle
â
âââś sld sec (solid/plane intersection)
â
âââś Extract intersection curves
â
âââś Validate + build kurves
â
âââś Output: Exact contact profile
Pros: Accurate contact points, compound angle support
Cons: Slower (~64s for 6 tests), requires watertight prep
Use: Complex parts, angled blades, precision fixtures
Mode B: Fast Projection (Legacy - 2019)
Input: Part solid + blade line position
â
âââś Create full-height blade solid
â
âââś For each face: extrude in Z direction
â
âââś Subtract extruded faces from blade
â
âââś Rotate flat, convert to kurves
â
âââś Output: Projected silhouette profile
Pros: Much faster, handles overhangs naturally
Cons: Z-only direction, less precise on curves
Use: Simple parts, quick prototyping, bulk processing
Hybrid Strategy (Planned)
BLADE_PROFILE = UNION(
sld_sec_intersection, â Accurate contact (Mode A)
projected_bbox_silhouette â Full coverage (Mode B concept)
)
Ensures blades extend to support overhanging geometry
while maintaining precise contact point accuracy.
â ď¸ Implementation Note
Do NOT modify existing Mode A (fxBladeProfileVector, fxProfileToKurve3D, compound macros).
Mode B will be a separate code path selected via parameter. Both modes output compatible kurve formats.
đŚ Files
Mode A (Preserve): fxBladeProfileVector.ovm, fxProfileToKurve3D.ovm, fxxProfileToKurve3D_Compound.ovm
Mode B (Resurrect): fxComputeBladeEdge2019.ovm, fxExtrudeSolidForBladeEdge.ovm
Reference: session-results-2026-01-02.html - performance metrics