var BotArmR = function () { var scope = this; THREE.Geometry.call(this); v( -91.270126, 69.073563, -37.000000 ); v( -91.270126, 23.073559, -37.000000 ); v( -137.270111, 69.073563, -37.000000 ); v( -137.270111, 23.073559, -37.000000 ); v( -137.270111, 69.073563, 37.000000 ); v( -137.270111, 23.073559, 37.000000 ); v( -91.270126, 69.073563, 37.000000 ); v( -91.270126, 23.073559, 37.000000 ); v( -137.270111, 69.073563, 8.448944 ); v( -91.270126, 69.073563, 8.448944 ); v( -91.270126, 191.377396, -37.000000 ); v( -137.270111, 191.377396, -37.000000 ); v( -137.270111, 191.377396, 8.448944 ); v( -91.270126, 191.377396, 8.448944 ); v( -122.331985, 69.073563, 31.323776 ); v( -104.416565, 69.073563, 31.323776 ); v( -122.331985, 69.073563, 13.050186 ); v( -104.416565, 69.073563, 13.050186 ); v( -122.331985, 139.273560, 31.323776 ); v( -104.416565, 139.273560, 31.323776 ); v( -122.331985, 139.273560, 13.050186 ); v( -104.416565, 139.273560, 13.050186 ); v( -122.331985, 147.773560, 31.323776 ); v( -104.416565, 147.773560, 31.323776 ); v( -122.331985, 147.773560, 13.050186 ); v( -104.416565, 147.773560, 13.050186 ); v( -122.331985, 157.473557, 31.323776 ); v( -104.416565, 157.473557, 31.323776 ); v( -122.331985, 157.473557, 13.050186 ); v( -104.416565, 157.473557, 13.050186 ); v( -122.331985, 201.373550, 31.323776 ); v( -104.416565, 201.373550, 31.323776 ); v( -122.331985, 201.373550, 13.050186 ); v( -104.416565, 201.373550, 13.050186 ); v( -91.401825, 23.073559, -26.612669 ); v( -122.325165, 23.073559, -26.612669 ); v( -122.325165, 23.073559, 26.612663 ); v( -91.401825, 23.073559, 26.612663 ); v( -91.401825, -36.826431, -26.612669 ); v( -122.325165, -6.826431, -26.612669 ); v( -122.325165, -6.826431, 26.612663 ); v( -91.401825, -36.826431, 26.612663 ); f4( 1, 3, 2, 0, 0.000000, 0.000000, 1.000000 ); uv( 0.000000, 0.000000, 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000); f4( 3, 5, 8, 2, 0.000000, 0.000000, 1.000000 ); uv( 0.000000, 0.000000, 1.000000, 0.000000, 0.500000, 1.000000, 0.000000, 1.000000); f4( 5, 7, 6, 4, 0.000000, 0.000000, 1.000000 ); uv( 0.000000, 0.000000, 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000); f4( 9, 7, 1, 0, 0.000000, 0.000000, 1.000000 ); uv( 0.500000, 1.000000, 0.000000, 0.000000, 1.000000, 0.000000, 1.000000, 1.000000); f4( 41, 40, 39, 38, 1.000000, 0.000000, 0.000000 ); uv( 0.140674, 0.140674, 0.859326, 0.140674, 0.859326, 0.859326, 0.140674, 0.859326); f4( 10, 11, 12, 13, 1.000000, 0.000000, 0.000000 ); uv( 0.000000, 0.000000, 1.000000, 0.000000, 1.000000, 0.500000, 0.000000, 0.500000); f3( 5, 4, 8, 1.000000, 0.000000, 0.000000 ); uv( 1.000000, 0.000000, 1.000000, 1.000000, 0.500000, 1.000000); f3( 7, 9, 6, 1.000000, 0.000000, 0.000000 ); uv( 0.000000, 0.000000, 0.500000, 1.000000, 0.000000, 1.000000); f4( 30, 31, 33, 32, 0.000000, 0.000000, -1.000000 ); uv( 0.809245, 0.904623, 0.190755, 0.904623, 0.190755, 0.595377, 0.809245, 0.595377); f4( 13, 12, 8, 9, 0.000000, 0.000000, -1.000000 ); uv( 0.000000, 0.500000, 1.000000, 0.500000, 1.000000, 0.500000, 0.000000, 0.500000); f4( 12, 11, 2, 8, 0.000000, 0.000000, -1.000000 ); uv( 1.000000, 0.500000, 1.000000, 0.000000, 1.000000, 0.000000, 1.000000, 0.500000); f4( 11, 10, 0, 2, 0.000000, 0.000000, -1.000000 ); uv( 1.000000, 0.000000, 0.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000); f4( 10, 13, 9, 0, -1.000000, 0.000000, 0.000000 ); uv( 0.000000, 0.000000, 0.000000, 0.500000, 0.000000, 0.500000, 0.000000, 0.000000); f4( 16, 17, 9, 8, -1.000000, 0.000000, 0.000000 ); uv( 0.500000, 1.000000, 1.000000, 1.000000, 0.000000, 1.000000, 0.500000, 1.000000); f4( 17, 15, 6, 9, -1.000000, 0.000000, 0.000000 ); uv( 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000, 0.000000, 0.000000); f4( 15, 14, 4, 6, -1.000000, 0.000000, 0.000000 ); uv( 1.000000, 0.000000, 0.924485, 0.924485, 1.000000, 1.000000, 0.000000, 0.000000); f4( 14, 16, 8, 4, 0.696310, -0.717741, 0.000000 ); uv( 0.924485, 0.924485, 0.500000, 1.000000, 0.500000, 1.000000, 1.000000, 1.000000); f4( 20, 21, 17, 16, 0.920953, -0.389673, 0.000000 ); uv( 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000, 0.000000, 0.000000); f4( 21, 19, 15, 17, 0.920953, -0.389673, 0.000000 ); uv( 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000, 0.000000, 0.000000); f4( 19, 18, 14, 15, 0.696310, -0.717741, 0.000000 ); uv( 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000, 0.000000, 0.000000); f4( 18, 20, 16, 14, 0.000000, 1.000000, 0.000000 ); uv( 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000, 0.000000, 0.000000); f4( 24, 25, 21, 20, 0.000000, 1.000000, 0.000000 ); uv( 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000, 0.000000, 0.000000); f4( 25, 23, 19, 21, 0.000000, 1.000000, 0.000000 ); uv( 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000, 0.000000, 0.000000); f4( 23, 22, 18, 19, 0.000000, 1.000000, 0.000000 ); uv( 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000, 0.000000, 0.000000); f4( 22, 24, 20, 18, 1.000000, 0.000000, 0.000000 ); uv( 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000, 0.000000, 0.000000); f4( 28, 29, 25, 24, 1.000000, 0.000000, 0.000000 ); uv( 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000, 0.000000, 0.000000); f4( 29, 27, 23, 25, 1.000000, 0.000000, 0.000000 ); uv( 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000, 0.000000, 0.000000); f4( 27, 26, 22, 23, 0.000000, 0.000000, 0.000000 ); uv( 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000, 0.000000, 0.000000); f4( 26, 28, 24, 22, -1.000000, 0.000000, 0.000000 ); uv( 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000, 0.000000, 0.000000); f4( 32, 33, 29, 28, -1.000000, 0.000000, 0.000000 ); uv( 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000, 0.000000, 0.000000); f4( 33, 31, 27, 29, -1.000000, -0.000000, 0.000000 ); uv( 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000, 0.000000, 0.000000); f4( 31, 30, 26, 27, 0.000000, 0.000000, 0.000000 ); uv( 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000, 0.000000, 0.000000); f4( 30, 32, 28, 26, 0.000000, 1.000000, 0.000000 ); uv( 1.000000, 0.000000, 1.000000, 1.000000, 0.000000, 1.000000, 0.000000, 0.000000); f4( 34, 35, 3, 1, 0.000000, 1.000000, 0.000000 ); uv( 0.140674, 0.859326, 0.859326, 0.859326, 1.000000, 1.000000, 0.000000, 1.000000); f4( 35, 36, 5, 3, 0.000000, 1.000000, 0.000000 ); uv( 0.859326, 0.859326, 0.859326, 0.140674, 1.000000, 0.000000, 1.000000, 1.000000); f4( 36, 37, 7, 5, 0.000000, 1.000000, 0.000000 ); uv( 0.859326, 0.140674, 0.140674, 0.140674, 0.000000, 0.000000, 1.000000, 0.000000); f4( 37, 34, 1, 7, 0.000000, 0.000000, -1.000000 ); uv( 0.140674, 0.140674, 0.140674, 0.859326, 0.000000, 1.000000, 0.000000, 0.000000); f4( 38, 39, 35, 34, 0.000000, 0.000000, -1.000000 ); uv( 0.140674, 0.859326, 0.859326, 0.859326, 0.859326, 0.859326, 0.140674, 0.859326); f4( 39, 40, 36, 35, 0.000000, 0.000000, -1.000000 ); uv( 0.859326, 0.859326, 0.859326, 0.140674, 0.859326, 0.140674, 0.859326, 0.859326); f4( 40, 41, 37, 36, 0.000000, 0.000000, -1.000000 ); uv( 0.859326, 0.140674, 0.140674, 0.140674, 0.140674, 0.140674, 0.859326, 0.140674); f4( 41, 38, 34, 37, 1.000000, 0.000000, 0.000000 ); uv( 0.140674, 0.140674, 0.140674, 0.859326, 0.140674, 0.859326, 0.140674, 0.140674); this.computeCentroids(); this.computeNormals(true); scope.colors = {}; scope.selections = {}; scope.selections["c1"] = [8, 29, 30, 31, 32]; scope.selections["c2"] = [0, 1, 2, 3, 4, 5, 6, 7, 9, 10, 11, 12, 13, 14, 15, 16, 25, 26, 27, 28, 33, 34, 35, 36, 37, 38, 39, 40]; scope.selections["c3"] = [17, 18, 19, 20]; scope.selections["c4"] = [21, 22, 23, 24]; scope.colors["c1"] = 0x000000; scope.colors["c2"] = 0x028fd4; scope.colors["c4"] = 0xed3537; scope.colors["c3"] = 0xe0dc0a; scope.autoColor = function(){ for(var s in this.selections){ for(var i = 0 ; i < this.selections[s].length; i++) this.faces[this.selections[s][i]].material = [new THREE.MeshBasicMaterial({color:this.colors[s]})]; } } scope.getPosition = function(){ return new THREE.Vector3(-0.28577423095703125, -168.17227172851562, 33.943828582763672); } scope.getRotation = function(){ return new THREE.Vector3(0.0, 0.0, 0.0); } scope.getScale = function(){ return new THREE.Vector3(0.5, 0.5, 0.5); } function v( x, y, z ) { scope.vertices.push( new THREE.Vertex( new THREE.Vector3( x, y, z ) ) ); } function f3( a, b, c, nx, ny, nz ) { scope.faces.push( new THREE.Face3( a, b, c, nx && ny && nz ? new THREE.Vector3( nx, ny, nz ) : null ) ); } function f4( a, b, c, d, nx, ny, nz ) { scope.faces.push( new THREE.Face4( a, b, c, d, nx && ny && nz ? new THREE.Vector3( nx, ny, nz ) : null ) ); } function uv( u1, v1, u2, v2, u3, v3, u4, v4 ) { var uv = []; uv.push( new THREE.UV( u1, v1 ) ); uv.push( new THREE.UV( u2, v2 ) ); uv.push( new THREE.UV( u3, v3 ) ); if ( u4 && v4 ) uv.push( new THREE.UV( u4, v4 ) ); scope.uvs.push( uv ); } } BotArmR.prototype = new THREE.Geometry(); BotArmR.prototype.constructor = BotArmR;