Skip to content
Snippets Groups Projects
Commit 31dd66fa authored by Lucio Zambon's avatar Lucio Zambon
Browse files

Add new file

parent ffd8535b
No related merge requests found
import * as THREE from 'three';
// rack donatello
export function donatello(param) {
const don_rackObject = new THREE.Object3D();
const materialGreyDark= new THREE.MeshLambertMaterial({color: 0x9d9d9d});
const materialGreyMedium= new THREE.MeshLambertMaterial({color: 0x636363});
const materialVeryGreyDark= new THREE.MeshLambertMaterial({color: 0x242424});
const silvermaterial = new THREE.MeshLambertMaterial({color: 0xf0f0f0});
const greenmaterial = new THREE.MeshLambertMaterial({color: 0x17fc03});
const greenmaterial2 = new THREE.MeshLambertMaterial({color: 0x0f993b});
const emergencymaterial = new THREE.MeshLambertMaterial({color: 0xff0000});
const redmaterial = new THREE.MeshLambertMaterial({color: 0xff0000});
const yellowmaterial = new THREE.MeshLambertMaterial({color: 0xcc9d02});
const materialBrown= new THREE.MeshLambertMaterial({color: 0x654321});
// rack
const lrgeometry = new THREE.BoxGeometry(800, 2000, 800);
const lrmesh = new THREE.Mesh(lrgeometry, silvermaterial);
lrmesh.position.set(0 , 0 , 0);
don_rackObject.add(lrmesh);
//edge le
const rlegeometry = new THREE.BoxGeometry(50, 2000, 50);
const rlemesh = new THREE.Mesh(rlegeometry, materialBrown);
rlemesh.position.set( -425, 0 , -370);
don_rackObject.add(rlemesh);
//edge re
const rregeometry = new THREE.BoxGeometry(50, 2000, 50);
const rremesh = new THREE.Mesh(rregeometry, materialBrown);
rremesh.position.set( -425, 0 , 375);
don_rackObject.add(rremesh);
//edge ue
const ruegeometry = new THREE.BoxGeometry(50, -50, 750);
const ruemesh = new THREE.Mesh(ruegeometry, materialBrown);
ruemesh.position.set( -426, 975 , 0);
don_rackObject.add(ruemesh);
//edge de
const rdegeometry = new THREE.BoxGeometry(50, -50, 750);
const rdemesh = new THREE.Mesh(rdegeometry, materialBrown);
rdemesh.position.set( -426, -975 , 0);
don_rackObject.add(rdemesh);
//GreenButton
const greenbutton = new THREE.CylinderGeometry(55, 55, 40, 15);
const greenbuttonmesh = new THREE.Mesh(greenbutton, greenmaterial);
greenbuttonmesh.rotateX(Math.PI * 0.5);
greenbuttonmesh.rotateY(Math.PI * 1);
greenbuttonmesh.rotateZ(Math.PI * 0.5);
greenbuttonmesh.position.set(-400, 700 , 70);
don_rackObject.add(greenbuttonmesh);
//GreenLed
const greenled = new THREE.CylinderGeometry(40, 40, 40, 15);
const greenledmesh = new THREE.Mesh(greenled, greenmaterial2);
greenledmesh.rotateX(Math.PI * 0.5);
greenledmesh.rotateY(Math.PI * 1);
greenledmesh.rotateZ(Math.PI * 0.5);
greenledmesh.position.set(-400, 700 , 200);
don_rackObject.add(greenledmesh);
//RedButton
const redbutton = new THREE.CylinderGeometry(55, 55, 40, 15);
const redbuttonmesh = new THREE.Mesh(redbutton, redmaterial);
redbuttonmesh.rotateX(Math.PI * 0.5);
redbuttonmesh.rotateY(Math.PI * 1);
redbuttonmesh.rotateZ(Math.PI * 0.5);
redbuttonmesh.position.set(-400, 550 , 70);
don_rackObject.add(redbuttonmesh);
//YelloyLed
const yellowled = new THREE.CylinderGeometry(40, 40, 40, 15);
const yellowledmesh = new THREE.Mesh(yellowled, yellowmaterial);
yellowledmesh.rotateX(Math.PI * 0.5);
yellowledmesh.rotateY(Math.PI * 1);
yellowledmesh.rotateZ(Math.PI * 0.5);
yellowledmesh.position.set(-400, 550 , 200);
don_rackObject.add(yellowledmesh);
//EmergenctButton
const emergencybutton = new THREE.CylinderGeometry(80, 80, 40, 15);
const emergencybuttonmesh = new THREE.Mesh(emergencybutton, emergencymaterial);
emergencybuttonmesh.rotateX(Math.PI * 0.5);
emergencybuttonmesh.rotateY(Math.PI * 1);
emergencybuttonmesh.rotateZ(Math.PI * 0.5);
emergencybuttonmesh.position.set(-400, 330 , 150);
don_rackObject.add(emergencybuttonmesh);
//display up
const displayupgeometry = new THREE.BoxGeometry(50, 50, 150);
const displayupgeometrymesh = new THREE.Mesh(displayupgeometry, materialVeryGreyDark);
displayupgeometrymesh.position.set( -400, 700 , -150);
don_rackObject.add(displayupgeometrymesh);
//display2 down
const displayupgeometry2 = new THREE.BoxGeometry(50, 50, 150);
const displayupgeometrymesh2 = new THREE.Mesh(displayupgeometry2, materialVeryGreyDark);
displayupgeometrymesh2.position.set( -400, 600 , -150);
don_rackObject.add(displayupgeometrymesh2);
//fan1
const fan1geometry = new THREE.BoxGeometry(10, 200, 200);
const fan1geometrymesh = new THREE.Mesh(fan1geometry, materialVeryGreyDark);
fan1geometrymesh.position.set( -400, 50 , 150);
don_rackObject.add(fan1geometrymesh);
//fan2
const fan2geometry = new THREE.BoxGeometry(10, 200, 200);
const fan2geometrymesh = new THREE.Mesh(fan2geometry, materialVeryGreyDark);
fan2geometrymesh.position.set( -400, -170 , 150);
don_rackObject.add(fan2geometrymesh);
//Lgrid2 down
const grid2geometry = new THREE.BoxGeometry(10, 200, 520);
const textureLoader2 = new THREE.TextureLoader();
const texture2 = textureLoader2.load('./components/grid_texture.png');
texture2.wrapS = texture2.wrapT = THREE.RepeatWrapping;
texture2.repeat.set(50, 1);
const material2 = new THREE.MeshBasicMaterial({ map: texture2 });
const grid2geometrymesh = new THREE.Mesh(grid2geometry, material2);
grid2geometrymesh.rotateX(Math.PI * 1);
grid2geometrymesh.rotateY(Math.PI * 1);
grid2geometrymesh.rotateZ(Math.PI * 1);
grid2geometrymesh.position.set( -400, -650 , -10);
don_rackObject.add(grid2geometrymesh);
return don_rackObject;
}
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment