Add completed primitives
This commit is contained in:
@ -0,0 +1,14 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Document</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
<script src="p5.min.js"></script>
|
||||
<script src="sketch.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
3
CM2030 Graphics Programming/Topic 11/11.1.6 Primitives/p5.min.js
vendored
Normal file
3
CM2030 Graphics Programming/Topic 11/11.1.6 Primitives/p5.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
@ -0,0 +1,63 @@
|
||||
let angle = 0;
|
||||
|
||||
function setup() {
|
||||
createCanvas(900, 600, WEBGL);
|
||||
angleMode(DEGREES);
|
||||
}
|
||||
|
||||
function draw() {
|
||||
background(125);
|
||||
|
||||
normalMaterial(255);
|
||||
|
||||
push();
|
||||
translate(-300, -100, 0);
|
||||
rotateX(angle);
|
||||
rotateY(angle);
|
||||
plane(100, 100);
|
||||
pop();
|
||||
|
||||
push();
|
||||
translate(0, -100, 0);
|
||||
rotateX(angle);
|
||||
rotateY(angle);
|
||||
box(100, 100);
|
||||
pop();
|
||||
|
||||
push();
|
||||
translate(-300, -100, 0);
|
||||
rotateX(angle);
|
||||
rotateY(angle);
|
||||
plane(100, 100);
|
||||
pop();
|
||||
|
||||
push();
|
||||
translate(300, -100, 0);
|
||||
rotateX(angle);
|
||||
rotateY(angle);
|
||||
torus(50, 50);
|
||||
pop();
|
||||
|
||||
push();
|
||||
translate(-300, 100, 0);
|
||||
rotateX(angle);
|
||||
rotateY(angle);
|
||||
cylinder(50, 50);
|
||||
pop();
|
||||
|
||||
push();
|
||||
translate(300, 100, 0);
|
||||
rotateX(angle);
|
||||
rotateY(angle);
|
||||
directionalLight(255, 0, 0, 1, 0, 0);
|
||||
sphere(100, 20, 20);
|
||||
pop();
|
||||
|
||||
translate(0, 100, 0);
|
||||
rotateX(angle);
|
||||
rotateY(angle);
|
||||
directionalLight(255, 0, 0, 1, 0, 0);
|
||||
cone(100, 100, 20, 20);
|
||||
pop();
|
||||
angle += 1;
|
||||
}
|
||||
Reference in New Issue
Block a user