0cf7df2763
Root cause: base _w2s mapped world-Z directly to screen-Y (which increases downward), placing the keel at the TOP of every viewer. BodyPlanViewer: - Override _w2s/_s2w/_fit_to_view to invert Y axis (keel now at bottom) - Fix section drawing: remove keel-appended B-spline closure that distorted the curve; close section with a straight lineTo(0,0) instead ProfileViewer: - Same Y-inversion overrides as BodyPlanViewer - Add _compute_buttock_pts() helper (interpolates Z at constant Y_b across all stations) and draw 3 buttock lines (B/4, B/2, 3B/4) as smooth curves in the profile view Buttocks, stations and waterlines now appear in their correct views: Body Plan → station cross-section curves, keel at bottom Profile → buttock curves (vertical long. sections), keel at bottom Plan View → waterline contours (unchanged) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>