🛠️ Blade Profile & Modular Assembly

Blade Generation System — Project Plan

🛠️ Blade Profile Dual-Mode Architecture

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

🧱 Modular Blade Assembly System ("Lego Block" Design)

🔗 Concept Overview

A modular approach to blade construction where blades are built from segmented pieces that connect together using T-wedges or spring clips. Blades stand vertically on a baseplate with pre-cut slots. This enables incremental assembly, easy rework, and reusable components without welding.

📐 Reference CAD Model

4-view layout showing the modular assembly concept:

Modular Blade CAD Screenshot
📊 SVG Diagram

View Full SVG Diagram →

🔧 Key Components

Component Color (CAD) Description
Blade Segments White/Gray Steel plate sections that form the blade body
Overlap Zones Gray (2× thick) Where segments overlap by 2× material thickness
T-Wedge Connectors Cyan Drop-in from ÂąZ to lock overlapping segments
Spring Clips Cyan Snap-in from side as alternative to T-wedge
Feet Gray Optional blade extensions that drop into baseplate slots (not required on every segment)
Baseplate Brown/Copper Base with pre-cut slots at blade foot locations

📏 Assembly Rules

  • Segments overlap by 2× material thickness at joints
  • T-Wedge drops in from above/below (ÂąZ) to lock segments together
  • Spring Clip snaps in from side as alternative locking method
  • Cross-blades can ONLY slot through single-layer zones (not overlap zones)
  • Blades connect to baseplate via T-slots + T-wedges (feet optional per segment)
  • Supports compound angles between segments

✅ Benefits

  • ✓ Incrementally buildable
  • ✓ Easily removable for rework
  • ✓ No welding required for assembly
  • ✓ Reusable components
  • ✓ Compound angle support
  • ✓ Modular like Lego blocks

📦 TODO - Implementation

  • ○ Define standard T-wedge and spring clip dimensions
  • ○ Implement overlap zone detection at segment joints
  • ○ Auto-place connection holes in overlap zones
  • ○ Cross-blade intersection validation (single-layer only)
  • ○ Baseplate T-slot generation for blade mounting
  • ○ BOM generation for connectors (T-wedge/clip counts)
  • ○ sma 2417 - Simplify topology after boolean operations

Files:

fxModularBladeAssembly.ovm - segment connection logic

fxTWedgeGenerator.ovm - T-wedge slot cutting

fxSpringClipSlot.ovm - spring clip aperture generation