Comutare navigație
pbInfo.ro
Probleme
Probleme - clasa a IX-a
Probleme - clasa a X-a
Probleme - clasa a XI-a
Probleme din concursuri
Căutare problemă
Exerciții
Programează cu Blockly
Desenează cu Processing
Exersează SQL
Soluţii
Resurse
Resurse pentru clasa a IX-a
Resurse pentru clasa a X-a
Resurse pentru clasa a XI-a
Subiecte bacalaureat
Ajutor
Autentificare
Înregistrare
×
Autentificare
Utilizator sau email
Parola
Acest site foloseşte cookies. Navigând în continuare, vă exprimaţi acordul asupra folosirii cookie-urilor.
Îti place pbInfo? Atunci acceptă-l cu totul! Dezactivează modulul de blocare a reclamelor!
×
Lista scripturi
Script Nou
Ajutor
"Cannonball" - Processing
ID
Autor
Duplicat din
Ultima modificare
#4517
Takacs Robert (RoTak)
-
Duminica, 19 sep 2021, 15:15
class vec2d { constructor(x, y) { this.x = x; this.y = y; } } let p0 = new vec2d(0, 200); let v0 = 20; let a0 = new vec2d(0, 0.98); let p = new vec2d(0,0); let v = new vec2d(0, 0); let a = new vec2d(0, 0); let t = 0; let theta = 45; let ptsX = []; let ptsY = []; function drawBall(p) { push(); fill(0); stroke(0); circle(p.x, 400 - p.y, 10, 10); pop(); } function setup() { createCanvas(400, 400); angleMode(DEGREES); for(let t = 0; t <= 75; ++t) { ptsX.push(p0.x + v0 * cos(theta) * t); ptsY.push(p0.y + v0 * sin(theta) * t - 0.5 * a0.y * t * t); } } function draw() { t = map(mouseX, 0, 400, 0, 40); p.x = p0.x + v0 * cos(theta) * t; p.y = p0.y + v0 * sin(theta) * t - 0.5 * a0.y * t * t; background(100); for(let i = 0; i < 75; ++i) { push(); strokeWeight(1); stroke(255); line(ptsX[i], 400-ptsY[i], ptsX[i+1], 400-ptsY[i+1]); pop(); } drawBall(p); }
Duplicare
Executare
Cod
×
Cod HTML
<iframe sandbox="allow-scripts" src="/p5js/index.php?id=4517" style="width:408px; height:408px;border:solid 1px gray; overflow: scroll;"></iframe>
×
Duplicare script
Denumirea noului script
Du-te sus!