- viewer_lines.py: BodyPlanViewer, ProfileViewer, PlanViewer (QPainter,
zoom/paneo, tema dark navy); conectados a los tres viewports 2D del
layout 4-viewport (bodyplan / profile / plan).
- hull.py: añadidos waterplane_coefficient (Cw), it_waterplane (IT),
il_waterplane (IL), bm_transverse (BMT), bm_longitudinal (BML),
km_transverse (KMT), tpc, mct1cm — todos verificados analíticamente
contra el casco Wigley (IACS Rec.34 §4.3).
- main_window.py: _load_hull_viewers() conecta los 4 visores y el panel
hidrostáticos al crear un nuevo proyecto; _update_hydrostatics() puebla
los 11 campos de la barra inferior en vivo.
- test_module1_hydrostatics.py: 35 tests nuevos (IT analítico exacto,
consistencia BMT=IT/V, KMT=KB+BMT, TPC=Awp·ρ/1e5, visores headless).
Suite total: 86 tests — 86 passed.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Qt dimensiona QToolButton por el ícono (22px), no por el texto, lo que
causaba que etiquetas como 'Nuevo Tq.' se cortaran al renderizar.
Ahora add_button() usa fontMetrics().horizontalAdvance(text)+20 para
establecer setMinimumWidth() correcto en cada botón.
Además: RibbonBar.setFixedHeight(110) (antes 92), padding y font-size
del ribbonButton QSS aumentados ligeramente para mejor legibilidad.
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
- Reemplaza fondos casi-negros (#0e1117, #1e2128) por paleta
azul-gris marino profesional (#252a38 main, #1a1e2c viewport canvas)
- Elimina max-width:72px de ribbonButton — texto como "C. Incendio",
"Post-Proc.", "Agua Dulce" ya no se corta
- layerVisBtn: indicador visual por color (azul=#0d99ff visible /
gris=#363b4e oculta) sin depender de texto ni ícono
- layerLockBtn: ámbar=#fbbf24 bloqueada / gris libre
- Mejora contraste de ribbonGroupTitle, viewportTitle,
placeholderTitle, placeholderDesc y viewportPlaceholder
- Agrega border-bottom a ribbonContent para separación visual
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Replace simple QToolBar with 6-tab functional RibbonBar
(Home / Geometría / Análisis / Tanques / Sistemas / Fabricación)
Each tab shows relevant button groups with icons + text below.
- Replace single 3D placeholder with FourViewport layout
(Perspectiva 3D · Vista Lateral · Body Plan · Vista de Planta)
divided by draggable cyan splitters — standard naval CAD layout.
- Replace ProjectTreePanel with DELFTship-style LayersPanel:
10 preset layers with visibility toggle, lock toggle, and color swatch.
- Add pipe/cable routing modules (MOD_ROUTING_PIPES=21, MOD_ROUTING_CABLES=22)
visible in Sistemas ribbon tab and main menu under Sistemas → Routing 3D.
- Move Units/Language info from toolbar to status bar (cleaner ribbon).
- Update dark.qss: new styles for ribbon tabs, viewports, layers panel,
viewport splitter handles (accent blue), placeholder text.
- All 12 Sprint 0 tests pass.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>