Add two angled bars and box
This commit is contained in:
16
CM2030 Graphics Programming/Topic 4/4.2.3/index.html
Normal file
16
CM2030 Graphics Programming/Topic 4/4.2.3/index.html
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>graphicsProgramming - Coursera</title>
|
||||||
|
<script src="libraries/p5.min.js" type="text/javascript"></script>
|
||||||
|
<script src="libraries/p5.sound.min.js" type="text/javascript"></script>
|
||||||
|
|
||||||
|
<script language="javascript" type="text/javascript" src="libraries/matter.js"></script>
|
||||||
|
<script src="sketch.js" type="text/javascript"></script>
|
||||||
|
|
||||||
|
<style> body {padding: 0; margin: 0;} canvas {vertical-align: top;} </style>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
BIN
CM2030 Graphics Programming/Topic 4/4.2.3/libraries/.DS_Store
vendored
Normal file
BIN
CM2030 Graphics Programming/Topic 4/4.2.3/libraries/.DS_Store
vendored
Normal file
Binary file not shown.
10361
CM2030 Graphics Programming/Topic 4/4.2.3/libraries/matter.js
Normal file
10361
CM2030 Graphics Programming/Topic 4/4.2.3/libraries/matter.js
Normal file
File diff suppressed because it is too large
Load Diff
3
CM2030 Graphics Programming/Topic 4/4.2.3/libraries/p5.min.js
vendored
Normal file
3
CM2030 Graphics Programming/Topic 4/4.2.3/libraries/p5.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
28
CM2030 Graphics Programming/Topic 4/4.2.3/libraries/p5.sound.min.js
vendored
Normal file
28
CM2030 Graphics Programming/Topic 4/4.2.3/libraries/p5.sound.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
44
CM2030 Graphics Programming/Topic 4/4.2.3/sketch.js
Normal file
44
CM2030 Graphics Programming/Topic 4/4.2.3/sketch.js
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
let Engine = Matter.Engine,
|
||||||
|
Render = Matter.Render,
|
||||||
|
World = Matter.World,
|
||||||
|
Bodies = Matter.Bodies;
|
||||||
|
let engine;
|
||||||
|
let box1;
|
||||||
|
let box2;
|
||||||
|
let ground;
|
||||||
|
|
||||||
|
function setup() {
|
||||||
|
createCanvas(900, 600);
|
||||||
|
// create engine
|
||||||
|
engine = Engine.create();
|
||||||
|
box1 = Bodies.rectangle(200, 200, 80, 80, {restitution: .8, friction: 0.5});
|
||||||
|
|
||||||
|
let options = {isStatic: true, angle: Math.PI * 0.06};
|
||||||
|
ground1 = Bodies.rectangle(100, 350, 500, 10, {isStatic: true, angle: Math.PI * 0.06});
|
||||||
|
ground2 = Bodies.rectangle(500, 500, 500, 10, {isStatic: true, angle: Math.PI * -0.06});
|
||||||
|
// add bodies to world
|
||||||
|
World.add(engine.world, [box1, ground1, ground2]);
|
||||||
|
}
|
||||||
|
|
||||||
|
function draw() {
|
||||||
|
background(0);
|
||||||
|
Engine.update(engine);
|
||||||
|
|
||||||
|
fill(255);
|
||||||
|
drawVertices(box1.vertices);
|
||||||
|
|
||||||
|
fill(150, 50, 50);
|
||||||
|
drawVertices(ground1.vertices);
|
||||||
|
|
||||||
|
fill(50, 150, 50);
|
||||||
|
drawVertices(ground2.vertices);
|
||||||
|
}
|
||||||
|
|
||||||
|
function drawVertices(vertices)
|
||||||
|
{
|
||||||
|
beginShape();
|
||||||
|
for (let i = 0; i < vertices.length; i++) {
|
||||||
|
vertex(vertices[i].x, vertices[i].y);
|
||||||
|
}
|
||||||
|
endShape();
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user