// ... dentro da função exibirHomeRun(dados) ...
const canvas = document.createElement('canvas'); canvas.width = 600; // Largura do canvas canvas.height = 400; // Altura do canvas videoContainer.appendChild(canvas); // Adiciona o canvas ao container
const ctx = canvas.getContext('2d');
// Dados da bola (ajuste conforme necessário) const raio = 0.074; // Raio da bola em metros const xInicial = 50; // Posição x inicial const yInicial = canvas.height - 50; // Posição y inicial (próximo ao fundo do canvas)
const anguloLancamento = dados.launch_angle * Math.PI/180; // Converter para radianos const velocidadeInicial = dados.exit_velocity / 3.6 // Converter de km/h para m/s (aproximado).
// Adicione o spin rate ao banco de dados e ajuste este valor aqui. const spinRate = dados.spin_rate; // rotações por segundo (exemplo)
// Simulação simplificada (apenas para demonstração) let x = xInicial; let y = yInicial; let tempo = 0;
function animarTrajetoria() { // Lógica simplificada da trajetória (apenas para demonstração) - ajuste conforme necessário. // Em um projeto real, use cálculos físicos mais precisos. x += velocidadeInicial * Math.cos(anguloLancamento) * tempo ; y -= (velocidadeInicial * Math.sin(anguloLancamento) * tempo - (9.8 * tempo * tempo) / 2);
// Desenhar a bola
ctx.clearRect(0, 0, canvas.width, canvas.height); // Limpar o canvas
ctx.beginPath();
ctx.arc(x, y, raio * 20, 0, 2 * Math.PI); // Aumenta o raio para visualização
ctx.fillStyle = 'red';
ctx.fill();
tempo += 0.1; // Incrementar o tempo
// Parar a animação quando a bola sair do canvas
if (y > canvas.height || x > canvas.width) {
return; // sair da função de animação
}
Log in or sign up for Devpost to join the conversation.