# Vamos encontrar uma sequencia de pontos para planSheer e planChine com cordas monotonas decrescentes
# Se vai de x=0 ate x=24:
# P0 = (0, y0), P1 = (x1, y1), ..., Pn = (24, 0)
# c[i] = (y[i+1] - y[i]) / (x[i+1] - x[i])
# Exemplo:
# x: 0, 6, 12, 18, 24
# y: 3.60, 3.80, 3.50, 2.30, 0.00
# c0 = (3.80 - 3.60)/6 = +0.0333
# c1 = (3.50 - 3.80)/6 = -0.0500
# c2 = (2.30 - 3.50)/6 = -0.2000
# c3 = (0.00 - 2.30)/6 = -0.3833
# Sequencia de cordas: +0.0333, -0.0500, -0.2000, -0.3833 -> estritamente decrescente!

import sys
sys.path.append('/home/magdalena/.hermes/plugins/iarquiteto-naval-brana/skills/brana-rascunho-2d-interativo/scripts')
from ajustar import declividades, monotona, convexa

def test_curve(name, P):
    m, c, folga = declividades(P)
    print(f"--- {name} ---")
    print("Cordas:", c)
    print("Declividades:", m)
    print("Cordas monotonas?", monotona(c))
    print("Declividades monotonas?", monotona(m))
    conv, arestas = convexa(P, m)
    print("Convexa?", conv)
    return conv

# Test planSheer
P_sheer = [(0, 3.60), (5, 3.90), (10, 3.80), (16, 2.80), (24, 0.0)]
test_curve("planSheer", P_sheer)

# Test planChine (proporcao de ~0.80)
P_chine = [(0, 2.88), (5, 3.12), (10, 3.04), (16, 2.24), (24, 0.0)]
test_curve("planChine", P_chine)
