summaryrefslogtreecommitdiff
path: root/projects/projectile/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'projects/projectile/index.js')
-rw-r--r--projects/projectile/index.js40
1 files changed, 40 insertions, 0 deletions
diff --git a/projects/projectile/index.js b/projects/projectile/index.js
new file mode 100644
index 0000000..4226da5
--- /dev/null
+++ b/projects/projectile/index.js
@@ -0,0 +1,40 @@
+
+
+let projectile= function (node){
+
+ node.setup = function() {
+ node.createCanvas(width, height);
+ };
+
+
+ let t=0;
+ let v0=50
+ let x0=1
+ let y0=50
+ let g=9.81
+ let width=800
+ let height=200
+ let dots=[]
+ function x(t) {
+ return x0+v0*t
+ }
+
+ function y(t) {
+ return height - (-1/2 * g * t**2 + v0 * t + y0)
+ }
+
+ node.draw = function() {
+ node.background(50);
+ dots.forEach((elt)=>{node.ellipse(elt[0],elt[1],4,4);})
+ node.ellipse(x(t),y(t),20,20);
+ dots.push([x(t),y(t)])
+ if(t>10){
+ node.noLoop()
+ }
+ t+=0.07
+ };
+
+ node.a=function(){
+ node.remove()
+ }
+};