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

Add new file

parent 0b33f978
No related branches found
No related tags found
No related merge requests found
import * as THREE from 'three';
// camod rack
export function camod(width=800, height=2500, depth=800) {
const camod = new THREE.Object3D();
const camod_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 redmaterial = new THREE.MeshLambertMaterial({color: 0xff0000});
const yellowmaterial = new THREE.MeshLambertMaterial({color: 0xFBE928});
const blackmaterial = new THREE.MeshLambertMaterial({color: 0x000000});
//right rack
const lrgeometry = new THREE.BoxGeometry(width, height, depth);
const lrmesh = new THREE.Mesh(lrgeometry, materialGreyDark);
lrmesh.position.set(0 , 0 , 0);
camod_rackObject.add(lrmesh);
//left rack
const rrgeometry = new THREE.BoxGeometry(width, height, depth);
const rrmesh = new THREE.Mesh(rrgeometry, materialGreyDark);
rrmesh.position.set( 0, 0 , -810);
camod_rackObject.add(rrmesh);
//edge lle
const llegeometry = new THREE.BoxGeometry(width-750, height-100, depth-790);
const llemesh = new THREE.Mesh(llegeometry, blackmaterial);
llemesh.position.set( -377, 0 , -1155);
camod_rackObject.add(llemesh);
//edge lre
const lregeometry = new THREE.BoxGeometry(width-750, height-100, depth-790);
const lremesh = new THREE.Mesh(lregeometry, blackmaterial);
lremesh.position.set( -377, 0 , -470);
camod_rackObject.add(lremesh);
//edge rle
const rlegeometry = new THREE.BoxGeometry(width-750, height-100, depth-790);
const rlemesh = new THREE.Mesh(rlegeometry, blackmaterial);
rlemesh.position.set( -377, 0 , -340);
camod_rackObject.add(rlemesh);
//edge rre
const rregeometry = new THREE.BoxGeometry(width-750, height-100, depth-790);
const rremesh = new THREE.Mesh(rregeometry, blackmaterial);
rremesh.position.set( -377, 0 , 345);
camod_rackObject.add(rremesh);
//edge lue
const luegeometry = new THREE.BoxGeometry(width-750, height-2490, depth-105);
const luemesh = new THREE.Mesh(luegeometry, blackmaterial);
luemesh.position.set( -377, 1200 , -813);
camod_rackObject.add(luemesh);
//edge lde
const ldegeometry = new THREE.BoxGeometry(width-750, height-2490, depth-105);
const ldemesh = new THREE.Mesh(ldegeometry, blackmaterial);
ldemesh.position.set( -377, -1200 , -807);
camod_rackObject.add(ldemesh);
//edge rue
const ruegeometry = new THREE.BoxGeometry(width-750, height-2490, depth-105);
const ruemesh = new THREE.Mesh(ruegeometry, blackmaterial);
ruemesh.position.set( -377, 1200 , 0);
camod_rackObject.add(ruemesh);
//edge rde
const rdegeometry = new THREE.BoxGeometry(width-750, height-2490, depth-105);
const rdemesh = new THREE.Mesh(rdegeometry, blackmaterial);
rdemesh.position.set( -377, -1200 , 0);
camod_rackObject.add(rdemesh);
//triangle warning1
const trianglewarning = new THREE.CylinderGeometry(200, 200, 1, 3);
const trianglewarningmesh = new THREE.Mesh(trianglewarning, yellowmaterial);
trianglewarningmesh.rotateX(Math.PI * 0.5);
trianglewarningmesh.rotateY(Math.PI * 1);
trianglewarningmesh.rotateZ(Math.PI * 0.5);
trianglewarningmesh.position.set(-401, 700 , 0);
camod_rackObject.add(trianglewarningmesh);
//triangle warning black
const trianglewarning2 = new THREE.CylinderGeometry(180, 180, 1, 3);
const trianglewarning2mesh = new THREE.Mesh(trianglewarning2, blackmaterial);
trianglewarning2mesh.rotateX(Math.PI * 0.5);
trianglewarning2mesh.rotateY(Math.PI * 1);
trianglewarning2mesh.rotateZ(Math.PI * 0.5);
trianglewarning2mesh.position.set(-402, 700 , 0);
camod_rackObject.add(trianglewarning2mesh);
//triangle warning yellow2
const trianglewarning3 = new THREE.CylinderGeometry(150, 150, 1, 3);
const trianglewarning3mesh = new THREE.Mesh(trianglewarning3, yellowmaterial);
trianglewarning3mesh.rotateX(Math.PI * 0.5);
trianglewarning3mesh.rotateY(Math.PI * 1);
trianglewarning3mesh.rotateZ(Math.PI * 0.5);
trianglewarning3mesh.position.set(-403, 700 , 0);
camod_rackObject.add(trianglewarning3mesh);
//ZOT1
const zot1geometry = new THREE.BoxGeometry(10, 110, 10);
const zot1geometrymesh = new THREE.Mesh(zot1geometry, blackmaterial);
zot1geometrymesh.position.set( -404, 750 , -20);
zot1geometrymesh.rotateX(Math.PI * 1.65);
zot1geometrymesh.rotateY(Math.PI * 1.50);
zot1geometrymesh.rotateZ(Math.PI * 1.50);
camod_rackObject.add(zot1geometrymesh);
//ZOT2
const zot2geometry = new THREE.BoxGeometry(10, 70, 10);
const zot2geometrymesh = new THREE.Mesh(zot2geometry, blackmaterial);
zot2geometrymesh.position.set( -404, 715 , -16);
zot2geometrymesh.rotateX(Math.PI * 1.85);
zot2geometrymesh.rotateY(Math.PI * 1.50);
zot2geometrymesh.rotateZ(Math.PI * 1.50);
camod_rackObject.add(zot2geometrymesh);
//ZOT3
const zot3geometry = new THREE.BoxGeometry(10, 80, 10);
const zot3geometrymesh = new THREE.Mesh(zot3geometry, blackmaterial);
zot3geometrymesh.position.set( -404, 697 , -1);
zot3geometrymesh.rotateX(Math.PI * 1.65);
zot3geometrymesh.rotateY(Math.PI * 1.50);
zot3geometrymesh.rotateZ(Math.PI * 1.50);
camod_rackObject.add(zot3geometrymesh);
//ZOT TRIANGLE
const zottrianglegeometry = new THREE.CylinderGeometry(22, 22, 1, 3);
const zottrianglegeometrymesh = new THREE.Mesh(zottrianglegeometry, blackmaterial);
zottrianglegeometrymesh.rotateX(Math.PI * 0.95);
zottrianglegeometrymesh.rotateY(Math.PI * 1);
zottrianglegeometrymesh.rotateZ(Math.PI * 0.5);
zottrianglegeometrymesh.position.set(-405, 660 , -19);
camod_rackObject.add(zottrianglegeometrymesh);
//handle1
const handle1geometry = new THREE.BoxGeometry(10, 250, 80);
const handle1geometrymesh = new THREE.Mesh(handle1geometry, materialVeryGreyDark);
handle1geometrymesh.position.set( -401, 100 , -550);
camod_rackObject.add(handle1geometrymesh);
//handle2
const handle2geometry = new THREE.BoxGeometry(10, 250, 80);
const handle2geometrymesh = new THREE.Mesh(handle2geometry, materialVeryGreyDark);
handle2geometrymesh.position.set( -401, 100 , -260);
camod_rackObject.add(handle2geometrymesh);
camod_rackObject.rotateY(Math.PI);
camod_rackObject.position.set(400, 1250, 340);
camod_rackObject.scale.set(1, 1, 0.94);
camod.add(camod_rackObject);
return camod;
}
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