Smart Arrows Engine: Parametric Stem Stretching & Tip Controls

Smart Arrows Engine: Parametric Stem Stretching & Tip Controls

Flowcharts, technical schematics, and marketing callouts rely heavily on directional arrows to guide reader attention. In traditional vector drawing programs, resizing an arrow element scales all path coordinates uniformly, causing arrowheads to become unnaturally stretched, flattened, or bloated. Version 5.2.4 introduced Open Publisher's dedicated Smart Arrows Engine: a parametric vector architecture where element resizing stretches only the stem or shaft while keeping arrowheads perfectly proportioned.

🏹
[Screenshot: Smart Arrows Gallery & Parametric Tip Drag Handle (700 x 360)]

Drag arrow stems to any length without distorting arrowhead proportions, and adjust tip sizes with on-canvas amber handles.

The Categorized 29-Style Arrow Gallery

Located directly adjacent to the Shapes menu in the Insert ribbon tab, the Arrows button opens a 7-column gallery organized across four functional categories:

  • Block Arrows: Right Arrow, Left Arrow, Up Arrow, Down Arrow, Horizontal Double Arrow, Vertical Double Arrow, and 4-Way Quad Arrow.

  • Notched & Shaped: Notched Right, Notched Left, Pentagon Arrow, Chevron Arrow, Stealth Arrow, Curved Swoop, and U-Turn Loop.

  • Slender & Precision: Slender Right, Slender Left, Slender Up, Slender Down, Needle Arrow, Diamond Tip, Ball Base Pointer, and Callout Arrow.

  • Hollow & Technical: Hollow Right, Hollow Left, Hollow Double, Open Barb, Technical Open Left, Technical Double, and Dimension Marker.

Parametric Stem Stretching & Cross-Section Scaling

Traditional vector scaling distorts geometry because width multipliers affect every point equally. Open Publisher's parametric engine calculates geometry dynamically:

  • Stem-Only Vector Calculation: Dragging resize handles recalculates only shaft vertices (stemTop, stemBottom, stemLen). Arrowhead points, barb angles, and wing cuts stay locked to their designed aspect ratio.

  • Proportional Cross-Section Scaling: For horizontal arrows, default head width evaluates to Math.round(height * 0.7); for vertical arrows, Math.round(width * 0.7). Expanding arrow thickness naturally scales the arrowhead without squashing.

Interactive Tip Customization & Zoom Invariance

Selecting any Smart Arrow displays an intuitive on-canvas tuning overlay:

  • Inner Tip Sub-Selection Box: A dashed amber box highlights the arrowhead tip with a live dimension badge (for example, Tip: 120px).

  • On-Canvas Amber Drag Handle: Positioned at the stem/tip junction. Dragging the handle slides the junction along the arrow's axis, updating geometry at 60 FPS. Rotated arrows automatically transform mouse deltas into local coordinate space.

  • Zoom-Invariant Optical Scaling: Overlays and handles scale inversely with canvas magnification (--arrow-ui-scale: 1 / zoom). Controls remain crisp, comfortable, and easy to grab whether viewed at 35% or 200% zoom.

Tip: Custom tip ratios are saved in document metadata, ensuring arrows retain their customized appearance across saves and exports.