import matplotlib.pyplot as plt
import matplotlib.patches as patches
import numpy as np

plt.style.use('seaborn-v0_8-whitegrid' if 'seaborn-v0_8-whitegrid' in plt.style.available else 'default')
fig, (ax1, ax2) = plt.subplots(2, 1, figsize=(16, 12), dpi=300)

c_hull1 = '#1E3A8A'      # Azul Marinho (6,30m)
c_hull2 = '#065F46'      # Verde Escuro Tradicional (10,50m)
c_wood = '#B45309'       # Madeira
c_sail = '#FEF3C7'       # Lona bege
c_wl = '#0284C7'         # Linha d'Água
c_bottom = '#B91C1C'     # Vermelho vivo

# -------------------------------------------------------------------------
# 1. SAVEIRO DE PESCA / CORRIDA (6,30 m — Alberico)
# -------------------------------------------------------------------------
ax1.set_title("1. SAVEIRO PEQUENO DE PESCA / VELATURA LEVE (6,30 m — 1 Vela de Pena)\nÁgil, Calado Raso, Motor Diesel 10 a 14 CV | Deslocamento: ~1,8 t", fontsize=11, fontweight='bold', color='#0F172A', pad=8)

# Casco 6,30m
xs1 = np.linspace(0, 6.30, 80)
sheer1 = 0.65 + 0.35 * (xs1 / 6.30)**2.2
ax1.fill(np.concatenate([xs1, [6.30, 5.5, 3.0, 0, 0]]),
         np.concatenate([sheer1, [1.00, -0.20, -0.45, -0.40, 0.65]]),
         color=c_hull1, edgecolor='black', lw=1.8, label="Casco 6,30 m")
ax1.fill([0, 0, 3.0, 5.5, 5.9, 0], [0, -0.40, -0.45, -0.20, 0, 0], color=c_bottom, alpha=0.85)
ax1.axhline(0, color=c_wl, lw=1.2, linestyle='--')

# Mastro e Pena 6,30m (P = 7,80 m | E = 5,90 m)
ax1.plot([4.10, 3.90], [-0.40, 3.80], color=c_wood, lw=5) # Mastro
ax1.plot([6.10, 0.40], [0.85, 6.20], color='#78350F', lw=4) # Pena
ax1.fill([6.10, 0.40, 0.20, 6.10], [0.85, 6.20, 0.90, 0.85], color=c_sail, edgecolor='#D97706', lw=1.2)
ax1.text(2.5, 3.2, "1 Vela de Pena\nÁrea = 21,5 m²", ha='center', fontsize=8, fontweight='bold', color='#78350F')

# Motor Diesel 12 CV indicado
ax1.add_patch(patches.Rectangle((2.6, -0.35), 0.7, 0.45, facecolor='#FED7AA', edgecolor='#EA580C', lw=1.2))
ax1.text(2.95, -0.12, "Motor 12 CV\n(Yanmar/Agrale)", ha='center', fontsize=6.5, fontweight='bold', color='#EA580C')

ax1.set_xlim(-0.8, 12.0)
ax1.set_ylim(-1.0, 7.5)
ax1.set_aspect('equal')
ax1.axis('off')
ax1.text(0, -0.7, "LOA: 6,30 m | Boca: 2,40 m | Calado: 0,45 m | Capacidade: 800 kg pescado | Tripulação: 2 a 3 homens", fontsize=8, fontweight='bold', color='#0F172A')

# -------------------------------------------------------------------------
# 2. SAVEIRO CLÁSSICO DE CARGA DO RECÔNCAVO (10,50 m — Estilo "Sombreiro")
# -------------------------------------------------------------------------
ax2.set_title("2. SAVEIRO TRADICIONAL DE CARGA DO RECÔNCAVO (10,50 m — Vela de Içar / Bico de Pena)\nFundo Bojudo de Grande Carga, Tijupá de Popa, Motor Diesel 30 a 45 CV | Deslocamento: ~7,5 t", fontsize=11, fontweight='bold', color='#0F172A', pad=8)

# Casco 10,50m
xs2 = np.linspace(0, 10.50, 100)
sheer2 = 0.95 + 0.55 * (xs2 / 10.50)**2.2
ax2.fill(np.concatenate([xs2, [10.50, 9.0, 5.0, 0, 0]]),
         np.concatenate([sheer2, [1.50, -0.35, -0.85, -0.75, 0.95]]),
         color=c_hull2, edgecolor='black', lw=1.8, label="Casco 10,50 m")
ax2.fill([0, 0, 5.0, 9.0, 9.8, 0], [0, -0.75, -0.85, -0.35, 0, 0], color=c_bottom, alpha=0.85)
ax2.axhline(0, color=c_wl, lw=1.2, linestyle='--')

# Tijupá / Casaria de abrigo na popa
ax2.fill([0.2, 2.8, 2.8, 0.2], [0.95, 1.05, 1.85, 1.85], color='#FEF3C7', edgecolor='#78350F', lw=1.5)
ax2.text(1.5, 1.45, "Tijupá\n(Pernoite)", ha='center', fontsize=7, fontweight='bold', color='#78350F')

# Mastro e Vela de Içar Tradicional Maior (Mastro H = 6,80 m | Verga = 11,5 m)
ax2.plot([6.20, 5.90], [-0.80, 6.20], color=c_wood, lw=7) # Mastro grande
ax2.plot([9.80, 1.20], [1.35, 9.80], color='#78350F', lw=5.5) # Pena longa
ax2.fill([9.80, 1.20, 0.80, 9.80], [1.35, 9.80, 1.30, 1.35], color=c_sail, edgecolor='#D97706', lw=1.5)
ax2.text(5.0, 5.5, "Vela de Içar Maior\nÁrea = 54,0 m²", ha='center', fontsize=8.5, fontweight='bold', color='#78350F')

# Motor Diesel 36 CV indicado
ax2.add_patch(patches.Rectangle((3.8, -0.70), 1.1, 0.65, facecolor='#FED7AA', edgecolor='#EA580C', lw=1.5))
ax2.text(4.35, -0.35, "Motor 36-45 CV\n(MWM / Yanmar)", ha='center', fontsize=7, fontweight='bold', color='#EA580C')

ax2.set_xlim(-0.8, 12.0)
ax2.set_ylim(-1.2, 10.5)
ax2.set_aspect('equal')
ax2.axis('off')
ax2.text(0, -0.95, "LOA: 10,50 m | Boca: 3,60 m | Calado: 0,85 m | Capacidade: 6 a 8 toneladas de carga | Tripulação: 3 a 4 homens", fontsize=8, fontweight='bold', color='#0F172A')

plt.tight_layout()
output_comp = "/home/magdalena/eee/alunos/alberico-de-carvalho-santiago/comparativo_saveiros_bahia.png"
plt.savefig(output_comp, dpi=300, bbox_inches='tight')
plt.close()
print("Comparativo de saveiros gerado!")
