Contexto
Para demonstrar visualmente a continuidade da solução (Teorema do Valor Intermediário), precisamos visualizar a trajetória do corte conforme o usuário interage com o app.
O Objetivo
Implementar um "rastro" (trace) visual — semelhante à funcionalidade "Habilitar Rastro" do GeoGebra — que desenhe o histórico da posição da faca no gráfico. Em conjunto com isso, precisamos de um botão para dar Play no rastro automático, que fará com que o slider do ângulo se mova de um extremo a outro gerando um movimento que permitirá realizar o desenho da trajetória da divisão perfeita.
Requisitos Técnicos
- Lugar Geométrico: Devemos plotar pontos (pequenos dots verdes) que representem a Projeção da Origem na Reta de Corte. Isso cria uma curva suave.
- Independência de Modo: O rastro deve funcionar TANTO no modo manual (arrastando sliders) QUANTO no modo "AI Auto-Lock" (animação).
- Controles na UI:
- Checkbox "Mostrar Rastro" (Show Trace).
- Botão "Limpar Rastro" (Clear Trace).
Desafios Técnicos (Por que precisamos de ajuda)
- Tentaivas anteriores causaram "flickering" (o gráfico piscava) ou duplicação da geometria do polígono.
- Precisamos gerenciar o histórico de coordenadas
(x, y) dentro do st.session_state de forma eficiente, redesenhando apenas o necessário.
Critério de Aceite
- Ao dar "Play" na animação ou mover o slider manualmente, uma linha pontilhada verde surge marcando o caminho.
- A visualização é fluida e não duplica o polígono cinza de fundo.
Contexto
Para demonstrar visualmente a continuidade da solução (Teorema do Valor Intermediário), precisamos visualizar a trajetória do corte conforme o usuário interage com o app.
O Objetivo
Implementar um "rastro" (trace) visual — semelhante à funcionalidade "Habilitar Rastro" do GeoGebra — que desenhe o histórico da posição da faca no gráfico. Em conjunto com isso, precisamos de um botão para dar Play no rastro automático, que fará com que o slider do ângulo se mova de um extremo a outro gerando um movimento que permitirá realizar o desenho da trajetória da divisão perfeita.
Requisitos Técnicos
Desafios Técnicos (Por que precisamos de ajuda)
(x, y)dentro dost.session_statede forma eficiente, redesenhando apenas o necessário.Critério de Aceite