diff --git a/examples/js/libs/vrml.min.js b/examples/js/libs/vrml.min.js new file mode 100644 index 0000000000000000000000000000000000000000..a7cacb1271ff629158e2c6d022e6ee02aede3437 --- /dev/null +++ b/examples/js/libs/vrml.min.js @@ -0,0 +1,83 @@ +var $jscomp={scope:{},checkStringArgs:function(a,g,e){if(null==a)throw new TypeError("The 'this' value for String.prototype."+e+" must not be null or undefined");if(g instanceof RegExp)throw new TypeError("First argument to String.prototype."+e+" must not be a regular expression");return a+""}}; +$jscomp.defineProperty="function"==typeof Object.defineProperties?Object.defineProperty:function(a,g,e){if(e.get||e.set)throw new TypeError("ES3 does not support getters and setters.");a!=Array.prototype&&a!=Object.prototype&&(a[g]=e.value)};$jscomp.getGlobal=function(a){return"undefined"!=typeof window&&window===a?a:"undefined"!=typeof global&&null!=global?global:a};$jscomp.global=$jscomp.getGlobal(this); +$jscomp.polyfill=function(a,g,e,l){if(g){e=$jscomp.global;a=a.split(".");for(l=0;la||1342177279>>=1)g+=g;return l}},"es6-impl","es3"); +vrmlParser=function(){function a(g,e,l,k){this.message=g;this.expected=e;this.found=l;this.location=k;this.name="SyntaxError";"function"===typeof Error.captureStackTrace&&Error.captureStackTrace(this,a)}(function(a,e){function g(){this.constructor=a}g.prototype=e.prototype;a.prototype=new g})(a,Error);return{SyntaxError:a,parse:function(g){function e(b){var d=Q[b],c,a;if(!d){for(c=b-1;!Q[c];)c--;d=Q[c];for(d={line:d.line,column:d.column,seenCR:d.seenCR};cI&&(I=c,ba=[]),ba.push(b))}function y(){var d,B,a;d=c;g.substr(c,15)===ga?(B=ga,c+=15):(B=b,0===n&&k(Qa));if(B!==b){B=[];a=A();a===b&&(a=C(),a===b&&(a=q(),a===b&&(a=z(),a===b&&(a=w()))));for(;a!==b;)B.push(a), +a=A(),a===b&&(a=C(),a===b&&(a=q(),a===b&&(a=z(),a===b&&(a=w()))));B!==b?(x=d,B.nodeDefinitions=R,B.routes=M,d=B):(c=d,d=b)}else c=d,d=b;return d}function A(){var d,B,a,h;B=d=c;a=ha();a!==b?(a=t(),a!==b?(x=B,B=a):(c=B,B=b)):(c=B,B=b);if(B!==b)if(g.substr(c,23)===ia?(a=ia,c+=23):(a=b,0===n&&k(Ra)),a!==b)if(a=E(),a!==b){a=[];h=D();h===b&&(h=p());if(h!==b)for(;h!==b;)a.push(h),h=D(),h===b&&(h=p());else a=b;if(a!==b)if(h=ja(),h!==b){x=d;d=B;B=a;a={name:d,node:"OrientationInterpolator",isDefinition:!0}; +for(h=0;hb.description?1:0});b(a*=2)?.5*a*a:-.5*(--a*(a-2)-1)}},Cubic:{In:function(a){return a*a*a},Out:function(a){return--a*a*a+1},InOut:function(a){return 1>(a*=2)?.5*a*a*a:.5*((a-=2)*a*a+2)}},Quartic:{In:function(a){return a*a*a*a},Out:function(a){return 1- --a*a*a*a},InOut:function(a){return 1>(a*=2)?.5*a*a*a*a:-.5*((a-=2)*a*a*a-2)}},Quintic:{In:function(a){return a*a*a*a*a},Out:function(a){return--a* +a*a*a*a+1},InOut:function(a){return 1>(a*=2)?.5*a*a*a*a*a:.5*((a-=2)*a*a*a*a+2)}},Sinusoidal:{In:function(a){return 1-Math.cos(a*Math.PI/2)},Out:function(a){return Math.sin(a*Math.PI/2)},InOut:function(a){return.5*(1-Math.cos(Math.PI*a))}},Exponential:{In:function(a){return 0===a?0:Math.pow(1024,a-1)},Out:function(a){return 1===a?1:1-Math.pow(2,-10*a)},InOut:function(a){return 0===a?0:1===a?1:1>(a*=2)?.5*Math.pow(1024,a-1):.5*(-Math.pow(2,-10*(a-1))+2)}},Circular:{In:function(a){return 1-Math.sqrt(1- +a*a)},Out:function(a){return Math.sqrt(1- --a*a)},InOut:function(a){return 1>(a*=2)?-.5*(Math.sqrt(1-a*a)-1):.5*(Math.sqrt(1-(a-=2)*a)+1)}},Elastic:{In:function(a){return 0===a?0:1===a?1:-Math.pow(2,10*(a-1))*Math.sin(5*(a-1.1)*Math.PI)},Out:function(a){return 0===a?0:1===a?1:Math.pow(2,-10*a)*Math.sin(5*(a-.1)*Math.PI)+1},InOut:function(a){if(0===a)return 0;if(1===a)return 1;a*=2;return 1>a?-.5*Math.pow(2,10*(a-1))*Math.sin(5*(a-1.1)*Math.PI):.5*Math.pow(2,-10*(a-1))*Math.sin(5*(a-1.1)*Math.PI)+ +1}},Back:{In:function(a){return a*a*(2.70158*a-1.70158)},Out:function(a){return--a*a*(2.70158*a+1.70158)+1},InOut:function(a){return 1>(a*=2)?.5*a*a*(3.5949095*a-2.5949095):.5*((a-=2)*a*(3.5949095*a+2.5949095)+2)}},Bounce:{In:function(a){return 1-TWEEN.Easing.Bounce.Out(1-a)},Out:function(a){return a<1/2.75?7.5625*a*a:a<2/2.75?7.5625*(a-=1.5/2.75)*a+.75:a<2.5/2.75?7.5625*(a-=2.25/2.75)*a+.9375:7.5625*(a-=2.625/2.75)*a+.984375},InOut:function(a){return.5>a?.5*TWEEN.Easing.Bounce.In(2*a):.5*TWEEN.Easing.Bounce.Out(2* +a-1)+.5}}}; +TWEEN.Interpolation={Linear:function(a,g){var e=a.length-1,l=e*g,k=Math.floor(l),y=TWEEN.Interpolation.Utils.Linear;return 0>g?y(a[0],a[1],l):1e?e:k+1],l-k)},Bezier:function(a,g){for(var e=0,l=a.length-1,k=Math.pow,y=TWEEN.Interpolation.Utils.Bernstein,A=0;A<=l;A++)e+=k(1-g,l-A)*k(g,A)*a[A]*y(l,A);return e},CatmullRom:function(a,g){var e=a.length-1,l=e*g,k=Math.floor(l),y=TWEEN.Interpolation.Utils.CatmullRom;return a[0]===a[e]?(0>g&&(k=Math.floor(l=e*(1+g))),y(a[(k- +1+e)%e],a[k],a[(k+1)%e],a[(k+2)%e],l-k)):0>g?a[0]-(y(a[0],a[0],a[1],a[1],-l)-a[0]):1H.y:m.y>=w&&m.y=this.keyValue.length?(this.log("finish at index "+this.index),this.finish()):this.tween()},tween:function(){var a=this,g=this.keyValue[this.index],e=g.radians;this.log("Animating from "+this.target.rotation.y+" to "+e);var l=new THREE.Quaternion,g=new THREE.Vector3(g.x,g.y,g.z);l.setFromAxisAngle(g,e);this.tweenObj=(new TWEEN.Tween(this.target.quaternion)).to(l).start(+new Date).onComplete(function(){a.complete()})}, +getCallback:function(a,g){var e=this;this.target=a;this.finish=g;this.tween();return function(a){e.tweenObj.update(+new Date)}}};VrmlParser.Renderer.ThreeJs.Animation.PositionInterpolator=function(a,g){this.key=a.key;this.keyValue=a.keyValue;this.debug=g?!0:!1}; +VrmlParser.Renderer.ThreeJs.Animation.PositionInterpolator.prototype={log:function(a){this.debug&&console.log(a)},tween:function(a,g){return(new TWEEN.Tween(a.position)).to(g).start(+new Date)},getCallback:function(a,g){var e=this,l=1,k=this.getPosition(l);this.log(k);this.log(a);var y=this.tween(a,k);y.onComplete(function(){l++;l>=e.keyValue.length?(console.log("finish"),a.position=k,g()):(k=e.getPosition(l),e.log(k),y=e.tween(a,k),y.onComplete=this)});return function(a){y.update(+new Date)}},getPosition:function(a){a= +this.keyValue[a];return new THREE.Vector3(a.x,a.y,a.z)}};VrmlParser.Renderer.ThreeJs.VrmlNode.NavigationInfo=function(a,g){this.debug=g;this.node=a;this.node.has=function(a){return"undefined"!==typeof this[a]&&null!==this[a]};this.controls=null}; +VrmlParser.Renderer.ThreeJs.VrmlNode.NavigationInfo.prototype={log:function(a){this.debug&&console.log(a)},parse:function(a){this.log("From NavigationInfo");a=void 0!==this.node.speed?this.node.speed:1;if(void 0!==this.node.type)switch(this.node.type.toLowerCase()){case "fly":this.log("fly!"),controls=new THREE.FlyControls(camera),controls.movementSpeed=a}else this.log("fly!"),controls=new THREE.FlyControls(camera),controls.movementSpeed=a}};VrmlParser.Renderer.ThreeJs.VrmlNode.Viewpoint=function(a,g){this.debug=g;this.node=a;this.node.has=function(a){return"undefined"!==typeof this[a]&&null!==this[a]}}; +VrmlParser.Renderer.ThreeJs.VrmlNode.Viewpoint.prototype={log:function(a){this.debug&&console.log(a)},parse:function(a){var g=new THREE.PerspectiveCamera(Math.round(180/Math.PI*this.node.fieldOfView),window.innerWidth/window.innerHeight,.01,1E5);a=new THREE.Group;a.add(g);this.node.has("name")?g.name=this.node.name:g.name=this.node.description;a.getCamera=function(){return this.children[0]};g=this.node.position;a.position.set(g.x,g.y,g.z);var g=this.node.orientation,e=new THREE.Vector3(g.x,g.y,g.z); +a.quaternion.setFromAxisAngle(e,g.radians);return a}}; diff --git a/examples/js/loaders/VRMLLoader.js b/examples/js/loaders/VRMLLoader.js index 5d997f2f19ae321e5d9a905cc0365057aff00aae..0d375cb3ba47a9f810101185894985a2a6759a82 100644 --- a/examples/js/loaders/VRMLLoader.js +++ b/examples/js/loaders/VRMLLoader.js @@ -1,1105 +1,67 @@ /** * @author mrdoob / http://mrdoob.com/ + * @author Bart McLeod / http://spaceweb.nl/ */ -THREE.VRMLLoader = function ( manager ) { +/** + * + * @param manager + * @param parser VRMLparser based on PEG.js grammar + * @param VrmlParser.Renderer.ThreeJs renderer + * @constructor + */ +THREE.VRMLLoader = function (parser, manager, debug) { this.manager = ( manager !== undefined ) ? manager : THREE.DefaultLoadingManager; - + this.parser = parser; + this.debug = debug; }; THREE.VRMLLoader.prototype = { constructor: THREE.VRMLLoader, - // for IndexedFaceSet support - isRecordingPoints: false, - isRecordingFaces: false, - points: [], - indexes : [], - - // for Background support - isRecordingAngles: false, - isRecordingColors: false, - angles: [], - colors: [], - - recordingFieldname: null, - - load: function ( url, onLoad, onProgress, onError ) { - - var scope = this; - - var loader = new THREE.FileLoader( this.manager ); - loader.load( url, function ( text ) { - - onLoad( scope.parse( text ) ); - - }, onProgress, onError ); - - }, - - setCrossOrigin: function ( value ) { - - this.crossOrigin = value; - + log: function (obj) { + if ( this.debug ) { + console.log(obj); + } }, - parse: function ( data ) { - - var texturePath = this.texturePath || ''; - - var textureLoader = new THREE.TextureLoader( this.manager ); - textureLoader.setCrossOrigin( this.crossOrigin ); - - var parseV1 = function ( lines, scene ) { - - console.warn( 'VRML V1.0 not supported yet' ); - - }; - - var parseV2 = function ( lines, scene ) { - - var defines = {}; - var float_pattern = /(\b|\-|\+)([\d\.e]+)/; - var float2_pattern = /([\d\.\+\-e]+)\s+([\d\.\+\-e]+)/g; - var float3_pattern = /([\d\.\+\-e]+)\s+([\d\.\+\-e]+)\s+([\d\.\+\-e]+)/g; - - /** - * Interpolates colors a and b following their relative distance - * expressed by t. - * - * @param float a - * @param float b - * @param float t - * @returns {Color} - */ - var interpolateColors = function( a, b, t ) { - - var deltaR = a.r - b.r; - var deltaG = a.g - b.g; - var deltaB = a.b - b.b; - - var c = new THREE.Color(); - - c.r = a.r - t * deltaR; - c.g = a.g - t * deltaG; - c.b = a.b - t * deltaB; - - return c; - - }; - - /** - * Vertically paints the faces interpolating between the - * specified colors at the specified angels. This is used for the Background - * node, but could be applied to other nodes with multiple faces as well. - * - * When used with the Background node, default is directionIsDown is true if - * interpolating the skyColor down from the Zenith. When interpolationg up from - * the Nadir i.e. interpolating the groundColor, the directionIsDown is false. - * - * The first angle is never specified, it is the Zenith (0 rad). Angles are specified - * in radians. The geometry is thought a sphere, but could be anything. The color interpolation - * is linear along the Y axis in any case. - * - * You must specify one more color than you have angles at the beginning of the colors array. - * This is the color of the Zenith (the top of the shape). - * - * @param geometry - * @param radius - * @param angles - * @param colors - * @param boolean directionIsDown Whether to work bottom up or top down. - */ - var paintFaces = function ( geometry, radius, angles, colors, directionIsDown ) { - - var f, n, p, vertexIndex, color; - - var direction = directionIsDown ? 1 : - 1; - - var faceIndices = [ 'a', 'b', 'c', 'd' ]; - - var coord = [ ], aColor, bColor, t = 1, A = {}, B = {}, applyColor = false, colorIndex; - - for ( var k = 0; k < angles.length; k ++ ) { - - var vec = { }; - - // push the vector at which the color changes - vec.y = direction * ( Math.cos( angles[ k ] ) * radius ); - - vec.x = direction * ( Math.sin( angles[ k ] ) * radius ); - - coord.push( vec ); - - } - - // painting the colors on the faces - for ( var i = 0; i < geometry.faces.length ; i ++ ) { - - f = geometry.faces[ i ]; - - n = ( f instanceof THREE.Face3 ) ? 3 : 4; - - for ( var j = 0; j < n; j ++ ) { - - vertexIndex = f[ faceIndices[ j ] ]; - - p = geometry.vertices[ vertexIndex ]; - - for ( var index = 0; index < colors.length; index ++ ) { - - // linear interpolation between aColor and bColor, calculate proportion - // A is previous point (angle) - if ( index === 0 ) { - - A.x = 0; - A.y = directionIsDown ? radius : - 1 * radius; - - } else { - - A.x = coord[ index - 1 ].x; - A.y = coord[ index - 1 ].y; - - } - - // B is current point (angle) - B = coord[ index ]; - - if ( undefined !== B ) { - - // p has to be between the points A and B which we interpolate - applyColor = directionIsDown ? p.y <= A.y && p.y > B.y : p.y >= A.y && p.y < B.y; - - if ( applyColor ) { - - bColor = colors[ index + 1 ]; - - aColor = colors[ index ]; - - // below is simple linear interpolation - t = Math.abs( p.y - A.y ) / ( A.y - B.y ); - - // to make it faster, you can only calculate this if the y coord changes, the color is the same for points with the same y - color = interpolateColors( aColor, bColor, t ); - - f.vertexColors[ j ] = color; - - } - - } else if ( undefined === f.vertexColors[ j ] ) { - - colorIndex = directionIsDown ? colors.length - 1 : 0; - f.vertexColors[ j ] = colors[ colorIndex ]; - - } - - } - - } - - } - - }; - - var index = []; - - var parseProperty = function ( node, line ) { - - var parts = [], part, property = {}, fieldName; - - /** - * Expression for matching relevant information, such as a name or value, but not the separators - * @type {RegExp} - */ - var regex = /[^\s,\[\]]+/g; - - var point, angles, colors; - - while ( null != ( part = regex.exec( line ) ) ) { - - parts.push( part[ 0 ] ); - - } - - fieldName = parts[ 0 ]; - - - // trigger several recorders - switch ( fieldName ) { - case 'skyAngle': - case 'groundAngle': - this.recordingFieldname = fieldName; - this.isRecordingAngles = true; - this.angles = []; - break; - case 'skyColor': - case 'groundColor': - this.recordingFieldname = fieldName; - this.isRecordingColors = true; - this.colors = []; - break; - case 'point': - this.recordingFieldname = fieldName; - this.isRecordingPoints = true; - this.points = []; - break; - case 'coordIndex': - case 'texCoordIndex': - this.recordingFieldname = fieldName; - this.isRecordingFaces = true; - this.indexes = []; - } - - if ( this.isRecordingFaces ) { - - // the parts hold the indexes as strings - if ( parts.length > 0 ) { - - for ( var ind = 0; ind < parts.length; ind ++ ) { - - // the part should either be positive integer or -1 - if ( ! /(-?\d+)/.test( parts[ ind ] ) ) { - - continue; - - } - - // end of current face - if ( parts[ ind ] === "-1" ) { - - if ( index.length > 0 ) { - - this.indexes.push( index ); - - } - - // start new one - index = []; - - } else { - - index.push( parseInt( parts[ ind ] ) ); - - } - - } - - } - - // end - if ( /]/.exec( line ) ) { - - if ( index.length > 0 ) { - - this.indexes.push( index ); - - } - - // start new one - index = []; - - this.isRecordingFaces = false; - node[this.recordingFieldname] = this.indexes; - - } - - } else if ( this.isRecordingPoints ) { - - if ( node.nodeType == 'Coordinate' ) - - while ( null !== ( parts = float3_pattern.exec( line ) ) ) { - - point = { - x: parseFloat( parts[ 1 ] ), - y: parseFloat( parts[ 2 ] ), - z: parseFloat( parts[ 3 ] ) - }; - - this.points.push( point ); - - } - - if ( node.nodeType == 'TextureCoordinate' ) - - while ( null !== ( parts = float2_pattern.exec( line ) ) ) { - - point = { - x: parseFloat( parts[ 1 ] ), - y: parseFloat( parts[ 2 ] ) - }; - - this.points.push( point ); - - } - - // end - if ( /]/.exec( line ) ) { - - this.isRecordingPoints = false; - node.points = this.points; - - } - - } else if ( this.isRecordingAngles ) { - - // the parts hold the angles as strings - if ( parts.length > 0 ) { - - for ( var ind = 0; ind < parts.length; ind ++ ) { - - // the part should be a float - if ( ! float_pattern.test( parts[ ind ] ) ) { - - continue; - - } - - this.angles.push( parseFloat( parts[ ind ] ) ); - - } - - } - - // end - if ( /]/.exec( line ) ) { - - this.isRecordingAngles = false; - node[ this.recordingFieldname ] = this.angles; - - } - - } else if ( this.isRecordingColors ) { - - while ( null !== ( parts = float3_pattern.exec( line ) ) ) { - - color = { - r: parseFloat( parts[ 1 ] ), - g: parseFloat( parts[ 2 ] ), - b: parseFloat( parts[ 3 ] ) - }; - - this.colors.push( color ); - - } - - // end - if ( /]/.exec( line ) ) { - - this.isRecordingColors = false; - node[ this.recordingFieldname ] = this.colors; - - } - - } else if ( parts[ parts.length - 1 ] !== 'NULL' && fieldName !== 'children' ) { - - switch ( fieldName ) { - - case 'diffuseColor': - case 'emissiveColor': - case 'specularColor': - case 'color': - - if ( parts.length != 4 ) { - - console.warn( 'Invalid color format detected for ' + fieldName ); - break; - - } - - property = { - r: parseFloat( parts[ 1 ] ), - g: parseFloat( parts[ 2 ] ), - b: parseFloat( parts[ 3 ] ) - }; - - break; - - case 'location': - case 'direction': - case 'translation': - case 'scale': - case 'size': - if ( parts.length != 4 ) { - - console.warn( 'Invalid vector format detected for ' + fieldName ); - break; - - } - - property = { - x: parseFloat( parts[ 1 ] ), - y: parseFloat( parts[ 2 ] ), - z: parseFloat( parts[ 3 ] ) - }; - - break; - - case 'intensity': - case 'cutOffAngle': - case 'radius': - case 'topRadius': - case 'bottomRadius': - case 'height': - case 'transparency': - case 'shininess': - case 'ambientIntensity': - if ( parts.length != 2 ) { - - console.warn( 'Invalid single float value specification detected for ' + fieldName ); - break; - - } - - property = parseFloat( parts[ 1 ] ); - - break; - - case 'rotation': - if ( parts.length != 5 ) { - - console.warn( 'Invalid quaternion format detected for ' + fieldName ); - break; - - } - - property = { - x: parseFloat( parts[ 1 ] ), - y: parseFloat( parts[ 2 ] ), - z: parseFloat( parts[ 3 ] ), - w: parseFloat( parts[ 4 ] ) - }; - - break; - - case 'on': - case 'ccw': - case 'solid': - case 'colorPerVertex': - case 'convex': - if ( parts.length != 2 ) { - - console.warn( 'Invalid format detected for ' + fieldName ); - break; - - } - - property = parts[ 1 ] === 'TRUE' ? true : false; - - break; - } - - node[ fieldName ] = property; - - } - - return property; - - }; - - var getTree = function ( lines ) { - - var tree = { 'string': 'Scene', children: [] }; - var current = tree; - var matches; - var specification; - - for ( var i = 0; i < lines.length; i ++ ) { - - var comment = ''; - - var line = lines[ i ]; - - // omit whitespace only lines - if ( null !== ( result = /^\s+?$/g.exec( line ) ) ) { - - continue; - - } - - line = line.trim(); - - // skip empty lines - if ( line === '' ) { - - continue; - - } - - if ( /#/.exec( line ) ) { - - var parts = line.split( '#' ); - - // discard everything after the #, it is a comment - line = parts[ 0 ]; - - // well, let's also keep the comment - comment = parts[ 1 ]; - - } - - if ( matches = /([^\s]*){1}(?:\s+)?{/.exec( line ) ) { - - // first subpattern should match the Node name - - var block = { 'nodeType' : matches[ 1 ], 'string': line, 'parent': current, 'children': [], 'comment' : comment }; - current.children.push( block ); - current = block; - - if ( /}/.exec( line ) ) { - - // example: geometry Box { size 1 1 1 } # all on the same line - specification = /{(.*)}/.exec( line )[ 1 ]; - - // todo: remove once new parsing is complete? - block.children.push( specification ); - - parseProperty( current, specification ); - - current = current.parent; - - } - - } else if ( /}/.exec( line ) ) { + parse: function (data) { + try { + var tree = this.parser.parse(data); - current = current.parent; + this.log(tree); + return tree; + } catch ( e ) { + this.log('Exception with message ' + e.message); - } else if ( line !== '' ) { - - parseProperty( current, line ); - // todo: remove once new parsing is complete? we still do not parse geometry and appearance the new way - current.children.push( line ); - - } - - } - - return tree; - - }; - - var parseNode = function ( data, parent ) { - - // console.log( data ); - - if ( typeof data === 'string' ) { - - if ( /USE/.exec( data ) ) { - - var defineKey = /USE\s+?([^\s]+)/.exec( data )[ 1 ]; - - if ( undefined == defines[ defineKey ] ) { - - console.warn( defineKey + ' is not defined.' ); - - } else { - - if ( /appearance/.exec( data ) && defineKey ) { - - parent.material = defines[ defineKey ].clone(); - - } else if ( /geometry/.exec( data ) && defineKey ) { - - parent.geometry = defines[ defineKey ].clone(); - - // the solid property is not cloned with clone(), is only needed for VRML loading, so we need to transfer it - if ( undefined !== defines[ defineKey ].solid && defines[ defineKey ].solid === false ) { - - parent.geometry.solid = false; - parent.material.side = THREE.DoubleSide; - - } - - } else if ( defineKey ) { - - var object = defines[ defineKey ].clone(); - parent.add( object ); - - } - - } - - } - - return; - - } - - var object = parent; - - if(data.string.indexOf("AmbientLight")>-1 && data.nodeType=='PointLight'){ - //wenn im Namen "AmbientLight" vorkommt und es ein PointLight ist, - //diesen Typ in 'AmbientLight' ändern - data.nodeType='AmbientLight'; - } - - l_visible=data.on; - if(l_visible==undefined)l_visible=true; - l_intensity=data.intensity; - if(l_intensity==undefined)l_intensity=true; - if(data.color!=undefined) - l_color= new THREE.Color(data.color.r, data.color.g,data.color.b ); - else - l_color= new THREE.Color(0, 0,0); - - - - if('AmbientLight' === data.nodeType){ - object=new THREE.AmbientLight( - l_color.getHex(), - l_intensity - ); - object.visible=l_visible; - - parent.add( object ); - - } - else - if('PointLight' === data.nodeType){ - l_distance =0; //0="unendlich" ...1000 - l_decay=0; //-1.. ? - - if(data.radius!=undefined && data.radius<1000){ - //l_radius=data.radius; - l_distance=data.radius; - l_decay=1; - } - object=new THREE.PointLight( - l_color.getHex(), - l_intensity, - l_distance); - object.visible=l_visible; - - parent.add( object ); - } - else - if('SpotLight' === data.nodeType){ - l_intensity=1; - l_distance =0;//0="unendlich"=1000 - l_angle=Math.PI/3; - l_penumbra=0.0;//0..1 - l_decay=0;//-1.. ? - l_visible=true; - - if(data.radius!=undefined && data.radius<1000){ - //l_radius=data.radius; - l_distance=data.radius; - l_decay=1; - } - if(data.cutOffAngle!=undefined)l_angle=data.cutOffAngle; - - object = new THREE.SpotLight( - l_color.getHex(), - l_intensity, - l_distance, - l_angle, - l_penumbra, - l_decay - ); - object.visible=l_visible; - parent.add( object ); - /* - var lightHelper = new THREE.SpotLightHelper( object ); - parent.parent.add( lightHelper ); - lightHelper.update(); - */ - } - else - - if ( 'Transform' === data.nodeType || 'Group' === data.nodeType ) { - - object = new THREE.Object3D(); - - if ( /DEF/.exec( data.string ) ) { - - object.name = /DEF\s+([^\s]+)/.exec( data.string )[ 1 ]; - defines[ object.name ] = object; - - } - - if ( undefined !== data[ 'translation' ] ) { - - var t = data.translation; - - object.position.set( t.x, t.y, t.z ); - - } - - if ( undefined !== data.rotation ) { - - var r = data.rotation; - - object.quaternion.setFromAxisAngle( new THREE.Vector3( r.x, r.y, r.z ), r.w ); - - } - - if ( undefined !== data.scale ) { - - var s = data.scale; - - object.scale.set( s.x, s.y, s.z ); - - } - - parent.add( object ); - - } else if ( 'Shape' === data.nodeType ) { - - object = new THREE.Mesh(); - - if ( /DEF/.exec( data.string ) ) { - - object.name = /DEF\s+([^\s]+)/.exec( data.string )[ 1 ]; - - defines[ object.name ] = object; - - } - - parent.add( object ); - - } else if ( 'Background' === data.nodeType ) { - - var segments = 20; - - // sky (full sphere): - - var radius = 2e4; - - var skyGeometry = new THREE.SphereGeometry( radius, segments, segments ); - var skyMaterial = new THREE.MeshBasicMaterial( { fog: false, side: THREE.BackSide } ); - - if ( data.skyColor.length > 1 ) { - - paintFaces( skyGeometry, radius, data.skyAngle, data.skyColor, true ); - - skyMaterial.vertexColors = THREE.VertexColors - - } else { - - var color = data.skyColor[ 0 ]; - skyMaterial.color.setRGB( color.r, color.b, color.g ); - - } - - scene.add( new THREE.Mesh( skyGeometry, skyMaterial ) ); - - // ground (half sphere): - - if ( data.groundColor !== undefined ) { - - radius = 1.2e4; - - var groundGeometry = new THREE.SphereGeometry( radius, segments, segments, 0, 2 * Math.PI, 0.5 * Math.PI, 1.5 * Math.PI ); - var groundMaterial = new THREE.MeshBasicMaterial( { fog: false, side: THREE.BackSide, vertexColors: THREE.VertexColors } ); - - paintFaces( groundGeometry, radius, data.groundAngle, data.groundColor, false ); - - scene.add( new THREE.Mesh( groundGeometry, groundMaterial ) ); - - } - - } else if ( /geometry/.exec( data.string ) ) { - - if ( 'Box' === data.nodeType ) { - - var s = data.size; - - parent.geometry = new THREE.BoxGeometry( s.x, s.y, s.z ); - - } else if ( 'Cylinder' === data.nodeType ) { - - parent.geometry = new THREE.CylinderGeometry( data.radius, data.radius, data.height ); - - } else if ( 'Cone' === data.nodeType ) { - - parent.geometry = new THREE.CylinderGeometry( data.topRadius, data.bottomRadius, data.height ); - - } else if ( 'Sphere' === data.nodeType ) { - - parent.geometry = new THREE.SphereGeometry( data.radius ); - - } else if ( 'IndexedFaceSet' === data.nodeType ) { - - var geometry = new THREE.Geometry(); - - var indexes, uvIndexes, uvs; - - for ( var i = 0, j = data.children.length; i < j; i ++ ) { - - var child = data.children[ i ]; - - var vec; - - if ( 'TextureCoordinate' === child.nodeType ) { - - uvs = child.points; - - } - - - if ( 'Coordinate' === child.nodeType ) { - - if ( child.points ) { - - for ( var k = 0, l = child.points.length; k < l; k ++ ) { - - var point = child.points[ k ]; - - vec = new THREE.Vector3( point.x, point.y, point.z ); - - geometry.vertices.push( vec ); - - } - - } - - if ( child.string.indexOf ( 'DEF' ) > -1 ) { - - var name = /DEF\s+([^\s]+)/.exec( child.string )[ 1 ]; - - defines[ name ] = geometry.vertices; - - } - - if ( child.string.indexOf ( 'USE' ) > -1 ) { - - var defineKey = /USE\s+([^\s]+)/.exec( child.string )[ 1 ]; - - geometry.vertices = defines[ defineKey ]; - } - - } - - } - - var skip = 0; - - // some shapes only have vertices for use in other shapes - if ( data.coordIndex ) { - - // read this: http://math.hws.edu/eck/cs424/notes2013/16_Threejs_Advanced.html - for ( var i = 0, j = data.coordIndex.length; i < j; i ++ ) { - - indexes = data.coordIndex[ i ]; if ( data.texCoordIndex ) uvIndexes = data.texCoordIndex[ i ]; - - // vrml support multipoint indexed face sets (more then 3 vertices). You must calculate the composing triangles here - skip = 0; - - // Face3 only works with triangles, but IndexedFaceSet allows shapes with more then three vertices, build them of triangles - while ( indexes.length >= 3 && skip < ( indexes.length - 2 ) ) { - - var face = new THREE.Face3( - indexes[ 0 ], - indexes[ skip + (data.ccw ? 1 : 2) ], - indexes[ skip + (data.ccw ? 2 : 1) ], - null // normal, will be added later - // todo: pass in the color, if a color index is present - ); - - if ( uvs && uvIndexes ) { - geometry.faceVertexUvs [0].push( [ - new THREE.Vector2 ( - uvs[ uvIndexes[ 0 ] ].x , - uvs[ uvIndexes[ 0 ] ].y - ) , - new THREE.Vector2 ( - uvs[ uvIndexes[ skip + (data.ccw ? 1 : 2) ] ].x , - uvs[ uvIndexes[ skip + (data.ccw ? 1 : 2) ] ].y - ) , - new THREE.Vector2 ( - uvs[ uvIndexes[ skip + (data.ccw ? 2 : 1) ] ].x , - uvs[ uvIndexes[ skip + (data.ccw ? 2 : 1) ] ].y - ) - ] ); - } - - skip ++; - - geometry.faces.push( face ); - - } - - - } - - } else { - - // do not add dummy mesh to the scene - parent.parent.remove( parent ); - - } - - if ( false === data.solid ) { - - parent.material.side = THREE.DoubleSide; - - } - - // we need to store it on the geometry for use with defines - geometry.solid = data.solid; - - geometry.computeFaceNormals(); - //geometry.computeVertexNormals(); // does not show - geometry.computeBoundingSphere(); - - // see if it's a define - if ( /DEF/.exec( data.string ) ) { - - geometry.name = /DEF ([^\s]+)/.exec( data.string )[ 1 ]; - defines[ geometry.name ] = geometry; - - } - - parent.geometry = geometry; - - } - - return; - - } else if ( /appearance/.exec( data.string ) ) { - - for ( var i = 0; i < data.children.length; i ++ ) { - - var child = data.children[ i ]; - - if ( 'Material' === child.nodeType ) { - - var material = new THREE.MeshPhongMaterial(); - - if ( undefined !== child.diffuseColor ) { - - var d = child.diffuseColor; - - material.color.setRGB( d.r, d.g, d.b ); - - } - - if ( undefined !== child.emissiveColor ) { - - var e = child.emissiveColor; - - material.emissive.setRGB( e.r, e.g, e.b ); - - } - - if ( undefined !== child.specularColor ) { - - var s = child.specularColor; - - material.specular.setRGB( s.r, s.g, s.b ); - - } - - if ( undefined !== child.transparency ) { - - var t = child.transparency; - - // transparency is opposite of opacity - material.opacity = Math.abs( 1 - t ); - - material.transparent = true; - - } - - if ( /DEF/.exec( data.string ) ) { - - material.name = /DEF ([^\s]+)/.exec( data.string )[ 1 ]; - - defines[ material.name ] = material; - - } - - parent.material = material; - - } - - if ( 'ImageTexture' === child.nodeType ) { - - var textureName = /"([^"]+)"/.exec(child.children[ 0 ]); - - if (textureName) { - - parent.material.name = textureName[ 1 ]; - - parent.material.map = textureLoader.load( texturePath + textureName[ 1 ] ); - - } - - } - - } - - return; - - } - - for ( var i = 0, l = data.children.length; i < l; i ++ ) { - - var child = data.children[ i ]; - - parseNode( data.children[ i ], object ); - - } - - }; - - parseNode( getTree( lines ), scene ); - - }; - - var scene = new THREE.Scene(); - - var lines = data.split( '\n' ); - - // some lines do not have breaks - for (var i = lines.length -1; i > -1; i--) { - - // split lines with {..{ or {..[ - some have both - if (/{.*[{\[]/.test (lines[i])) { - var parts = lines[i].split ('{').join ('{\n').split ('\n'); - parts.unshift(1); - parts.unshift(i); - lines.splice.apply(lines, parts); - } else - - // split lines with ]..} - if (/\].*}/.test (lines[i])) { - var parts = lines[i].split (']').join (']\n').split ('\n'); - parts.unshift(1); - parts.unshift(i); - lines.splice.apply(lines, parts); - } - - // split lines with }..} - if (/}.*}/.test (lines[i])) { - var parts = lines[i].split ('}').join ('}\n').split ('\n'); - parts.unshift(1); - parts.unshift(i); - lines.splice.apply(lines, parts); + if ( undefined !== e.location ) { + this.log('Exception at location start: offset: ' + e.location.start.offset + ' line: ' + e.location.start.line + ' column: ' + e.location.start.column); + this.log('Exception at location end: offset: ' + e.location.end.offset + ' line: ' + e.location.end.line + ' column: ' + e.location.end.column); } - // force the parser to create Coordinate node for empty coords - // coord USE something -> coord USE something Coordinate {} - if((lines[i].indexOf ('coord') > -1) && (lines[i].indexOf ('[') < 0) && (lines[i].indexOf ('{') < 0)) { - lines[i] += ' Coordinate {}'; - } + return; } + }, - var header = lines.shift(); + load: function (url, onLoad, onProgress, onError) { - if ( /V1.0/.exec( header ) ) { + var scope = this; - parseV1( lines, scene ); + var loader = new THREE.FileLoader(this.manager); + loader.load(url, function (text) { - } else if ( /V2.0/.exec( header ) ) { + onLoad(scope.parse(text)); - parseV2( lines, scene ); + }, onProgress, onError); - } + }, - return scene; + setCrossOrigin: function (value) { - } + this.crossOrigin = value; + + }, }; diff --git a/examples/models/vrml/house.wrl b/examples/models/vrml/house.wrl index eba7b6d26d1a0dc4d4bdf4f5a3d62e86f62f4ecb..f79fa59e636eebae4538032b97d3fe78e28184f0 100644 --- a/examples/models/vrml/house.wrl +++ b/examples/models/vrml/house.wrl @@ -2,5182 +2,5179 @@ Group { -children[ -DirectionalLight { - ambientIntensity 0 - color 1 1 0.9 - direction 0.5 -1.5 -1 - intensity 1.8 - on TRUE -} - -DirectionalLight { - ambientIntensity 0 - color 1 1 0.9 - direction -0.5 1 0 - intensity 1 - on TRUE -} - -NavigationInfo { - - avatarSize [ 0.2, 1.4, 0.5 ] - - headlight FALSE - - -} - - - - -DirectionalLight { - ambientIntensity 0 - color 0.6 0.6 0.8 - direction -1 0.5 2 - intensity 1 - on TRUE -} - -Background { - groundAngle [ 1.5 1.6 ] - groundColor [ 0.2 0.6 0.3, 0.4 0.4 0.35, 0.3 0.5 0.6 ] - backUrl [] - bottomUrl [] - frontUrl [] - leftUrl [] - rightUrl [] - topUrl [] - skyAngle [ 1.5 ] - skyColor [ 0.5 0.7 1, 0.7 1 0.9 ] - -} - -Viewpoint { - fieldOfView 1 - jump TRUE - orientation 0 1 0 -0.5 - position -4 2 10 - - description "Entry" -} - -Viewpoint { - fieldOfView 1 - jump TRUE - orientation 0 0 1 0 - position 3.5 1.7 13 - - description "Vooraanzicht" -} - -Viewpoint { - fieldOfView 1 - jump TRUE - orientation 0 0 1 0 - position 2.5 1.5 -4.5 - - description "Woonkamer" -} - -Viewpoint { - fieldOfView 1 - jump TRUE - orientation 0 0 1 0 - position 1.5 1.5 -1.7 - - description "Keuken" -} - - - -Viewpoint { - fieldOfView 1 - jump TRUE - orientation 0 1 0 3.1415927 - position 2.5 2.5 -20 - - description "Achteraanzicht" -} - -Viewpoint { - fieldOfView 1 - jump TRUE - orientation 1 0 0 -1.5707963 - position 2.5 20 -4.5 - - description "Bovenaanzicht" -} - - - - - -# beneden/beneden.wrl + children[ + DirectionalLight { + ambientIntensity 0 + color 1 1 0.9 + direction 0.5 -1.5 -1 + intensity 1.8 + on TRUE + } + DirectionalLight { + ambientIntensity 0 + color 1 1 0.9 + direction -0.5 1 0 + intensity 1 + on TRUE + } + NavigationInfo { + avatarSize [ 0.2, 1.4, 0.5 ] -DEF vloer Transform { - children [ - Shape { -appearance Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 1 0.5 0.3 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - 0.14 0 -0.14, - 5.54 0 -0.14, - 5.54 0 -8.86, - 0.14 0 -8.86, - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - 0, 1, 2, 3, -1, - 0, 3, 2, 1, -1, -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid TRUE - texCoordIndex [] - } - } - ] -} + headlight FALSE -DEF drempelvoor Transform { -children[ - Shape { - appearance Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.4 0.4 0.4 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 - } - } - geometry Box { - size 1.23 0.04 0.30 - } - - } - ] -translation 3.805 0.02 -0.14 -} + } -DEF drempelachter Transform { -children[ - Shape { - appearance Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.4 0.4 0.4 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 - } - } - geometry Box { - size 1.05 0.04 0.30 - } - - } - ] -translation 1.725 0.02 -8.86 -} + DirectionalLight { + ambientIntensity 0 + color 0.6 0.6 0.8 + direction -1 0.5 2 + intensity 1 + on TRUE + } + Background { + groundAngle [ 1.5, 1.6 ] + groundColor [ 0.2 0.6 0.3, 0.4 0.4 0.35, 0.3 0.5 0.6 ] + backUrl [] + bottomUrl [] + frontUrl [] + leftUrl [] + rightUrl [] + topUrl [] + skyAngle [ 1.5 ] + skyColor [ 0.5 0.7 1, 0.7 1 0.9 ] -DEF stukmuur1 Transform { -children[ - Shape { - appearance DEF wandkleur Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 1 0.9 0.7 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry Box { - size 0.70 2.70 0.07 - } - - } - ] -translation 0.63 1.35 -3.395 -} + } -DEF stukmuur2 Transform { -children[ - Shape { - appearance USE wandkleur - geometry Box { - size 1.41 2.70 0.07 - } - - } - ] -translation 2.485 1.35 -3.395 -} + Viewpoint { + fieldOfView 1 + jump TRUE + orientation 0 1 0 -0.5 + position -4 2 10 + description "Entry" + } -DEF stukmuur3 Transform { -children[ - Shape { - appearance USE wandkleur - geometry Box { - size 0.43 2.70 0.07 - } + Viewpoint { + fieldOfView 1 + jump TRUE + orientation 0 0 1 0 + position 3.5 1.7 13 - } - ] -translation 4.205 1.35 -3.395 -} + description "Vooraanzicht" + } -DEF stukmuur4 Transform { -children[ - Shape { - appearance USE wandkleur - geometry Box { - size 1.06 2.8 0.07 - } - - } - ] -translation 4.87 1.4 -4.395 -} + Viewpoint { + fieldOfView 1 + jump TRUE + orientation 0 0 1 0 + position 2.5 1.5 -4.5 -DEF stukmuur5 Transform { -children[ - Shape { - appearance USE wandkleur - geometry Box { - size 0.07 2.70 2.28 - } - - } - ] -translation 3.155 1.35 -1.42 -} + description "Woonkamer" + } -DEF stukmuur6 Transform { -children[ - Shape { - appearance USE wandkleur - geometry Box { - size 0.98 2.8 0.07 - } - - } - ] -translation 4.91 1.4 -2.325 -} + Viewpoint { + fieldOfView 1 + jump TRUE + orientation 0 0 1 0 + position 1.5 1.5 -1.7 -DEF stukmuur7 Transform { -children[ - Shape { - appearance USE wandkleur - geometry Box { - size 0.98 2.70 0.07 - } - - } - ] -translation 4.91 1.35 -1.515 -} + description "Keuken" + } -DEF stukmuur8 Transform { -children[ - Shape { - appearance USE wandkleur - geometry Box { - size 0.07 2.70 0.4 - } - } - ] -translation 4.455 1.35 -0.48 -} - -DEF stukmuur9 Transform { -children[ - Shape { - appearance USE wandkleur - geometry Box { - size 0.07 2.70 0.74 - } - - } - ] -translation 4.7 1.35 -1.92 -} + Viewpoint { + fieldOfView 1 + jump TRUE + orientation 0 1 0 3.1415927 + position 2.5 2.5 -20 + description "Achteraanzicht" + } + Viewpoint { + fieldOfView 1 + jump TRUE + orientation 1 0 0 -1.5707963 + position 2.5 20 -4.5 -# binmuur.wrl + description "Bovenaanzicht" + } -Transform { - children [ - Shape { -appearance Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 1 0.9 0.7 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - 0.28 0 -0.28, #0 linkerbenedenhoek voorgevel - 5.40 0 -0.28, - 5.40 5.40 -0.28, - 0.28 5.40 -0.28, #3 linkerbovenhoek voorgevel - - 3.19 0 -0.28, #4 voordeur - 4.42 0 -0.28, - 4.42 2.30 -0.28, - 3.19 2.30 -0.28, #7 voordeur - - 4.84 1.60 -0.28, #toiletraam-8 - 5.04 1.60 -0.28, - 5.04 2.30 -0.28, - 4.84 2.30 -0.28, - - 2.60 0.90 -0.28, #keukenraam-12 - 2.60 2.30 -0.28, - 0.60 2.30 -0.28, - 0.60 0.90 -0.28, - - 0.60 3.60 -0.28, #bovenraam-16 - 1.50 3.60 -0.28, - 1.50 5.0 -0.28, - 4.42 5.0 -0.28, - 4.42 5.40 -0.28, - 0.60 5.40 -0.28, - - 0.28 8.55 -3.15, #linkergevel-22 - 0.28 2.70 -8.72, - 0.28 0 -8.72, - - 5.40 8.55 -3.15, #rechtergevel-25 - 5.40 5.40 -6.30, - 5.40 5.40 -8.72, - 5.40 0 -8.72, - - 2.25 0 -8.72, #achtergevel-29 - 2.25 0.6 -8.72, - 4.8 0.6 -8.72, - 4.8 5.40 -8.72, - 1.2 0 -8.72, - 1.2 2.70 -8.72, + # beneden/beneden.wrl + + + + + DEF vloer Transform { + children [ + Shape { + appearance Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 1 0.5 0.3 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + 0.14 0 -0.14, + 5.54 0 -0.14, + 5.54 0 -8.86, + 0.14 0 -8.86, + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + 0, 1, 2, 3, -1, + 0, 3, 2, 1, -1, + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid TRUE + texCoordIndex [] + } + } + ] + } - 3.19 0 -0.14, #diepte van de voordeur-35 - 4.42 0 -0.14, - 4.42 2.30 -0.14, - 3.19 2.30 -0.14, #diepte van de voordeur-38 - 2.60 0.90 -0.14, # diepte van het keukenraam-39 - 2.60 2.30 -0.14, - 0.60 2.30 -0.14, - 0.60 0.90 -0.14, + DEF drempelvoor Transform { + children[ + Shape { + appearance Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.4 0.4 0.4 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } + } + geometry Box { + size 1.23 0.04 0.30 + } - 4.84 1.60 -0.14, #diepte van het toiletraam-43 - 5.04 1.60 -0.14, - 5.04 2.30 -0.14, - 4.84 2.30 -0.14, + } + ] + translation 3.805 0.02 -0.14 + } - 0.60 3.60 -0.14, #diepte van het bovenraam-47 - 1.50 3.60 -0.14, - 1.50 5.0 -0.14, - 4.42 5.0 -0.14, - 4.42 5.40 -0.14, - 0.60 5.40 -0.14, #52 + DEF drempelachter Transform { + children[ + Shape { + appearance Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.4 0.4 0.4 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } + } + geometry Box { + size 1.05 0.04 0.30 + } - 2.25 0 -8.86, #diepte van de achtergevel-53 - 2.25 0.6 -8.86, - 4.8 0.6 -8.86, - 4.8 5.40 -8.86, - 1.2 0 -8.86, - 1.2 2.70 -8.86, #58 + } + ] + translation 1.725 0.02 -8.86 + } - 0.28 5.40 0, #59 hoekpunt voor dakvorm zolder - 5.40 5.40 0, - 0.28 5.40 -6.30, #61 - 0.28 2.70 -9.0, #62 hoekpunt voor dakvorm 1e verdieping - 0.28 2.7 -0.28, #63 extra punten voor segmentering beneden - 0.14 2.7 -0.14, + DEF stukmuur1 Transform { + children[ + Shape { + appearance DEF wandkleur Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 1 0.9 0.7 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry Box { + size 0.70 2.70 0.07 + } - 5.4 2.7 -0.28, #65 - 5.54 2.7 -0.14, # + } + ] + translation 0.63 1.35 -3.395 + } - 0.28 2.7 -8.72, #67 - 0.14 2.7 -8.86, # + DEF stukmuur2 Transform { + children[ + Shape { + appearance USE wandkleur + geometry Box { + size 1.41 2.70 0.07 + } - 5.4 2.7 -8.72, #69 - 5.54 2.7 -8.86, # + } + ] + translation 2.485 1.35 -3.395 + } - 1.2 2.7 -8.72, #71 - 1.2 2.7 -8.86, # - 4.8 2.7 -8.72, #73 - 4.8 2.7 -8.86, # - - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - 0, 4, 12, 15, -1, - 0, 15, 12, 4, -1, + DEF stukmuur3 Transform { + children[ + Shape { + appearance USE wandkleur + geometry Box { + size 0.43 2.70 0.07 + } - 0, 15, 14, 63, -1, - 0, 63, 14, 15, -1, + } + ] + translation 4.205 1.35 -3.395 + } - 14, 13, 65, 63, -1, - - 4, 12, 13, 7, -1, + DEF stukmuur4 Transform { + children[ + Shape { + appearance USE wandkleur + geometry Box { + size 1.06 2.8 0.07 + } - 13, 7, 6, 65, -1, + } + ] + translation 4.87 1.4 -4.395 + } - 6, 11, 10, 65, -1, + DEF stukmuur5 Transform { + children[ + Shape { + appearance USE wandkleur + geometry Box { + size 0.07 2.70 2.28 + } - 5, 8, 11, 6, -1, + } + ] + translation 3.155 1.35 -1.42 + } - 5, 8, 9, 1, -1, + DEF stukmuur6 Transform { + children[ + Shape { + appearance USE wandkleur + geometry Box { + size 0.98 2.8 0.07 + } - 1, 9, 10, 65, -1, + } + ] + translation 4.91 1.4 -2.325 + } - 0, 63, 67, 24, -1, + DEF stukmuur7 Transform { + children[ + Shape { + appearance USE wandkleur + geometry Box { + size 0.98 2.70 0.07 + } - 67, 24, 33, 71, -1, + } + ] + translation 4.91 1.35 -1.515 + } - 28, 29, 30, 31, -1, - 28, 31, 73, 69, -1, + DEF stukmuur8 Transform { + children[ + Shape { + appearance USE wandkleur + geometry Box { + size 0.07 2.70 0.4 + } - 28, 69, 65, 1, -1, + } + ] + translation 4.455 1.35 -0.48 + } - 63, 65, 66, 64, -1, + DEF stukmuur9 Transform { + children[ + Shape { + appearance USE wandkleur + geometry Box { + size 0.07 2.70 0.74 + } - 65, 69, 70, 66, -1, + } + ] + translation 4.7 1.35 -1.92 + } - 63, 67, 68, 64, -1, - 69, 73, 74, 70, -1, - 67, 71, 72, 68, -1, + # binmuur.wrl + + + + + Transform { + children [ + Shape { + appearance Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 1 0.9 0.7 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + 0.28 0 -0.28, #0 linkerbenedenhoek voorgevel + 5.40 0 -0.28, + 5.40 5.40 -0.28, + 0.28 5.40 -0.28, #3 linkerbovenhoek voorgevel + + 3.19 0 -0.28, #4 voordeur + 4.42 0 -0.28, + 4.42 2.30 -0.28, + 3.19 2.30 -0.28, #7 voordeur + + 4.84 1.60 -0.28, #toiletraam-8 + 5.04 1.60 -0.28, + 5.04 2.30 -0.28, + 4.84 2.30 -0.28, + + 2.60 0.90 -0.28, #keukenraam-12 + 2.60 2.30 -0.28, + 0.60 2.30 -0.28, + 0.60 0.90 -0.28, + + 0.60 3.60 -0.28, #bovenraam-16 + 1.50 3.60 -0.28, + 1.50 5.0 -0.28, + 4.42 5.0 -0.28, + 4.42 5.40 -0.28, + 0.60 5.40 -0.28, - 5, 6, 37, 36, -1, + 0.28 8.55 -3.15, #linkergevel-22 + 0.28 2.70 -8.72, + 0.28 0 -8.72, - 6, 7, 38, 37, -1, + 5.40 8.55 -3.15, #rechtergevel-25 + 5.40 5.40 -6.30, + 5.40 5.40 -8.72, + 5.40 0 -8.72, - 4, 35, 38, 7, -1, + 2.25 0 -8.72, #achtergevel-29 + 2.25 0.6 -8.72, + 4.8 0.6 -8.72, + 4.8 5.40 -8.72, + 1.2 0 -8.72, + 1.2 2.70 -8.72, - 12, 39, 40, 13, -1, - 13, 40, 41, 14, -1, + 3.19 0 -0.14, #diepte van de voordeur-35 + 4.42 0 -0.14, + 4.42 2.30 -0.14, + 3.19 2.30 -0.14, #diepte van de voordeur-38 - 14, 41, 42, 15, -1, + 2.60 0.90 -0.14, # diepte van het keukenraam-39 + 2.60 2.30 -0.14, + 0.60 2.30 -0.14, + 0.60 0.90 -0.14, - 15, 42, 39, 12, -1, + 4.84 1.60 -0.14, #diepte van het toiletraam-43 + 5.04 1.60 -0.14, + 5.04 2.30 -0.14, + 4.84 2.30 -0.14, - 8, 43, 44, 9, -1, + 0.60 3.60 -0.14, #diepte van het bovenraam-47 + 1.50 3.60 -0.14, + 1.50 5.0 -0.14, + 4.42 5.0 -0.14, + 4.42 5.40 -0.14, + 0.60 5.40 -0.14, #52 + 2.25 0 -8.86, #diepte van de achtergevel-53 + 2.25 0.6 -8.86, + 4.8 0.6 -8.86, + 4.8 5.40 -8.86, + 1.2 0 -8.86, + 1.2 2.70 -8.86, #58 - 9, 44, 45, 10, -1, + 0.28 5.40 0, #59 hoekpunt voor dakvorm zolder + 5.40 5.40 0, + 0.28 5.40 -6.30, #61 + 0.28 2.70 -9.0, #62 hoekpunt voor dakvorm 1e verdieping + 0.28 2.7 -0.28, #63 extra punten voor segmentering beneden + 0.14 2.7 -0.14, - 10, 45, 46, 11, -1, + 5.4 2.7 -0.28, #65 + 5.54 2.7 -0.14, # + 0.28 2.7 -8.72, #67 + 0.14 2.7 -8.86, # - 11, 46, 43, 8, -1, + 5.4 2.7 -8.72, #69 + 5.54 2.7 -8.86, # + 1.2 2.7 -8.72, #71 + 1.2 2.7 -8.86, # - 29, 53, 54, 30, -1, + 4.8 2.7 -8.72, #73 + 4.8 2.7 -8.86, # + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + 0, 4, 12, 15, -1, + 0, 15, 12, 4, -1, - 30, 54, 55, 31, -1, + 0, 15, 14, 63, -1, + 0, 63, 14, 15, -1, + 14, 13, 65, 63, -1, - 31, 55, 74, 73, -1, + 4, 12, 13, 7, -1, + 13, 7, 6, 65, -1, - 33, 57, 72, 71, -1, + 6, 11, 10, 65, -1, + 5, 8, 11, 6, -1, + 5, 8, 9, 1, -1, + 1, 9, 10, 65, -1, + 0, 63, 67, 24, -1, -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid FALSE - texCoordIndex [] - } - } - ] -} + 67, 24, 33, 71, -1, -#benodigde tijd tot hier 2 uur(kale buitenkant van het huis ) + 28, 29, 30, 31, -1, -# /binmuur.wrl + 28, 31, 73, 69, -1, -# buitmuur.wrl + 28, 69, 65, 1, -1, + 63, 65, 66, 64, -1, + 65, 69, 70, 66, -1, + 63, 67, 68, 64, -1, -Transform { - children [ - Shape { -appearance DEF steen Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.8 0.4 0.3 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - 0 0 0, # 0 linkerbenedenhoek voorgevel - 5.68 0 0, - 5.68 5.40 0, # 2 - 0 5.40 0, # 3 linkerbovenhoek voorgevel - - 3.19 0 0, #voordeur - 4.42 0 0, - 4.42 2.30 0, # 6 - 3.19 2.30 0, # 7 voordeur - - 4.84 1.60 0, #toiletraam-8 - 5.04 1.60 0, - 5.04 2.30 0, # 10 - 4.84 2.30 0, + 69, 73, 74, 70, -1, - 2.60 0.90 0, #keukenraam-12 - 2.60 2.30 0, # 13 - 0.60 2.30 0, - 0.60 0.90 0, + 67, 71, 72, 68, -1, - 0.60 3.60 0, #bovenraam-16 - 1.50 3.60 0, - 1.50 5.0 0, - 4.42 5.0 0, - 4.42 5.40 0, - 0.60 5.40 0, + 5, 6, 37, 36, -1, - 0 8.555 -3.15, #linkergevel-22 - 0 2.7 -9.0, - 0 0 -9.0, + 6, 7, 38, 37, -1, - 5.68 8.555 -3.15, #rechtergevel-25 - 5.68 5.40 -6.3, - 5.68 5.40 -9, - 5.68 0 -9.0, + 4, 35, 38, 7, -1, - 2.25 0 -9.0, #achtergevel-29 - 2.25 0.6 -9.0, - 4.8 0.6 -9.0, - 4.8 5.40 -9.0, - 1.2 0 -9.0, - 1.2 2.7 -9, + 12, 39, 40, 13, -1, + 13, 40, 41, 14, -1, - 3.19 0 -0.14, #diepte van de voordeur-35 - 4.42 0 -0.14, - 4.42 2.30 -0.14, - 3.19 2.30 -0.14, #diepte van de voordeur-38 + 14, 41, 42, 15, -1, - 2.60 0.90 -0.14, # diepte van het keukenraam-39 - 2.60 2.30 -0.14, - 0.60 2.30 -0.14, - 0.60 0.90 -0.14, + 15, 42, 39, 12, -1, - 4.84 1.60 -0.14, #diepte van het toiletraam-43 - 5.04 1.60 -0.14, - 5.04 2.30 -0.14, - 4.84 2.30 -0.14, + 8, 43, 44, 9, -1, - 0.60 3.60 -0.14, #diepte van het bovenraam-47 - 1.50 3.60 -0.14, - 1.50 5.0 -0.14, - 4.42 5.0 -0.14, - 4.42 5.40 -0.14, - 0.60 5.40 -0.14, #52 - 2.25 0 -8.86, #diepte van de achtergevel-53 - 2.25 0.6 -8.86, - 4.8 0.6 -8.86, - 4.8 5.40 -8.86, - 1.2 0 -8.86, - 1.2 2.7 -8.86, #58 + 9, 44, 45, 10, -1, - 0 2.7 0, #59 extra punten voor segmentering beneden - 0.14 2.7 -0.14, - 5.68 2.7 0, #61 - 5.54 2.7 -0.14, # + 10, 45, 46, 11, -1, - 0 2.7 -9, #63 - 0.14 2.7 -8.86, # - 5.68 2.7 -9, #65 - 5.54 2.7 -8.86, # + 11, 46, 43, 8, -1, - 1.2 2.7 -9, #67 - 1.2 2.7 -8.86, # - 4.8 2.7 -9, #69 - 4.8 2.7 -8.86, # + 29, 53, 54, 30, -1, + 30, 54, 55, 31, -1, - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - 0, 4, 12, 15, -1, - 0, 15, 14, 59, -1, + 31, 55, 74, 73, -1, - 14, 13, 61, 59,-1, + 33, 57, 72, 71, -1, - 4, 7, 13, 12, -1, - 13, 11, 61, -1, - 11, 10, 61, -1, - 9, 1, 61, 10, -1, - 5, 1, 9, 8, -1, + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid FALSE + texCoordIndex [] + } + } + ] + } - 5, 8, 11, 6, -1, + #benodigde tijd tot hier 2 uur(kale buitenkant van het huis ) + + # /binmuur.wrl + + # buitmuur.wrl + + + + + Transform { + children [ + Shape { + appearance DEF steen Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.8 0.4 0.3 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + 0 0 0, # 0 linkerbenedenhoek voorgevel + 5.68 0 0, + 5.68 5.40 0, # 2 + 0 5.40 0, # 3 linkerbovenhoek voorgevel + + 3.19 0 0, #voordeur + 4.42 0 0, + 4.42 2.30 0, # 6 + 3.19 2.30 0, # 7 voordeur + + 4.84 1.60 0, #toiletraam-8 + 5.04 1.60 0, + 5.04 2.30 0, # 10 + 4.84 2.30 0, + 2.60 0.90 0, #keukenraam-12 + 2.60 2.30 0, # 13 + 0.60 2.30 0, + 0.60 0.90 0, - 0, 59, 63, 24, -1, + 0.60 3.60 0, #bovenraam-16 + 1.50 3.60 0, + 1.50 5.0 0, + 4.42 5.0 0, + 4.42 5.40 0, + 0.60 5.40 0, - 1, 28, 65, 61, -1, + 0 8.555 -3.15, #linkergevel-22 + 0 2.7 -9.0, + 0 0 -9.0, - 28, 29, 30, 31, -1, + 5.68 8.555 -3.15, #rechtergevel-25 + 5.68 5.40 -6.3, + 5.68 5.40 -9, + 5.68 0 -9.0, - 28, 31, 69, 65, -1, + 2.25 0 -9.0, #achtergevel-29 + 2.25 0.6 -9.0, + 4.8 0.6 -9.0, + 4.8 5.40 -9.0, + 1.2 0 -9.0, + 1.2 2.7 -9, - 33, 24, 63, 67, -1, - 5, 6, 37, 36, -1, + 3.19 0 -0.14, #diepte van de voordeur-35 + 4.42 0 -0.14, + 4.42 2.30 -0.14, + 3.19 2.30 -0.14, #diepte van de voordeur-38 - 6, 7, 38, 37, -1, + 2.60 0.90 -0.14, # diepte van het keukenraam-39 + 2.60 2.30 -0.14, + 0.60 2.30 -0.14, + 0.60 0.90 -0.14, - 4, 35, 38, 7, -1, + 4.84 1.60 -0.14, #diepte van het toiletraam-43 + 5.04 1.60 -0.14, + 5.04 2.30 -0.14, + 4.84 2.30 -0.14, - 12, 13, 40, 39, -1, + 0.60 3.60 -0.14, #diepte van het bovenraam-47 + 1.50 3.60 -0.14, + 1.50 5.0 -0.14, + 4.42 5.0 -0.14, + 4.42 5.40 -0.14, + 0.60 5.40 -0.14, #52 - 13, 14, 41, 40, -1, + 2.25 0 -8.86, #diepte van de achtergevel-53 + 2.25 0.6 -8.86, + 4.8 0.6 -8.86, + 4.8 5.40 -8.86, + 1.2 0 -8.86, + 1.2 2.7 -8.86, #58 - 15, 42, 41, 14, -1, + 0 2.7 0, #59 extra punten voor segmentering beneden + 0.14 2.7 -0.14, - 12, 39, 42, 15, -1 + 5.68 2.7 0, #61 + 5.54 2.7 -0.14, # - 8, 9, 44, 43, -1, + 0 2.7 -9, #63 + 0.14 2.7 -8.86, # - 9, 10 , 45, 44, -1, + 5.68 2.7 -9, #65 + 5.54 2.7 -8.86, # - 10, 11, 46, 45, -1, + 1.2 2.7 -9, #67 + 1.2 2.7 -8.86, # - 11, 8, 43, 46, -1, + 4.8 2.7 -9, #69 + 4.8 2.7 -8.86, # - 29, 53, 54, 30, -1, - 30, 54, 55, 31, -1, - 31, 55, 70, 69, -1, + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + 0, 4, 12, 15, -1, - 33, 67, 68, 57, -1, + 0, 15, 14, 59, -1, - 59, 61, 62, 60, -1, + 14, 13, 61, 59,-1, - 59, 60, 64, 63, -1, - 61, 65, 66, 62, -1, + 4, 7, 13, 12, -1, - 65, 69, 70, 66, -1, + 13, 11, 61, -1, - 64, 68, 67, 63, -1, + 11, 10, 61, -1, + 9, 1, 61, 10, -1, + 5, 1, 9, 8, -1, -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid FALSE - texCoordIndex [] - } - } - ] -} + 5, 8, 11, 6, -1, -Transform{#schuurtje -children [ - -DEF schuurvloer Transform { - children [ - Shape { -appearance Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 1 0.5 0.3 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - 0.1 0 -0.1, - 2.1 0 -0.1, - 2.1 0 -3.1, - 0.1 0 -3.1, - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - 0, 1, 2, 3, -1, - -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid FALSE - texCoordIndex [] - } - } - ] -} + 0, 59, 63, 24, -1, -Transform { -children [ -Shape { -appearance USE steen -geometry Box { size 2.2 2.6 0.1 } -} -] -translation 1.1 1.3 -0.05 -} + 1, 28, 65, 61, -1, -Transform{ -children [ -Shape { -appearance USE steen -geometry Box { size 2.2 2.6 0.1 } -} -] -translation 1.1 1.3 -3.15 -} + 28, 29, 30, 31, -1, -Transform{ -children [ -Shape { -appearance USE steen -geometry Box { size 0.1 2.6 1.3 } -} -] -translation 0.05 1.3 -0.75 -} + 28, 31, 69, 65, -1, -Transform{ -children [ -Shape { -appearance USE steen -geometry Box { size 0.1 2.6 0.75 } -} -] -translation 0.05 1.3 -2.725 -} + 33, 24, 63, 67, -1, -Transform{ -children [ -Shape { -appearance USE steen -geometry Box { size 0.1 2.6 3 } -} -] -translation 2.15 1.3 -1.6 -} + 5, 6, 37, 36, -1, -Transform{ -children [ -Shape { -appearance DEF blauw Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.3 0.4 0.7 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} -geometry Box { size 0.05 0.44 0.85 } -} -] -translation 0.05 2.38 -1.875 -} + 6, 7, 38, 37, -1, -Transform{#drempel van schuurdeur -children [ - -Transform{#deurpost -children [ - -DEF deurpost Shape { - appearance DEF grijs Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.4 0.4 0.4 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 - } - } - geometry Box { - size 0.05 2.56 0.05 - } - } -] -translation 0 1.3 0.45 -} + 4, 35, 38, 7, -1, -Transform{#deurpost -children [ - -Shape { - appearance USE grijs - geometry Box { - size 0.05 0.05 0.85 - } - } -] -translation 0 2.135 0 -} + 12, 13, 40, 39, -1, + 13, 14, 41, 40, -1, -Transform{#deurpost -children [ + 15, 42, 41, 14, -1, -USE deurpost -] -translation 0 1.3 -0.45 -} + 12, 39, 42, 15, -1 -Shape { - appearance USE grijs - geometry Box { - size 0.1 0.04 0.95 - } + 8, 9, 44, 43, -1, - } -] -translation 0.05 0.02 -1.875 -} + 9, 10 , 45, 44, -1, + 10, 11, 46, 45, -1, -] -translation 3.48 0 7.8 -} + 11, 8, 43, 46, -1, -# /buitmuur.wrl + 29, 53, 54, 30, -1, + 30, 54, 55, 31, -1, -# trapbeneden.wrl + 31, 55, 70, 69, -1, + 33, 67, 68, 57, -1, + 59, 61, 62, 60, -1, + 59, 60, 64, 63, -1, -DEF trapbeneden Transform { - children [ - Shape { -appearance Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 1 0.5 0.3 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry DEF trap IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - -0.2 0 1, #0 - 0 0.2 1, - 0 0.2 0, - -0.2 0 0, #3 - - 0.28 0.4 1, #4 - 0.6 0.6 1, - 0.98 0.8 1, - 0.98 1 0.45, #7 - - 0.98 1.2 0.25, #8 - 0.98 1.4 0, - 0.98 1.6 -0.25, - 0.98 1.8 -0.45, #11 - - 0.98 2.0 -1, #12 - 0.6 2.2 -1, - 0.28 2.4 -1, - 0 2.6 -1, #15 - - 0 0.6 0, #16 - 0 0.8 0, - 0 1 0, #18 - 0 1.2 0, #19 - - 0 1.4 0, #20 - 0 1.6 0, - 0 1.8 0, #22 - 0 2 0, #23 - - 0 2.2 0, #24 - 0 2.4 0, - 0 2.6 0, - 0 2.8 0, #27 - - -0.2 0.2 1, #28 - 0 0.4 1, - 0 0.4 0, - -0.2 0.2 0, #31 - - 0.28 0.6 1, #32 - 0.6 0.8 1, - 0.98 1 1, - 0.98 1.2 0.45, #35 - - 0.98 1.4 0.25, #36 - 0.98 1.6 0, - 0.98 1.8 -0.25, - 0.98 2 -0.45, #39 - - 0.98 2.2 -1, #40 - 0.6 2.4 -1, - 0.28 2.6 -1, - 0 2.8 -1, #43 - - 0 0 1, - 0 0 0, #45 - 0 0.4 0, #46 - - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - - 28, 1, 2, 31, -1, #1e_treevlak - 29, 4, 46, -1, #2e - 32, 5, 16, -1, - 33, 6, 17, -1, - 34, 7, 18, -1, - 35, 8, 19, -1, - 36, 9, 20, -1, - 37, 10, 21, -1, - 38, 11, 22, -1, - 39, 12, 23, -1, - 40, 13, 24, -1, - 41, 14, 25, -1, - 42, 15, 26, -1, #13e_treevlak - - 0, 28, 31, 3, -1, #voor_en_zijvlakken_van_de_eerste_tree - 0, 44, 1, 28, -1, - 3, 31, 2, 45, -1, - - 2, 1, 29, 30, -1, #alle_voorvlakken - 46, 4, 32, 16, -1, - 16, 5, 33, 17, -1, - 17, 6, 34, 18, -1, - 18, 7, 35, 19, -1, - 19, 8, 36, 20, -1, - 20, 9, 37, 21, -1, - 21, 10, 38, 22, -1, - 22, 11, 39, 23, -1, - 23, 12, 40, 24, -1, - 24, 13, 41, 25, -1, - 25, 14, 42, 26, -1, - 26, 15, 43, 27, -1, - - - - -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid FALSE - texCoordIndex [] - } - } - ] -translation 4.42 0 -3.36 -} + 61, 65, 66, 62, -1, + 65, 69, 70, 66, -1, + 64, 68, 67, 63, -1, -# /trapbeneden.wrl + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid FALSE + texCoordIndex [] + } + } + ] + } -# deuren.wrl + Transform{#schuurtje + children [ + + DEF schuurvloer Transform { + children [ + Shape { + appearance Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 1 0.5 0.3 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + 0.1 0 -0.1, + 2.1 0 -0.1, + 2.1 0 -3.1, + 0.1 0 -3.1, + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + 0, 1, 2, 3, -1, + + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid FALSE + texCoordIndex [] + } + } + ] + } + Transform { + children [ + Shape { + appearance USE steen + geometry Box { size 2.2 2.6 0.1 } + } + ] + translation 1.1 1.3 -0.05 + } -Transform { -children [ -DEF deurgroep Group {#DEURKEUKENWOONKAMER -children[ -#dwarslat boven de deur -DEF dwarslat Transform { - children [ - Shape { -appearance DEF kozijn Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.95 0.95 0.9 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry Box { size 0.8 0.05 0.05 } -} + Transform{ + children [ + Shape { + appearance USE steen + geometry Box { size 2.2 2.6 0.1 } + } + ] + translation 1.1 1.3 -3.15 + } -] -translation 0 2.035 0 -} + Transform{ + children [ + Shape { + appearance USE steen + geometry Box { size 0.1 2.6 1.3 } + } + ] + translation 0.05 1.3 -0.75 + } + Transform{ + children [ + Shape { + appearance USE steen + geometry Box { size 0.1 2.6 0.75 } + } + ] + translation 0.05 1.3 -2.725 + } + Transform{ + children [ + Shape { + appearance USE steen + geometry Box { size 0.1 2.6 3 } + } + ] + translation 2.15 1.3 -1.6 + } + Transform{ + children [ + Shape { + appearance DEF blauw Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.3 0.4 0.7 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry Box { size 0.05 0.44 0.85 } + } + ] + translation 0.05 2.38 -1.875 + } -DEF ruitje Transform { - children [ - Shape { -appearance DEF glas Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.6 0.6 0.9 - emissiveColor 0 0 0 - shininess 0.8 - specularColor 1 1 1 - transparency 0.7 -} texture NULL - textureTransform NULL -} - geometry Box { size 0.8 0.64 0.01 } -} + Transform{#drempel van schuurdeur + children [ + + Transform{#deurpost + children [ + + DEF deurpost Shape { + appearance DEF grijs Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.4 0.4 0.4 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } + } + geometry Box { + size 0.05 2.56 0.05 + } + } + ] + translation 0 1.3 0.45 + } + + Transform{#deurpost + children [ + + Shape { + appearance USE grijs + geometry Box { + size 0.05 0.05 0.85 + } + } + ] + translation 0 2.135 0 + } + + + Transform{#deurpost + children [ + + USE deurpost + ] + translation 0 1.3 -0.45 + } + + Shape { + appearance USE grijs + geometry Box { + size 0.1 0.04 0.95 + } + + } + ] + translation 0.05 0.02 -1.875 + } -] -translation 0 2.38 0 -}#ruit boven de deur -#deur -DEF deur Transform { -center -0.4 0 0 - children [ + ] + translation 3.48 0 7.8 + } + # /buitmuur.wrl + + + # trapbeneden.wrl + + + + + DEF trapbeneden Transform { + children [ + Shape { + appearance Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 1 0.5 0.3 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry DEF trap IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + -0.2 0 1, #0 + 0 0.2 1, + 0 0.2 0, + -0.2 0 0, #3 + + 0.28 0.4 1, #4 + 0.6 0.6 1, + 0.98 0.8 1, + 0.98 1 0.45, #7 + + 0.98 1.2 0.25, #8 + 0.98 1.4 0, + 0.98 1.6 -0.25, + 0.98 1.8 -0.45, #11 + + 0.98 2.0 -1, #12 + 0.6 2.2 -1, + 0.28 2.4 -1, + 0 2.6 -1, #15 + + 0 0.6 0, #16 + 0 0.8 0, + 0 1 0, #18 + 0 1.2 0, #19 + + 0 1.4 0, #20 + 0 1.6 0, + 0 1.8 0, #22 + 0 2 0, #23 + + 0 2.2 0, #24 + 0 2.4 0, + 0 2.6 0, + 0 2.8 0, #27 + + -0.2 0.2 1, #28 + 0 0.4 1, + 0 0.4 0, + -0.2 0.2 0, #31 + + 0.28 0.6 1, #32 + 0.6 0.8 1, + 0.98 1 1, + 0.98 1.2 0.45, #35 + + 0.98 1.4 0.25, #36 + 0.98 1.6 0, + 0.98 1.8 -0.25, + 0.98 2 -0.45, #39 + + 0.98 2.2 -1, #40 + 0.6 2.4 -1, + 0.28 2.6 -1, + 0 2.8 -1, #43 + + 0 0 1, + 0 0 0, #45 + 0 0.4 0, #46 + + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + + 28, 1, 2, 31, -1, #1e_treevlak + 29, 4, 46, -1, #2e + 32, 5, 16, -1, + 33, 6, 17, -1, + 34, 7, 18, -1, + 35, 8, 19, -1, + 36, 9, 20, -1, + 37, 10, 21, -1, + 38, 11, 22, -1, + 39, 12, 23, -1, + 40, 13, 24, -1, + 41, 14, 25, -1, + 42, 15, 26, -1, #13e_treevlak + + 0, 28, 31, 3, -1, #voor_en_zijvlakken_van_de_eerste_tree + 0, 44, 1, 28, -1, + 3, 31, 2, 45, -1, + + 2, 1, 29, 30, -1, #alle_voorvlakken + 46, 4, 32, 16, -1, + 16, 5, 33, 17, -1, + 17, 6, 34, 18, -1, + 18, 7, 35, 19, -1, + 19, 8, 36, 20, -1, + 20, 9, 37, 21, -1, + 21, 10, 38, 22, -1, + 22, 11, 39, 23, -1, + 23, 12, 40, 24, -1, + 24, 13, 41, 25, -1, + 25, 14, 42, 26, -1, + 26, 15, 43, 27, -1, + + + + + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid FALSE + texCoordIndex [] + } + } + ] + translation 4.42 0 -3.36 + } -DEF klikopdeur TouchSensor {} - DEF TimeSource TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. - # Animeer het openzwaaien van de deur rond de Y as: - DEF Deuropen OrientationInterpolator { - key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] - keyValue [ 0 1 0 0, 0 1 0 -1, 0 1 0 -2, 0 1 0 -2, 0 1 0 -1, 0 1 0 0 ] - } -# ../boven/deurklink.wrl + # /trapbeneden.wrl + # deuren.wrl + Transform { + children [ + DEF deurgroep Group {#DEURKEUKENWOONKAMER + children[ + #dwarslat boven de deur + DEF dwarslat Transform { + children [ + Shape { + appearance DEF kozijn Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.95 0.95 0.9 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry Box { size 0.8 0.05 0.05 } + } -DEF deurklink Transform { - children [ - DEF enehelft Shape { - appearance DEF aluminium Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.4 0.4 0.5 - emissiveColor 0 0 0 - shininess 0.8 - specularColor 0.4 0.4 0.5 - } - texture NULL - textureTransform NULL - } - geometry IndexedFaceSet { - color NULL - coord Coordinate { - point [ - -0.015 0.02 0, #0 - 0.015 0.02 0, - 0.02 -0.02 0, - -0.02 -0.02 0, #3 - - -0.01 -0.015 0.06, #4 - 0.01 -0.015 0.06, - -0.01 0.015 0.03, - 0.01 0.015 0.03, - - 0.005 0.1 0.035, #8 - -0.005 0.1 0.035, - -0.005 0.1 0.055, - 0.005 0.1 0.055, - - - - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - -2, 3, 4, 5, -1, -2, 5, 4, 3, -1, - -4, 5, 11, 10, -1, -4, 10, 11, 5, -1, - -0, 1, 7, 6, -1, -0, 6, 7, 1, -1, - -6, 7, 8, 9, -1, -6, 9, 8, 7, -1, - -8, 9, 10, 11, -1, -8, 11, 10, 9, -1, - -0, 6, 4, 3, -1, -0, 3, 4, 6, -1, - -6, 9, 10, 4, -1, -6, 4, 10, 9, -1, - -1, 2, 5, 7, -1, -1, 7, 5, 2, -1, - -7, 5, 11, 8, -1, -7, 8, 11, 5, -1, - -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid TRUE - #texCoordIndex [] - } - }#enehelft - - Transform { - children [ - - USE enehelft - ] - rotation 0 1 0 3.1415927 - translation 0 0 -0.07 - } - Transform { - - children [ - DEF vlakdeel Shape { - appearance USE aluminium - geometry Box { size 0.18 0.07 0.01 } - }#shape - ] - translation -0.03 0 -0.005 - } - - Transform { - - children [ - USE vlakdeel - ] - translation -0.03 0 -0.065 - } - - - - ] - -translation 0.35 0 0.035 -rotation 0 0 1 1.5707963 -}#deurklink - - - -# /../boven/deurklink.wrl - -DEF deurvorm Shape { - appearance DEF deurkleur Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.8 0.8 0.8 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry Box { size 0.8 2 0.05 } -} + ] + translation 0 2.035 0 + } -] -translation 0 1.005 0 -} + DEF ruitje Transform { + children [ + Shape { + appearance DEF glas Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.6 0.6 0.9 + emissiveColor 0 0 0 + shininess 0.8 + specularColor 1 1 1 + transparency 0.7 + } texture NULL + textureTransform NULL + } + geometry Box { size 0.8 0.64 0.01 } + } + ] + translation 0 2.38 0 + }#ruit boven de deur -] -}#deurgroep + #deur + DEF deur Transform { + center -0.4 0 0 + children [ -] -translation 1.38 0 -3.395 -} -#ROUTE klikopdeur.touchTime TO TimeSource.startTime -#ROUTE TimeSource.fraction_changed TO Deuropen.set_fraction -#ROUTE Deuropen.value_changed TO deur.rotation - - -#deur2 -Transform { -children[ USE dwarslat - USE ruitje - -#deur -DEF deurkeukengang Transform { -center -0.4 0 0 - children [ - - - - DEF klikopdeur2 TouchSensor {} - DEF TimeSource2 TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. - # Animeer het openzwaaien van de deur rond de Y as: - DEF Deuropen2 OrientationInterpolator { - key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] - keyValue [ 0 1 0 0, 0 1 0 -1, 0 1 0 -2, 0 1 0 -2, 0 1 0 -1, 0 1 0 0 ] - } -USE deurklink -USE deurvorm -] -translation 0 1.005 0 -} - -] -translation 3.155 0 -2.96 -rotation 0 1 0 1.5707963 -} -#ROUTE klikopdeur2.touchTime TO TimeSource2.startTime -#ROUTE TimeSource2.fraction_changed TO Deuropen2.set_fraction -#ROUTE Deuropen2.value_changed TO deurkeukengang.rotation - - -#deur3 -Transform { -children[ USE dwarslat - USE ruitje -#deur -DEF deurwoonkamergang Transform { -center -0.4 0 0 - children [ - - - - DEF klikopdeur3 TouchSensor {} - DEF TimeSource3 TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. - # Animeer het openzwaaien van de deur rond de Y as: deze deur draait tegengesteld aan de andere - DEF Deuropen3 OrientationInterpolator { - key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] - keyValue [ 0 1 0 0, 0 1 0 1, 0 1 0 2, 0 1 0 2, 0 1 0 1, 0 1 0 0 ] - } -USE deurklink -USE deurvorm -] -translation 0 1.005 0 -} - -] -translation 3.59 0 -3.395 -rotation 0 1 0 0 -}#deur3 - -#ROUTE klikopdeur3.touchTime TO TimeSource3.startTime -#ROUTE TimeSource3.fraction_changed TO Deuropen3.set_fraction -#ROUTE Deuropen3.value_changed TO deurwoonkamergang.rotation - - -#deur4 -Transform { -children[ DEF dwarslatafw Transform { - children [ - Shape { -appearance USE kozijn - geometry Box { size 0.93 0.05 0.05 } -} -] -translation 0 2.035 0 -} + DEF klikopdeur TouchSensor {} + DEF TimeSource TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. + # Animeer het openzwaaien van de deur rond de Y as: + DEF Deuropen OrientationInterpolator { + key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] + keyValue [ 0 1 0 0, 0 1 0 -1, 0 1 0 -2, 0 1 0 -2, 0 1 0 -1, 0 1 0 0 ] + } + # ../boven/deurklink.wrl -DEF ruitjeafw Transform { - children [ - Shape { -appearance USE kozijn - geometry Box { size 0.93 0.64 0.01 } -} -] -translation 0 2.38 0 -}#ruit boven de deur#deur -DEF deurwoonkamertrapkast Transform { -center -0.4 0 0 - children [ - - - - DEF klikopdeur4 TouchSensor {} - DEF TimeSource4 TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. - # Animeer het openzwaaien van de deur rond de Y as: - DEF Deuropen4 OrientationInterpolator { - key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] - keyValue [ 0 1 0 0, 0 1 0 -1, 0 1 0 -2, 0 1 0 -2, 0 1 0 -1, 0 1 0 0 ] - } -USE deurklink -Shape { #afwijkende deurmaat - appearance USE deurkleur - geometry Box { size 0.93 2 0.05 } -} -] -translation 0 1.005 0 -} - -] -translation 4.395 0 -3.895 -rotation 0 1 0 -1.5707963 -}#deur4 -#ROUTE klikopdeur4.touchTime TO TimeSource4.startTime -#ROUTE TimeSource4.fraction_changed TO Deuropen4.set_fraction -#ROUTE Deuropen4.value_changed TO deurwoonkamertrapkast.rotation + DEF deurklink Transform { + children [ + DEF enehelft Shape { + appearance DEF aluminium Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.4 0.4 0.5 + emissiveColor 0 0 0 + shininess 0.8 + specularColor 0.4 0.4 0.5 + } + texture NULL + textureTransform NULL + } + geometry IndexedFaceSet { + color NULL + coord Coordinate { + point [ + -0.015 0.02 0, #0 + 0.015 0.02 0, + 0.02 -0.02 0, + -0.02 -0.02 0, #3 -#deur5 -Transform { -children[ DEF dwarslatafw2 Transform { - children [ - Shape { -appearance USE kozijn - geometry Box { size 0.74 0.05 0.05 } -} + -0.01 -0.015 0.06, #4 + 0.01 -0.015 0.06, + -0.01 0.015 0.03, + 0.01 0.015 0.03, + + 0.005 0.1 0.035, #8 + -0.005 0.1 0.035, + -0.005 0.1 0.055, + 0.005 0.1 0.055, + + + + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ -] -translation 0 2.035 0 -} + 2, 3, 4, 5, -1, + 2, 5, 4, 3, -1, + 4, 5, 11, 10, -1, + 4, 10, 11, 5, -1, + 0, 1, 7, 6, -1, + 0, 6, 7, 1, -1, + 6, 7, 8, 9, -1, + 6, 9, 8, 7, -1, -DEF ruitjeafw2 Transform { - children [ - Shape { -appearance USE kozijn - geometry Box { size 0.74 0.64 0.01 } -} + 8, 9, 10, 11, -1, + 8, 11, 10, 9, -1, -] -translation 0 2.38 0 -}#ruit boven de deur#deur - -DEF deurgangmeterkast Transform { -center -0.4 0 0 - children [ - - - - DEF klikopdeur5 TouchSensor {} - DEF TimeSource5 TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. - # Animeer het openzwaaien van de deur rond de Y as: - DEF Deuropen5 OrientationInterpolator { - key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] - keyValue [ 0 1 0 0, 0 1 0 -0.7, 0 1 0 -1.5, 0 1 0 -1.5, 0 1 0 -0.7, 0 1 0 0 ] - } -DEF deurklinkafw Transform { - children [ - USE enehelft - Transform { - children [ - - USE enehelft - ] - rotation 0 1 0 3.1415927 - translation 0 0 -0.07 - } - Transform { - - children [ - DEF vlakdeel Shape { - appearance USE aluminium - geometry Box { size 0.18 0.07 0.01 } - }#shape - ] - translation -0.03 0 -0.005 - } - - Transform { - - children [ - USE vlakdeel - ] - translation -0.03 0 -0.065 - } - - - - ] - -translation 0.32 0 0.035 -rotation 0 0 1 1.5707963 -}#deurklink -Shape { #afwijkende deurmaat - appearance USE deurkleur - geometry Box { size 0.74 2 0.05 } -} -] -translation 0 1.005 0 -} - -] -translation 4.455 0 -1.92 -rotation 0 1 0 -1.5707963 -}#deur5 - -#ROUTE klikopdeur5.touchTime TO TimeSource5.startTime -#ROUTE TimeSource5.fraction_changed TO Deuropen5.set_fraction -#ROUTE Deuropen5.value_changed TO deurgangmeterkast.rotation - - -#deur6 -Transform { -children[ USE dwarslat - USE ruitje -#deur -DEF deurtoiletgang Transform { -center -0.4 0 0 - children [ - - - - DEF klikopdeur6 TouchSensor {} - DEF TimeSource6 TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. - # Animeer het openzwaaien van de deur rond de Y as: - DEF Deuropen6 OrientationInterpolator { - key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] - keyValue [ 0 1 0 0, 0 1 0 -1, 0 1 0 -2, 0 1 0 -2, 0 1 0 -1, 0 1 0 0 ] - } -USE deurklink -USE deurvorm -] -translation 0 1.005 0 -} - -] -translation 4.455 0 -1.08 -rotation 0 1 0 -1.5707963 -}#deur6 + 0, 6, 4, 3, -1, + 0, 3, 4, 6, -1, -#ROUTE klikopdeur6.touchTime TO TimeSource6.startTime -#ROUTE TimeSource6.fraction_changed TO Deuropen6.set_fraction -#ROUTE Deuropen6.value_changed TO deurtoiletgang.rotation + 6, 9, 10, 4, -1, + 6, 4, 10, 9, -1, + 1, 2, 5, 7, -1, + 1, 7, 5, 2, -1, -# voordeur.wrl + 7, 5, 11, 8, -1, + 7, 8, 11, 5, -1, + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid TRUE + #texCoordIndex [] + } + }#enehelft + Transform { + children [ + USE enehelft + ] + rotation 0 1 0 3.1415927 + translation 0 0 -0.07 + } + Transform { -DEF voordeur Transform { -center 1.11 0 0 - children [ + children [ + DEF vlakdeel Shape { + appearance USE aluminium + geometry Box { size 0.18 0.07 0.01 } + }#shape + ] + translation -0.03 0 -0.005 + } + + Transform { + + children [ + USE vlakdeel + ] + translation -0.03 0 -0.065 + } - Shape { -appearance DEF deurkleur Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.8 0.8 0.8 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - - 0 0 0.025, #0 - 1.11 0 0.025, # - 1.11 2.19 0.025, # - 0 2.19 0.025, #3 - - 0.71 0.49 0.025, #4 - 0.91 0.49 0.025, # - 0.91 1.99 0.025, # - 0.71 1.99 0.025, #7 - - 0 0 -0.025, #8 - 1.11 0 -0.025, # - 1.11 2.19 -0.025, # - 0 2.19 -0.025, #11 - - 0.71 0.49 -0.025, #12 - 0.91 0.49 -0.025, # - 0.91 1.99 -0.025, # - 0.71 1.99 -0.025, #15 - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - - 0, 1, 5, 4, -1, - - 1, 2, 6, 5, -1, - - 6, 2, 3, 7, -1, - - 0, 4, 7, 3, -1, - - - 1, 0, 8, 9, -1, - - 3, 2, 10, 11, -1, - - 0, 3, 11, 8, -1, - - 2, 1, 9, 10, -1, - - - 5, 6, 14, 13, -1, - - 4, 5, 13, 12, -1, - - 6, 7, 15, 14, -1, - - 7, 4, 12, 15, -1, - - - 9, 8, 12, 13, -1, - - 10, 9, 13, 14, -1, - - 11, 10, 14, 15, -1, - - 12, 8, 11, 15, -1, - - - - - -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid TRUE - texCoordIndex [] - } - } - -DEF klikopvoordeur TouchSensor {} - DEF TimeSourcevoor TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. - # Animeer het openzwaaien van de deur rond de Y as: - DEF VoorDeuropen OrientationInterpolator { - key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] - keyValue [ 0 1 0 0, 0 1 0 -0.7, 0 1 0 -1.5, 0 1 0 -1.5, 0 1 0 -0.7, 0 1 0 0 ] - } - -DEF deurgreep Transform{ -children[ - Shape { - appearance DEF aluminium Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.4 0.4 0.4 - emissiveColor 0 0 0 - shininess 0.8 - specularColor 0.9 0.9 0.9 - transparency 0 - } - texture NULL - textureTransform NULL - } - geometry Box { size 0.2 0.2 0.004 } -} -] -translation 0.15 0.9 0.067 -} + ] -DEF steunblokje Transform{ -children[ - Shape { - appearance DEF aluminium Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.4 0.4 0.4 - emissiveColor 0 0 0 - shininess 0.8 - specularColor 0.9 0.9 0.9 - transparency 0 - } - texture NULL - textureTransform NULL - } - geometry Box { size 0.14 0.14 0.04 } -} + translation 0.35 0 0.035 + rotation 0 0 1 1.5707963 + }#deurklink -] -translation 0.15 0.9 0.045 -} -DEF ruitjeindeur Transform{ -children[ - Shape { - appearance DEF glas Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.6 0.6 0.9 - emissiveColor 0 0 0 - shininess 0.8 - specularColor 1 1 1 - transparency 0.7 -} texture NULL - textureTransform NULL -} - geometry Box { size 0.2 1.5 0.01 } -} -] -translation 0.81 1.24 0 -} + # /../boven/deurklink.wrl - ] -translation 3.25 0.05 -0.14 -} + DEF deurvorm Shape { + appearance DEF deurkleur Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.8 0.8 0.8 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry Box { size 0.8 2 0.05 } + } -#ROUTE klikopvoordeur.touchTime TO TimeSourcevoor.startTime -#ROUTE TimeSourcevoor.fraction_changed TO VoorDeuropen.set_fraction -#ROUTE VoorDeuropen.value_changed TO voordeur.rotation + ] + translation 0 1.005 0 + } -# /voordeur.wrl -# achterdeur.wrl -#bevat ook schuurdeur + ] + }#deurgroep + ] + translation 1.38 0 -3.395 + } + ROUTE klikopdeur.touchTime TO TimeSource.startTime + ROUTE TimeSource.fraction_changed TO Deuropen.set_fraction + ROUTE Deuropen.value_changed TO deur.rotation + + + #deur2 + Transform { + children[ USE dwarslat + USE ruitje + + #deur + DEF deurkeukengang Transform { + center -0.4 0 0 + children [ + + + + DEF klikopdeur2 TouchSensor {} + DEF TimeSource2 TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. + # Animeer het openzwaaien van de deur rond de Y as: + DEF Deuropen2 OrientationInterpolator { + key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] + keyValue [ 0 1 0 0, 0 1 0 -1, 0 1 0 -2, 0 1 0 -2, 0 1 0 -1, 0 1 0 0 ] + } + USE deurklink + USE deurvorm + ] + translation 0 1.005 0 + } -DEF achterdeur Transform { -center 0 0 0 - children [ + ] + translation 3.155 0 -2.96 + rotation 0 1 0 1.5707963 + } + ROUTE klikopdeur2.touchTime TO TimeSource2.startTime + ROUTE TimeSource2.fraction_changed TO Deuropen2.set_fraction + ROUTE Deuropen2.value_changed TO deurkeukengang.rotation + + + #deur3 + Transform { + children[ USE dwarslat + USE ruitje + #deur + DEF deurwoonkamergang Transform { + center -0.4 0 0 + children [ + + + + DEF klikopdeur3 TouchSensor {} + DEF TimeSource3 TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. + # Animeer het openzwaaien van de deur rond de Y as: deze deur draait tegengesteld aan de andere + DEF Deuropen3 OrientationInterpolator { + key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] + keyValue [ 0 1 0 0, 0 1 0 1, 0 1 0 2, 0 1 0 2, 0 1 0 1, 0 1 0 0 ] + } + USE deurklink + USE deurvorm + ] + translation 0 1.005 0 + } - Shape { -appearance DEF deurkleur Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.8 0.8 0.8 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry DEF deurInd IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ + ] + translation 3.59 0 -3.395 + rotation 0 1 0 0 + }#deur3 - 0.93 0 -0.025, #0 - 0 0 -0.025, # - 0 2.09 -0.025, # - 0.93 2.09 -0.025, #3 + ROUTE klikopdeur3.touchTime TO TimeSource3.startTime + ROUTE TimeSource3.fraction_changed TO Deuropen3.set_fraction + ROUTE Deuropen3.value_changed TO deurwoonkamergang.rotation - 0.765 0.6 -0.025, #4 - 0.165 0.6 -0.025, # - 0.165 1.9 -0.025, # - 0.765 1.9 -0.025, #7 - 0.93 0 0.025, #0 - 0 0 0.025, # - 0 2.09 0.025, # - 0.93 2.09 0.025, #3 + #deur4 + Transform { + children[ DEF dwarslatafw Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.93 0.05 0.05 } + } - 0.765 0.6 0.025, #4 - 0.165 0.6 0.025, # - 0.165 1.9 0.025, # - 0.765 1.9 0.025, #7 + ] + translation 0 2.035 0 + } - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - - 0, 1, 5, 4, -1, - 1, 2, 6, 5, -1, - 6, 2, 3, 7, -1, - 0, 4, 7, 3, -1, + DEF ruitjeafw Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.93 0.64 0.01 } + } + ] + translation 0 2.38 0 + }#ruit boven de deur#deur + DEF deurwoonkamertrapkast Transform { + center -0.4 0 0 + children [ - 1, 0, 8, 9, -1, - 3, 2, 10, 11, -1, - 0, 3, 11, 8, -1, + DEF klikopdeur4 TouchSensor {} + DEF TimeSource4 TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. + # Animeer het openzwaaien van de deur rond de Y as: + DEF Deuropen4 OrientationInterpolator { + key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] + keyValue [ 0 1 0 0, 0 1 0 -1, 0 1 0 -2, 0 1 0 -2, 0 1 0 -1, 0 1 0 0 ] + } + USE deurklink + Shape { #afwijkende deurmaat + appearance USE deurkleur + geometry Box { size 0.93 2 0.05 } + } + ] + translation 0 1.005 0 + } - 2, 1, 9, 10, -1, + ] + translation 4.395 0 -3.895 + rotation 0 1 0 -1.5707963 + }#deur4 + ROUTE klikopdeur4.touchTime TO TimeSource4.startTime + ROUTE TimeSource4.fraction_changed TO Deuropen4.set_fraction + ROUTE Deuropen4.value_changed TO deurwoonkamertrapkast.rotation - 5, 6, 14, 13, -1, - 4, 5, 13, 12, -1, - 6, 7, 15, 14, -1, + #deur5 + Transform { + children[ DEF dwarslatafw2 Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.74 0.05 0.05 } + } - 7, 4, 12, 15, -1, + ] + translation 0 2.035 0 + } - - 9, 8, 12, 13, -1, - - 10, 9, 13, 14, -1, - 11, 10, 14, 15, -1, - 12, 8, 11, 15, -1, + DEF ruitjeafw2 Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.74 0.64 0.01 } + } + ] + translation 0 2.38 0 + }#ruit boven de deur#deur + DEF deurgangmeterkast Transform { + center -0.4 0 0 + children [ -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid TRUE - texCoordIndex [] - } - } -DEF klikopachterdeur TouchSensor {} - DEF TimeSourceachter TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. - # Animeer het openzwaaien van de deur rond de Y as: - DEF achterDeuropen OrientationInterpolator { - key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] - keyValue [ 0 1 0 0, 0 1 0 0.7, 0 1 0 1.5, 0 1 0 1.5, 0 1 0 0.7, 0 1 0 0 ] - } + DEF klikopdeur5 TouchSensor {} + DEF TimeSource5 TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. + # Animeer het openzwaaien van de deur rond de Y as: + DEF Deuropen5 OrientationInterpolator { + key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] + keyValue [ 0 1 0 0, 0 1 0 -0.7, 0 1 0 -1.5, 0 1 0 -1.5, 0 1 0 -0.7, 0 1 0 0 ] + } + DEF deurklinkafw Transform { + children [ + USE enehelft + Transform { + children [ + USE enehelft + ] + rotation 0 1 0 3.1415927 + translation 0 0 -0.07 + } + Transform { + children [ + DEF vlakdeel Shape { + appearance USE aluminium + geometry Box { size 0.18 0.07 0.01 } + }#shape + ] + translation -0.03 0 -0.005 + } -Transform { - # ../boven/deurklink.wrl + Transform { + children [ + USE vlakdeel + ] + translation -0.03 0 -0.065 + } + ] -DEF deurklink Transform { - children [ - DEF enehelft Shape { - appearance DEF aluminium Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.4 0.4 0.5 - emissiveColor 0 0 0 - shininess 0.8 - specularColor 0.4 0.4 0.5 + translation 0.32 0 0.035 + rotation 0 0 1 1.5707963 + }#deurklink + Shape { #afwijkende deurmaat + appearance USE deurkleur + geometry Box { size 0.74 2 0.05 } + } + ] + translation 0 1.005 0 } - texture NULL - textureTransform NULL - } - geometry IndexedFaceSet { - color NULL - coord Coordinate { - point [ - -0.015 0.02 0, #0 - 0.015 0.02 0, - 0.02 -0.02 0, - -0.02 -0.02 0, #3 - - -0.01 -0.015 0.06, #4 - 0.01 -0.015 0.06, - -0.01 0.015 0.03, - 0.01 0.015 0.03, - - 0.005 0.1 0.035, #8 - -0.005 0.1 0.035, - -0.005 0.1 0.055, - 0.005 0.1 0.055, - - - - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - -2, 3, 4, 5, -1, -2, 5, 4, 3, -1, - -4, 5, 11, 10, -1, -4, 10, 11, 5, -1, - -0, 1, 7, 6, -1, -0, 6, 7, 1, -1, - -6, 7, 8, 9, -1, -6, 9, 8, 7, -1, - -8, 9, 10, 11, -1, -8, 11, 10, 9, -1, - -0, 6, 4, 3, -1, -0, 3, 4, 6, -1, - -6, 9, 10, 4, -1, -6, 4, 10, 9, -1, - -1, 2, 5, 7, -1, -1, 7, 5, 2, -1, - -7, 5, 11, 8, -1, -7, 8, 11, 5, -1, - -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid TRUE - #texCoordIndex [] - } - }#enehelft - - Transform { - children [ - - USE enehelft - ] - rotation 0 1 0 3.1415927 - translation 0 0 -0.07 - } - Transform { - - children [ - DEF vlakdeel Shape { - appearance USE aluminium - geometry Box { size 0.18 0.07 0.01 } - }#shape - ] - translation -0.03 0 -0.005 - } - - Transform { - - children [ - USE vlakdeel - ] - translation -0.03 0 -0.065 - } - - - - ] - -translation 0.35 0 0.035 -rotation 0 0 1 1.5707963 -}#deurklink + ] + translation 4.455 0 -1.92 + rotation 0 1 0 -1.5707963 + }#deur5 + + ROUTE klikopdeur5.touchTime TO TimeSource5.startTime + ROUTE TimeSource5.fraction_changed TO Deuropen5.set_fraction + ROUTE Deuropen5.value_changed TO deurgangmeterkast.rotation + + + #deur6 + Transform { + children[ USE dwarslat + USE ruitje + #deur + DEF deurtoiletgang Transform { + center -0.4 0 0 + children [ + + + + DEF klikopdeur6 TouchSensor {} + DEF TimeSource6 TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. + # Animeer het openzwaaien van de deur rond de Y as: + DEF Deuropen6 OrientationInterpolator { + key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] + keyValue [ 0 1 0 0, 0 1 0 -1, 0 1 0 -2, 0 1 0 -2, 0 1 0 -1, 0 1 0 0 ] + } + USE deurklink + USE deurvorm + ] + translation 0 1.005 0 + } + ] + translation 4.455 0 -1.08 + rotation 0 1 0 -1.5707963 + }#deur6 -# /../boven/deurklink.wrl - translation 0.50 1 0 -} + ROUTE klikopdeur6.touchTime TO TimeSource6.startTime + ROUTE TimeSource6.fraction_changed TO Deuropen6.set_fraction + ROUTE Deuropen6.value_changed TO deurtoiletgang.rotation + # voordeur.wrl -DEF ruitindeur Transform{ -children[ - Shape { - appearance DEF glas Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.6 0.6 0.9 - emissiveColor 0 0 0 - shininess 0.8 - specularColor 1 1 1 - transparency 0.7 -} texture NULL - textureTransform NULL -} - geometry Box { size 0.6 1.3 0.01 } -} -] -translation 0.465 1.25 0 -} - ] -translation 1.26 0.05 -8.86 -} + DEF voordeur Transform { + center 1.11 0 0 + children [ -#ROUTE klikopachterdeur.touchTime TO TimeSourceachter.startTime -#ROUTE TimeSourceachter.fraction_changed TO achterDeuropen.set_fraction -#ROUTE achterDeuropen.value_changed TO achterdeur.rotation + Shape { + appearance DEF deurkleur Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.8 0.8 0.8 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ -#schuurdeur -DEF schuurdeur Transform { -children [ + 0 0 0.025, #0 + 1.11 0 0.025, # + 1.11 2.19 0.025, # + 0 2.19 0.025, #3 -DEF klikopschuurdeur TouchSensor {} - DEF TimeSourceschuur TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. - # Animeer het openzwaaien van de deur rond de Y as: - DEF schuurDeuropen OrientationInterpolator { - key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] - keyValue [ 0 1 0 1.5707963, 0 1 0 2.4, 0 1 0 3.4, 0 1 0 3.4, 0 1 0 2.4, 0 1 0 1.5707963 ] - } + 0.71 0.49 0.025, #4 + 0.91 0.49 0.025, # + 0.91 1.99 0.025, # + 0.71 1.99 0.025, #7 -Transform{ - children[ - Shape{ - appearance USE deurkleur - geometry USE deurInd - } - ] - scale 0.9139785 1 1 #maakt de deur op maat -} + 0 0 -0.025, #8 + 1.11 0 -0.025, # + 1.11 2.19 -0.025, # + 0 2.19 -0.025, #11 -USE ruitindeur + 0.71 0.49 -0.025, #12 + 0.91 0.49 -0.025, # + 0.91 1.99 -0.025, # + 0.71 1.99 -0.025, #15 + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ -Transform { - children USE deurklink - translation 0.43 1 0 -} + 0, 1, 5, 4, -1, + 1, 2, 6, 5, -1, -] -translation 3.53 0.05 6.35 -rotation 0 1 0 1.5707963 -} + 6, 2, 3, 7, -1, -#ROUTE klikopschuurdeur.touchTime TO TimeSourceschuur.startTime -#ROUTE TimeSourceschuur.fraction_changed TO schuurDeuropen.set_fraction -#ROUTE schuurDeuropen.value_changed TO schuurdeur.rotation + 0, 4, 7, 3, -1, -# /achterdeur.wrl + 1, 0, 8, 9, -1, + 3, 2, 10, 11, -1, + 0, 3, 11, 8, -1, -# /deuren.wrl + 2, 1, 9, 10, -1, -# ramen.wrl + 5, 6, 14, 13, -1, + 4, 5, 13, 12, -1, + 6, 7, 15, 14, -1, -Transform { - children [ - Shape { -appearance DEF kozijn Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.95 0.95 0.9 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry Box { size 0.05 1.3 0.05 } -} + 7, 4, 12, 15, -1, -] -translation 0.625 1.6 -0.14 -} -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.05 1.3 0.05 } -} + 9, 8, 12, 13, -1, -] -translation 2.575 1.6 -0.14 -} - - -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.05 1.3 0.05 } -} - -] -translation 1.475 1.6 -0.14 -} - -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.05 1.3 0.05 } -} + 10, 9, 13, 14, -1, -] -translation 1.725 1.6 -0.14 -} - -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 2 0.05 0.05 } -} + 11, 10, 14, 15, -1, -] -translation 1.6 0.925 -0.14 -} + 12, 8, 11, 15, -1, -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 2 0.05 0.05 } -} -] -translation 1.6 2.275 -0.14 -} -#einde keukenraam -#begin toiletraam -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.05 0.7 0.05 } -} + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid TRUE + texCoordIndex [] + } + } -] -translation 4.865 1.95 -0.14 -} + DEF klikopvoordeur TouchSensor {} + DEF TimeSourcevoor TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. + # Animeer het openzwaaien van de deur rond de Y as: + DEF VoorDeuropen OrientationInterpolator { + key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] + keyValue [ 0 1 0 0, 0 1 0 -0.7, 0 1 0 -1.5, 0 1 0 -1.5, 0 1 0 -0.7, 0 1 0 0 ] + } -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.05 0.7 0.05 } -} + DEF deurgreep Transform{ + children[ + Shape { + appearance DEF aluminium Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.4 0.4 0.4 + emissiveColor 0 0 0 + shininess 0.8 + specularColor 0.9 0.9 0.9 + transparency 0 + } + texture NULL + textureTransform NULL + } + geometry Box { size 0.2 0.2 0.004 } + } + + ] + translation 0.15 0.9 0.067 + } -] -translation 5.015 1.95 -0.14 -} -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.1 0.05 0.05 } -} + DEF steunblokje Transform{ + children[ + Shape { + appearance DEF aluminium Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.4 0.4 0.4 + emissiveColor 0 0 0 + shininess 0.8 + specularColor 0.9 0.9 0.9 + transparency 0 + } + texture NULL + textureTransform NULL + } + geometry Box { size 0.14 0.14 0.04 } + } + + ] + translation 0.15 0.9 0.045 + } -] -translation 4.94 1.625 -0.14 -} + DEF ruitjeindeur Transform{ + children[ + Shape { + appearance DEF glas Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.6 0.6 0.9 + emissiveColor 0 0 0 + shininess 0.8 + specularColor 1 1 1 + transparency 0.7 + } texture NULL + textureTransform NULL + } + geometry Box { size 0.2 1.5 0.01 } + } + + ] + translation 0.81 1.24 0 + } -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.1 0.05 0.05 } -} + ] + translation 3.25 0.05 -0.14 + } -] -translation 4.94 2.275 -0.14 -} + ROUTE klikopvoordeur.touchTime TO TimeSourcevoor.startTime + ROUTE TimeSourcevoor.fraction_changed TO VoorDeuropen.set_fraction + ROUTE VoorDeuropen.value_changed TO voordeur.rotation -#einde toiletraam -#voordeur posten -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.05 2.26 0.05 } -} + # /voordeur.wrl -] -translation 3.215 1.17 -0.14 -} + # achterdeur.wrl -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.05 2.26 0.05 } -} -] -translation 4.395 1.17 -0.14 -} -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 1.13 0.05 0.05 } -} -] -translation 3.805 2.275 -0.14 -} -#einde deurposten -#begin kozijnen achter -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.05 2.1 0.05 } -} + #bevat ook schuurdeur -] -translation 3.215 1.65 -8.86 -} -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.05 2.1 0.05 } -} -] -translation 4.775 1.65 -8.86 -} + DEF achterdeur Transform { + center 0 0 0 + children [ -Transform { - children [ - Shape { -appearance DEF blauw Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.3 0.4 0.7 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} -geometry Box { size 1.51 0.5 0.05 } -} + Shape { + appearance DEF deurkleur Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.8 0.8 0.8 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry DEF deurInd IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ -] -translation 3.995 2.45 -8.86 -} + 0.93 0 -0.025, #0 + 0 0 -0.025, # + 0 2.09 -0.025, # + 0.93 2.09 -0.025, #3 -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 1.51 0.05 0.05 } -} + 0.765 0.6 -0.025, #4 + 0.165 0.6 -0.025, # + 0.165 1.9 -0.025, # + 0.765 1.9 -0.025, #7 -] -translation 3.995 0.625 -8.86 -}#1 -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 1.51 0.05 0.05 } -} + 0.93 0 0.025, #0 + 0 0 0.025, # + 0 2.09 0.025, # + 0.93 2.09 0.025, #3 -] -translation 3.995 2.175 -8.86 -}#2 + 0.765 0.6 0.025, #4 + 0.165 0.6 0.025, # + 0.165 1.9 0.025, # + 0.765 1.9 0.025, #7 + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.94 0.05 0.05 } -} + 0, 1, 5, 4, -1, -] -translation 2.72 0.625 -8.86 -} + 1, 2, 6, 5, -1, -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 1.99 0.05 0.05 } -} + 6, 2, 3, 7, -1, -] -translation 2.195 2.675 -8.86 -} + 0, 4, 7, 3, -1, -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 1 0.05 0.05 } -} -] -translation 1.725 2.175 -8.86 -} + 1, 0, 8, 9, -1, -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.05 2.61 0.05 } -} + 3, 2, 10, 11, -1, -] -translation 1.225 1.345 -8.86 -} + 0, 3, 11, 8, -1, -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.05 2.61 0.05 } -} + 2, 1, 9, 10, -1, -] -translation 2.225 1.345 -8.86 -} + 5, 6, 14, 13, -1, + 4, 5, 13, 12, -1, -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.05 1.5 0.05 } -} + 6, 7, 15, 14, -1, -] -translation 3.565 1.4 -8.86 -} + 7, 4, 12, 15, -1, -#einde ramen achter + 9, 8, 12, 13, -1, + 10, 9, 13, 14, -1, -# /ramen.wrl + 11, 10, 14, 15, -1, -# ruiten.wrl + 12, 8, 11, 15, -1, -#begin vensterglas -Transform { - children [ - Shape { -appearance DEF glas Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.6 0.6 0.9 - emissiveColor 0 0 0 - shininess 0.8 - specularColor 1 1 1 - transparency 0.7 -} texture NULL - textureTransform NULL -} - geometry Box { size 0.94 2 0.01 } -} + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid TRUE + texCoordIndex [] + } + } -] -translation 2.72 1.65 -8.86 -}#ruit 5 achter + DEF klikopachterdeur TouchSensor {} + DEF TimeSourceachter TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. + # Animeer het openzwaaien van de deur rond de Y as: + DEF achterDeuropen OrientationInterpolator { + key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] + keyValue [ 0 1 0 0, 0 1 0 0.7, 0 1 0 1.5, 0 1 0 1.5, 0 1 0 0.7, 0 1 0 0 ] + } -#ruit1 keuken -Transform { - children [ - Shape { -appearance USE glas -geometry Box { size 0.8 1.3 0.01 } -} -] -translation 1.05 1.6 -0.14 -}#ruit 1 keuken -#ruit3 keuken -Transform { - children [ - Shape { -appearance USE glas - geometry Box { size 0.8 1.3 0.01 } -} + Transform { + # ../boven/deurklink.wrl + + -] -translation 2.15 1.6 -0.14 -}#ruit 3 keuken -#ruit2 keuken -Transform { - children [ - Shape { -appearance USE glas - geometry Box { size 0.2 1.3 0.01 } -} -] -translation 1.6 1.6 -0.14 -}#ruit 2 keuken + DEF deurklink Transform { + children [ + DEF enehelft Shape { + appearance DEF aluminium Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.4 0.4 0.5 + emissiveColor 0 0 0 + shininess 0.8 + specularColor 0.4 0.4 0.5 + } + texture NULL + textureTransform NULL + } + geometry IndexedFaceSet { + color NULL + coord Coordinate { + point [ + -0.015 0.02 0, #0 + 0.015 0.02 0, + 0.02 -0.02 0, + -0.02 -0.02 0, #3 + -0.01 -0.015 0.06, #4 + 0.01 -0.015 0.06, + -0.01 0.015 0.03, + 0.01 0.015 0.03, -#toiletruit -Transform { - children [ - Shape { -appearance USE glas - geometry Box { size 0.1 0.6 0.01 } -} + 0.005 0.1 0.035, #8 + -0.005 0.1 0.035, + -0.005 0.1 0.055, + 0.005 0.1 0.055, -] -translation 4.94 1.95 -0.14 -}#ruit van toiletraam -#ramen achter + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + 2, 3, 4, 5, -1, + 2, 5, 4, 3, -1, + 4, 5, 11, 10, -1, + 4, 10, 11, 5, -1, -Transform { - children [ - Shape { -appearance USE glas - geometry Box { size 1.16 1.5 0.01 } -} + 0, 1, 7, 6, -1, + 0, 6, 7, 1, -1, -] -translation 4.17 1.4 -8.86 -}#ruit 3 achter + 6, 7, 8, 9, -1, + 6, 9, 8, 7, -1, -Transform { - children [ - Shape { -appearance USE glas - geometry Box { size 0.3 1.5 0.01 } -} + 8, 9, 10, 11, -1, + 8, 11, 10, 9, -1, -] -translation 3.39 1.4 -8.86 -}#ruit 4 achter + 0, 6, 4, 3, -1, + 0, 3, 4, 6, -1, -Transform { - children [ - Shape { -appearance USE glas - geometry Box { size 0.95 0.45 0.01 } -} + 6, 9, 10, 4, -1, + 6, 4, 10, 9, -1, -] -translation 1.725 2.425 -8.86 -}#ruit 6 achter + 1, 2, 5, 7, -1, + 1, 7, 5, 2, -1, -# /ruiten.wrl + 7, 5, 11, 8, -1, + 7, 8, 11, 5, -1, + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid TRUE + #texCoordIndex [] + } + }#enehelft -# /beneden/beneden.wrl + Transform { + children [ + + USE enehelft + ] + rotation 0 1 0 3.1415927 + translation 0 0 -0.07 + } + Transform { + + children [ + DEF vlakdeel Shape { + appearance USE aluminium + geometry Box { size 0.18 0.07 0.01 } + }#shape + ] + translation -0.03 0 -0.005 + } + + Transform { + + children [ + USE vlakdeel + ] + translation -0.03 0 -0.065 + } -DEF boven Transform { -children[ -Transform { -children[ + ] -Transform { -children[ - Shape { -appearance DEF groen Appearance { - material Material { - ambientIntensity 1 - diffuseColor 0 1 0 - emissiveColor 0 1 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry DEF pijl IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - 0 0 0, - 0.2 0.2 0, - 0.2 -0.2 0, - - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ 0,1,2,-1, - ] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid FALSE - texCoordIndex [] - } -}#shape -] -rotation 0 1 0 3.1415927 -} + translation 0.35 0 0.035 + rotation 0 0 1 1.5707963 + }#deurklink -DEF schuifboven TouchSensor {} -] -translation 0.15 2.95 0.3 -} -Transform { -children[ - - Shape { -appearance DEF rood Appearance { - material Material { - ambientIntensity 1 - diffuseColor 1 0 0 - emissiveColor 1 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} -geometry USE pijl -} + # /../boven/deurklink.wrl + translation 0.50 1 0 + } -DEF schuifboven2 TouchSensor {} -] -translation 5.48 2.95 0.3 -} -# boven/boven.wrl + DEF ruitindeur Transform{ + children[ + Shape { + appearance DEF glas Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.6 0.6 0.9 + emissiveColor 0 0 0 + shininess 0.8 + specularColor 1 1 1 + transparency 0.7 + } texture NULL + textureTransform NULL + } + geometry Box { size 0.6 1.3 0.01 } + } + ] + translation 0.465 1.25 0 + } + ] + translation 1.26 0.05 -8.86 + } -Viewpoint { - fieldOfView 1 - jump TRUE - orientation 1 0 0 0 - position 2.5 3.75 -2.5 + ROUTE klikopachterdeur.touchTime TO TimeSourceachter.startTime + ROUTE TimeSourceachter.fraction_changed TO achterDeuropen.set_fraction + ROUTE achterDeuropen.value_changed TO achterdeur.rotation - description "Ouderslaapkamer" -} + #schuurdeur + DEF schuurdeur Transform { + children [ -Viewpoint { - fieldOfView 1 - jump TRUE - orientation 1 0 0 0 - position 2.5 3.75 -5 + DEF klikopschuurdeur TouchSensor {} + DEF TimeSourceschuur TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. + # Animeer het openzwaaien van de deur rond de Y as: + DEF schuurDeuropen OrientationInterpolator { + key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] + keyValue [ 0 1 0 1.5707963, 0 1 0 2.4, 0 1 0 3.4, 0 1 0 3.4, 0 1 0 2.4, 0 1 0 1.5707963 ] + } - description "Tweede slaapkamer" -} + Transform{ + children[ + Shape{ + appearance USE deurkleur + geometry USE deurInd + } + ] + scale 0.9139785 1 1 #maakt de deur op maat + } -Viewpoint { - fieldOfView 1 - jump TRUE - orientation 1 0 0 0 - position 4.5 3.75 -7 + USE ruitindeur - description "Kinderkamer" -} + Transform { + children USE deurklink + translation 0.43 1 0 + } -Viewpoint { - fieldOfView 1 - jump TRUE - orientation 1 0 0 0 - position 4.5 3.75 -1.5 - description "Badkamer" -} + ] + translation 3.53 0.05 6.35 + rotation 0 1 0 1.5707963 + } + ROUTE klikopschuurdeur.touchTime TO TimeSourceschuur.startTime + ROUTE TimeSourceschuur.fraction_changed TO schuurDeuropen.set_fraction + ROUTE schuurDeuropen.value_changed TO schuurdeur.rotation + # /achterdeur.wrl -#dak van schuur -Transform { -children [ -Shape { -appearance DEF appdak Appearance { - material Material { - ambientIntensity 0 - diffuseColor 0.2 0.2 0.2 - emissiveColor 0 0 0 - shininess 0 - specularColor 0 0 0 - transparency 0 - } - texture ImageTexture { - url [""] - repeatS TRUE - repeatT TRUE - } -} -geometry Box { size 2.24 0.04 3.24 } -} -] -translation 4.6 2.62 6.2 -} + # /deuren.wrl + # ramen.wrl -DEF plafond Transform { - children [ - Shape { -appearance Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 1 1 1 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - 0.14 2.70 -0.14, - 5.54 2.70 -0.14, - 5.54 2.70 -8.86, - 0.14 2.70 -8.86, - - 5.54 2.70 -2.36, #-4 - 5.54 2.70 -4.36, - 4.42 2.70 -4.36, - 4.42 2.70 -2.36, - - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - 0, 1, 4, 7, -1, - 0, 7, 4, 1, -1, - - 0, 7, 6, 3, -1, - 0, 3, 6, 7, -1, - - 5, 2, 3, 6, -1, - 5, 6, 3, 2, -1, -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid TRUE - texCoordIndex [] - } - } - ] -} -DEF vloerboven Transform { - children [ - Shape { -appearance Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 1 0.5 0.3 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - 0.14 2.80 -0.14, - 5.54 2.80 -0.14, - 5.54 2.80 -8.86, - 0.14 2.80 -8.86, - - 5.54 2.80 -2.36, #-4 - 5.54 2.8 -4.36, - 4.42 2.8 -4.36, - 4.42 2.8 -2.36, - - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - 0, 1, 4, 7, -1, - 0, 7, 4, 1, -1, - - 0, 7, 6, 3, -1, - 0, 3, 6, 7, -1, - - 5, 2, 3, 6, -1, - 5, 6, 3, 2, -1, -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid TRUE - texCoordIndex [] - } - } - ] -} + Transform { + children [ + Shape { + appearance DEF kozijn Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.95 0.95 0.9 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry Box { size 0.05 1.3 0.05 } + } + ] + translation 0.625 1.6 -0.14 + } + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 1.3 0.05 } + } + ] + translation 2.575 1.6 -0.14 + } -DEF stukmuur1 Transform { -children[ - Shape { - appearance DEF wandkleur Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 1 0.9 0.7 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry Box { - size 2.84 2.50 0.07 - } - } - ] -translation 1.7 4.05 -4.565 -} + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 1.3 0.05 } + } -DEF stukmuur2 Transform { -children[ - Shape { - appearance USE wandkleur - geometry Box { - size 0.07 2.50 0.7 - } - - } - ] -translation 3.155 4.05 -4.28 -} + ] + translation 1.475 1.6 -0.14 + } + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 1.3 0.05 } + } -DEF stukmuur3 Transform { -children[ - Shape { - appearance USE wandkleur - geometry Box { - size 0.07 2.68 3.57 - } + ] + translation 1.725 1.6 -0.14 + } - } - ] -translation 3.155 4.05 -7.215 -} + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 2 0.05 0.05 } + } -DEF stukmuur4 Transform { -children[ - Shape { - appearance USE wandkleur - geometry Box { - size 0.07 2.50 2.85 - } - - } - ] -translation 3.155 4.05 -1.705 -} + ] + translation 1.6 0.925 -0.14 + } -DEF stukmuur5 Transform { -children[ - Shape { - appearance USE wandkleur - geometry Box { - size 0.42 2.50 0.07 - } - - } - ] -translation 3.4 4.05 -2.325 -} + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 2 0.05 0.05 } + } -DEF stukmuur6 Transform { -children[ - Shape { - appearance USE wandkleur - geometry Box { - size 0.98 2.50 0.07 - } - - } - ] -translation 4.91 4.05 -2.325 -} + ] + translation 1.6 2.275 -0.14 + } -DEF stukmuur7 Transform { -children[ - Shape { - appearance USE wandkleur - geometry Box { - size 1.34 2.50 0.07 - } - - } - ] -translation 4.73 4.05 -4.395 -} + #einde keukenraam + #begin toiletraam -DEF stukmuur8 Transform { -children[ - Shape { - appearance USE wandkleur - geometry Box { - size 0.07 2.50 1.2 - } + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 0.7 0.05 } + } - } - ] -translation 4.025 4.05 -4.96 -} + ] + translation 4.865 1.95 -0.14 + } -DEF vulstukvoortrap Transform { - children [ - Shape { -appearance USE wandkleur - - geometry IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - 4.42 2.7 -2.36, - 4.42 2.7 -3.36, - 4.42 2.8 -3.36, - 4.42 2.8 -2.36, - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - 0, 1, 2, 3, -1, - 0, 3, 2, 1, -1, -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid TRUE - texCoordIndex [] - } - } - ] -} + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 0.7 0.05 } + } + ] + translation 5.015 1.95 -0.14 + } + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.1 0.05 0.05 } + } -DEF paalvoortrap Transform { -children[ -Shape { -appearance USE wandkleur -geometry Box { size 0.07 2.50 0.07 } -} -] -translation 4.385 4.05 -3.36 -} + ] + translation 4.94 1.625 -0.14 + } -# deuren.wrl + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.1 0.05 0.05 } + } + ] + translation 4.94 2.275 -0.14 + } + #einde toiletraam + #voordeur posten + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 2.26 0.05 } + } + ] + translation 3.215 1.17 -0.14 + } + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 2.26 0.05 } + } -#Deuren boven + ] + translation 4.395 1.17 -0.14 + } + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 1.13 0.05 0.05 } + } -#deur7 -Transform { -children[ + ] + translation 3.805 2.275 -0.14 + } + #einde deurposten + #begin kozijnen achter + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 2.1 0.05 } + } -#dwarslat boven de deur -DEF dwarslat Transform { - children [ - Shape { -appearance DEF kozijn Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.95 0.95 0.9 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry Box { size 0.8 0.05 0.05 } -} + ] + translation 3.215 1.65 -8.86 + } + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 2.1 0.05 } + } -] -translation 0 2.035 0 -} + ] + translation 4.775 1.65 -8.86 + } + Transform { + children [ + Shape { + appearance DEF blauw Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.3 0.4 0.7 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + + geometry Box { size 1.51 0.5 0.05 } + } + ] + translation 3.995 2.45 -8.86 + } -DEF ruitjeboven Transform { - children [ - Shape { -appearance DEF glas Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.6 0.6 0.9 - emissiveColor 0 0 0 - shininess 0.8 - specularColor 1 1 1 - transparency 0.7 -} texture NULL - textureTransform NULL -} - geometry Box { size 0.8 0.44 0.01 } -} + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 1.51 0.05 0.05 } + } -] -translation 0 2.28 0 -}#ruit boven de deur + ] + translation 3.995 0.625 -8.86 + }#1 + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 1.51 0.05 0.05 } + } -#deur -DEF deuroudersgang Transform { -center -0.4 0 0 - children [ + ] + translation 3.995 2.175 -8.86 + }#2 + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.94 0.05 0.05 } + } - DEF klikopdeur7 TouchSensor {} - DEF TimeSource7 TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. - # Animeer het openzwaaien van de deur rond de Y as: - DEF Deuropen7 OrientationInterpolator { - key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] - keyValue [ 0 1 0 0, 0 1 0 -1, 0 1 0 -2, 0 1 0 -2, 0 1 0 -1, 0 1 0 0 ] - } + ] + translation 2.72 0.625 -8.86 + } + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 1.99 0.05 0.05 } + } -DEF deurklink # deurklink.wrl + ] + translation 2.195 2.675 -8.86 + } + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 1 0.05 0.05 } + } + ] + translation 1.725 2.175 -8.86 + } + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 2.61 0.05 } + } + ] + translation 1.225 1.345 -8.86 + } -DEF deurklink Transform { - children [ - DEF enehelft Shape { - appearance DEF aluminium Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.4 0.4 0.5 - emissiveColor 0 0 0 - shininess 0.8 - specularColor 0.4 0.4 0.5 + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 2.61 0.05 } } - texture NULL - textureTransform NULL - } - geometry IndexedFaceSet { - color NULL - coord Coordinate { - point [ - -0.015 0.02 0, #0 - 0.015 0.02 0, - 0.02 -0.02 0, - -0.02 -0.02 0, #3 - - -0.01 -0.015 0.06, #4 - 0.01 -0.015 0.06, - -0.01 0.015 0.03, - 0.01 0.015 0.03, - - 0.005 0.1 0.035, #8 - -0.005 0.1 0.035, - -0.005 0.1 0.055, - 0.005 0.1 0.055, - - - - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - -2, 3, 4, 5, -1, -2, 5, 4, 3, -1, - -4, 5, 11, 10, -1, -4, 10, 11, 5, -1, - -0, 1, 7, 6, -1, -0, 6, 7, 1, -1, - -6, 7, 8, 9, -1, -6, 9, 8, 7, -1, - -8, 9, 10, 11, -1, -8, 11, 10, 9, -1, - -0, 6, 4, 3, -1, -0, 3, 4, 6, -1, - -6, 9, 10, 4, -1, -6, 4, 10, 9, -1, - -1, 2, 5, 7, -1, -1, 7, 5, 2, -1, - -7, 5, 11, 8, -1, -7, 8, 11, 5, -1, - -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid TRUE - #texCoordIndex [] - } - }#enehelft - - Transform { - children [ - - USE enehelft - ] - rotation 0 1 0 3.1415927 - translation 0 0 -0.07 - } - Transform { - - children [ - DEF vlakdeel Shape { - appearance USE aluminium - geometry Box { size 0.18 0.07 0.01 } - }#shape - ] - translation -0.03 0 -0.005 - } - - Transform { - - children [ - USE vlakdeel - ] - translation -0.03 0 -0.065 - } - - - - ] - -translation 0.35 0 0.035 -rotation 0 0 1 1.5707963 -}#deurklink - + ] + translation 2.225 1.345 -8.86 + } -# /deurklink.wrl -DEF deurvorm Shape { - appearance DEF deurkleur Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.8 0.8 0.8 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry Box { size 0.8 2 0.05 } -}] -translation 0 1.005 0 -} - -] -translation 3.155 2.8 -3.53 -rotation 0 1 0 1.5707963 -} - -#ROUTE klikopdeur7.touchTime TO TimeSource7.startTime -#ROUTE TimeSource7.fraction_changed TO Deuropen7.set_fraction -#ROUTE Deuropen7.value_changed TO deuroudersgang.rotation - -#deur8 -Transform { -children[ USE dwarslat - USE ruitjeboven - -#deur -DEF deurtweedeslaapkamergang Transform { -center -0.4 0 0 - children [ - - - - DEF klikopdeur8 TouchSensor {} - DEF TimeSource8 TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. - # Animeer het openzwaaien van de deur rond de Y as: - DEF Deuropen8 OrientationInterpolator { - key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] - keyValue [ 0 1 0 0, 0 1 0 -1, 0 1 0 -2, 0 1 0 -2, 0 1 0 -1, 0 1 0 0 ] - } -USE deurklink -USE deurvorm -] -translation 0 1.005 0 -} - -] -translation 3.155 2.8 -5.03 -rotation 0 1 0 -1.5707963 -} + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 1.5 0.05 } + } -#ROUTE klikopdeur8.touchTime TO TimeSource8.startTime -#ROUTE TimeSource8.fraction_changed TO Deuropen8.set_fraction -#ROUTE Deuropen8.value_changed TO deurtweedeslaapkamergang.rotation + ] + translation 3.565 1.4 -8.86 + } + #einde ramen achter -#deur9 -Transform { -children[ USE dwarslat - USE ruitjeboven -#deur -DEF deurkinderkamergang Transform { -center -0.4 0 0 - children [ + # /ramen.wrl + # ruiten.wrl - DEF klikopdeur9 TouchSensor {} - DEF TimeSource9 TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. - # Animeer het openzwaaien van de deur rond de Y as: - DEF Deuropen9 OrientationInterpolator { - key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] - keyValue [ 0 1 0 0, 0 1 0 -1, 0 1 0 -2, 0 1 0 -2, 0 1 0 -1, 0 1 0 0 ] - } -USE deurklink -USE deurvorm -] -translation 0 1.005 0 -} - -] -translation 3.59 2.8 -5.465 -rotation 0 1 0 3.1415927 -} -#ROUTE klikopdeur9.touchTime TO TimeSource9.startTime -#ROUTE TimeSource9.fraction_changed TO Deuropen9.set_fraction -#ROUTE Deuropen9.value_changed TO deurkinderkamergang.rotation -#deur10 -Transform { -children[ USE dwarslat - USE ruitjeboven + #begin vensterglas -#deur -DEF deurbadkamergang Transform { -center -0.4 0 0 - children [ + Transform { + children [ + Shape { + appearance DEF glas Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.6 0.6 0.9 + emissiveColor 0 0 0 + shininess 0.8 + specularColor 1 1 1 + transparency 0.7 + } texture NULL + textureTransform NULL + } + geometry Box { size 0.94 2 0.01 } + } + ] + translation 2.72 1.65 -8.86 + }#ruit 5 achter + #ruit1 keuken + Transform { + children [ + Shape { + appearance USE glas + geometry Box { size 0.8 1.3 0.01 } + } - DEF klikopdeur10 TouchSensor {} - DEF TimeSource10 TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. - # Animeer het openzwaaien van de deur rond de Y as: - DEF Deuropen10 OrientationInterpolator { - key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] - keyValue [ 0 1 0 0, 0 1 0 -1, 0 1 0 -2, 0 1 0 -2, 0 1 0 -1, 0 1 0 0 ] - } -USE deurklink -USE deurvorm -] -translation 0 1.005 0 -} - -] -translation 4.01 2.8 -2.325 -rotation 0 1 0 0 -} + ] + translation 1.05 1.6 -0.14 + }#ruit 1 keuken + #ruit3 keuken + Transform { + children [ + Shape { + appearance USE glas + geometry Box { size 0.8 1.3 0.01 } + } + ] + translation 2.15 1.6 -0.14 + }#ruit 3 keuken -#ROUTE klikopdeur10.touchTime TO TimeSource10.startTime -#ROUTE TimeSource10.fraction_changed TO Deuropen10.set_fraction -#ROUTE Deuropen10.value_changed TO deurbadkamergang.rotation + #ruit2 keuken + Transform { + children [ + Shape { + appearance USE glas + geometry Box { size 0.2 1.3 0.01 } + } + ] + translation 1.6 1.6 -0.14 + }#ruit 2 keuken -# /deuren.wrl -# trapboven.wrl + #toiletruit + Transform { + children [ + Shape { + appearance USE glas + geometry Box { size 0.1 0.6 0.01 } + } + ] + translation 4.94 1.95 -0.14 + }#ruit van toiletraam + #ramen achter + Transform { + children [ + Shape { + appearance USE glas + geometry Box { size 1.16 1.5 0.01 } + } + ] + translation 4.17 1.4 -8.86 + }#ruit 3 achter -DEF trapboven Transform { - children [ - Shape { -appearance Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 1 0.5 0.3 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry DEF trap2 IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - -0.2 0 1, #0 - 0 0.2 1, - 0 0.2 0, - -0.2 0 0, #3 - - 0.28 0.4 1, #4 - 0.6 0.6 1, - 0.98 0.8 1, - 0.98 1 0.45, #7 - - 0.98 1.2 0.25, #8 - 0.98 1.4 0, - 0.98 1.6 -0.25, - 0.98 1.8 -0.45, #11 - - 0.98 2.0 -1, #12 - 0.6 2.2 -1, - 0.28 2.4 -1, - 0 2.6 -1, #15 - - 0 0.6 0, #16 - 0 0.8 0, - 0 1 0, #18 - 0 1.2 0, #19 - - 0 1.4 0, #20 - 0 1.6 0, - 0 1.8 0, #22 - 0 2 0, #23 - - 0 2.2 0, #24 - 0 2.4 0, - 0 2.6 0, - 0 2.8 0, #27 - - -0.2 0.2 1, #28 - 0 0.4 1, - 0 0.4 0, - -0.2 0.2 0, #31 - - 0.28 0.6 1, #32 - 0.6 0.8 1, - 0.98 1 1, - 0.98 1.2 0.45, #35 - - 0.98 1.4 0.25, #36 - 0.98 1.6 0, - 0.98 1.8 -0.25, - 0.98 2 -0.45, #39 - - 0.98 2.2 -1, #40 - 0.6 2.4 -1, - 0.28 2.6 -1, - 0 2.8 -1, #43 - - 0 0 1, - 0 0 0, #45 - 0 0.4 0, #46 - - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - - 28, 1, 2, 31, -1, #1e_treevlak - 29, 4, 46, -1, #2e - 32, 5, 16, -1, - 33, 6, 17, -1, - 34, 7, 18, -1, - 35, 8, 19, -1, - 36, 9, 20, -1, - 37, 10, 21, -1, - 38, 11, 22, -1, - 39, 12, 23, -1, - 40, 13, 24, -1, - 41, 14, 25, -1, - 42, 15, 26, -1, #13e_treevlak - -# 0, 28, 31, 3, -1, #voor_en_zijvlakken_van_de_eerste_tree_komt_boven_niet_voor -# 0, 44, 1, 28, -1, -# 3, 31, 2, 45, -1, - - 2, 1, 29, 30, -1, #alle_voorvlakken - 46, 4, 32, 16, -1, - 16, 5, 33, 17, -1, - 17, 6, 34, 18, -1, - 18, 7, 35, 19, -1, - 19, 8, 36, 20, -1, - 20, 9, 37, 21, -1, - 21, 10, 38, 22, -1, - 22, 11, 39, 23, -1, - 23, 12, 40, 24, -1, - 24, 13, 41, 25, -1, - 25, 14, 42, 26, -1, - 26, 15, 43, 27, -1, - - - - -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid FALSE - texCoordIndex [] - } - } - ] -translation 4.42 2.6 -3.36 -} + Transform { + children [ + Shape { + appearance USE glas + geometry Box { size 0.3 1.5 0.01 } + } + ] + translation 3.39 1.4 -8.86 + }#ruit 4 achter -# /trapboven.wrl + Transform { + children [ + Shape { + appearance USE glas + geometry Box { size 0.95 0.45 0.01 } + } -# buitmuur.wrl + ] + translation 1.725 2.425 -8.86 + }#ruit 6 achter + + # /ruiten.wrl + + + # /beneden/beneden.wrl + + + DEF boven Transform { + children[ + + Transform { + children[ + + Transform { + children[ + Shape { + appearance DEF groen Appearance { + material Material { + ambientIntensity 1 + diffuseColor 0 1 0 + emissiveColor 0 1 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry DEF pijl IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + 0 0 0, + 0.2 0.2 0, + 0.2 -0.2 0, + + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ 0,1,2,-1, + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid FALSE + texCoordIndex [] + } + }#shape + ] + rotation 0 1 0 3.1415927 + } + + DEF schuifboven TouchSensor {} + ] + translation 0.15 2.95 0.3 + } + Transform { + children[ + + Shape { + appearance DEF rood Appearance { + material Material { + ambientIntensity 1 + diffuseColor 1 0 0 + emissiveColor 1 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + + geometry USE pijl + } + + DEF schuifboven2 TouchSensor {} + ] + + translation 5.48 2.95 0.3 + } + # boven/boven.wrl -Transform { - children [ - Shape { -appearance DEF steen Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.8 0.4 0.3 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - 0 0 0, #linkerbenedenhoek voorgevel - 5.68 0 0, - 5.68 5.40 0, - 0 5.40 0, #linkerbovenhoek voorgevel - - 3.19 0 0, #voordeur - 4.42 0 0, - 4.42 2.30 0, - 3.19 2.30 0, #voordeur - - 4.84 1.60 0, #toiletraam-8 - 5.04 1.60 0, - 5.04 2.30 0, - 4.84 2.30 0, - - 2.60 0.90 0, #keukenraam-12 - 2.60 2.30 0, - 0.60 2.30 0, - 0.60 0.90 0, - - 0.60 3.60 0, #bovenraam-16 - 1.50 3.60 0, - 1.50 5.0 0, - 4.42 5.0 0, - 4.42 5.40 0, - 0.60 5.40 0, - - 0 8.555 -3.15, #linkergevel-22 - 0 2.7 -9.0, - 0 0 -9.0, - 5.68 8.555 -3.15, #rechtergevel-25 - 5.68 5.40 -6.3, - 5.68 5.40 -9, - 5.68 0 -9.0, - 2.25 0 -9.0, #achtergevel-29 - 2.25 0.6 -9.0, - 4.8 0.6 -9.0, - 4.8 5.40 -9.0, - 1.2 0 -9.0, - 1.2 2.7 -9, + Viewpoint { + fieldOfView 1 + jump TRUE + orientation 1 0 0 0 + position 2.5 3.75 -2.5 + description "Ouderslaapkamer" + } - 3.19 0 -0.14, #diepte van de voordeur-35 - 4.42 0 -0.14, - 4.42 2.30 -0.14, - 3.19 2.30 -0.14, #diepte van de voordeur-38 + Viewpoint { + fieldOfView 1 + jump TRUE + orientation 1 0 0 0 + position 2.5 3.75 -5 - 2.60 0.90 -0.14, # diepte van het keukenraam-39 - 2.60 2.30 -0.14, - 0.60 2.30 -0.14, - 0.60 0.90 -0.14, + description "Tweede slaapkamer" + } - 4.84 1.60 -0.14, #diepte van het toiletraam-43 - 5.04 1.60 -0.14, - 5.04 2.30 -0.14, - 4.84 2.30 -0.14, + Viewpoint { + fieldOfView 1 + jump TRUE + orientation 1 0 0 0 + position 4.5 3.75 -7 - 0.60 3.60 -0.14, #diepte van het bovenraam-47 - 1.50 3.60 -0.14, - 1.50 5.0 -0.14, - 4.42 5.0 -0.14, - 4.42 5.40 -0.14, - 0.60 5.40 -0.14, #52 + description "Kinderkamer" + } - 2.25 0 -8.86, #diepte van de achtergevel-53 - 2.25 0.6 -8.86, - 4.8 0.6 -8.86, - 4.8 5.40 -8.86, - 1.2 0 -8.86, - 1.2 2.7 -8.86, #58 + Viewpoint { + fieldOfView 1 + jump TRUE + orientation 1 0 0 0 + position 4.5 3.75 -1.5 - 0 2.7 0, #59 extra punten voor segmentering beneden - 0.14 2.7 -0.14, + description "Badkamer" + } - 5.68 2.7 0, #61 - 5.54 2.7 -0.14, # - 0 2.7 -9, #63 - 0.14 2.7 -8.86, # - 5.68 2.7 -9, #65 - 5.54 2.7 -8.86, # + #dak van schuur + + Transform { + children [ + Shape { + appearance DEF appdak Appearance { + material Material { + ambientIntensity 0 + diffuseColor 0.2 0.2 0.2 + emissiveColor 0 0 0 + shininess 0 + specularColor 0 0 0 + transparency 0 + } + + texture ImageTexture { + url [""] + repeatS TRUE + repeatT TRUE + } + } + + geometry Box { size 2.24 0.04 3.24 } + } + ] + translation 4.6 2.62 6.2 + } - 1.2 2.7 -9, #67 - 1.2 2.7 -8.86, # - 4.8 2.7 -9, #69 - 4.8 2.7 -8.86, # + DEF plafond Transform { + children [ + Shape { + appearance Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 1 1 1 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + 0.14 2.70 -0.14, + 5.54 2.70 -0.14, + 5.54 2.70 -8.86, + 0.14 2.70 -8.86, + + 5.54 2.70 -2.36, #-4 + 5.54 2.70 -4.36, + 4.42 2.70 -4.36, + 4.42 2.70 -2.36, + + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + 0, 1, 4, 7, -1, + 0, 7, 4, 1, -1, + + 0, 7, 6, 3, -1, + 0, 3, 6, 7, -1, + + 5, 2, 3, 6, -1, + 5, 6, 3, 2, -1, + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid TRUE + texCoordIndex [] + } + } + ] + } - 0.14 5.4 -0.14, #71 - 5.54 5.4 -0.14, #72 - 5.54 5.4 -8.86, #73 - 0.14 2.7 -9, #74 - 0.14 5.4 -6.3, #75 - 0 5.4 -6.3, #76 - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - 16, 21, 3, 59, -1, - 19, 2, 20, -1, + DEF vloerboven Transform { + children [ + Shape { + appearance Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 1 0.5 0.3 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + 0.14 2.80 -0.14, + 5.54 2.80 -0.14, + 5.54 2.80 -8.86, + 0.14 2.80 -8.86, + + 5.54 2.80 -2.36, #-4 + 5.54 2.8 -4.36, + 4.42 2.8 -4.36, + 4.42 2.8 -2.36, + + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + 0, 1, 4, 7, -1, + 0, 7, 4, 1, -1, + + 0, 7, 6, 3, -1, + 0, 3, 6, 7, -1, + + 5, 2, 3, 6, -1, + 5, 6, 3, 2, -1, + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid TRUE + texCoordIndex [] + } + } + ] + } - 2, 19, 61, -1, - 65, 27, 2, 61, -1, - 59, 3, 76, 23, -1, - 17, 48, 47, 16, -1, + DEF stukmuur1 Transform { + children[ + Shape { + appearance DEF wandkleur Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 1 0.9 0.7 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry Box { + size 2.84 2.50 0.07 + } + + } + ] + translation 1.7 4.05 -4.565 + } - 18, 49, 48, 17, -1, + DEF stukmuur2 Transform { + children[ + Shape { + appearance USE wandkleur + geometry Box { + size 0.07 2.50 0.7 + } + + } + ] + translation 3.155 4.05 -4.28 + } - 19, 50, 49, 18, -1, - 20, 51, 50, 19, -1, + DEF stukmuur3 Transform { + children[ + Shape { + appearance USE wandkleur + geometry Box { + size 0.07 2.68 3.57 + } - 16, 47, 52, 21, -1, + } + ] + translation 3.155 4.05 -7.215 + } - 3, 21, 52, 71, -1, + DEF stukmuur4 Transform { + children[ + Shape { + appearance USE wandkleur + geometry Box { + size 0.07 2.50 2.85 + } + + } + ] + translation 3.155 4.05 -1.705 + } - 20, 2, 72, 51, -1, + DEF stukmuur5 Transform { + children[ + Shape { + appearance USE wandkleur + geometry Box { + size 0.42 2.50 0.07 + } + + } + ] + translation 3.4 4.05 -2.325 + } - 2, 27, 73, 72, -1, + DEF stukmuur6 Transform { + children[ + Shape { + appearance USE wandkleur + geometry Box { + size 0.98 2.50 0.07 + } + + } + ] + translation 4.91 4.05 -2.325 + } - 27, 32, 56, 73, -1, + DEF stukmuur7 Transform { + children[ + Shape { + appearance USE wandkleur + geometry Box { + size 1.34 2.50 0.07 + } + + } + ] + translation 4.73 4.05 -4.395 + } - 63, 64, 75, 76, -1, - 3, 76, 75, 71, -1, + DEF stukmuur8 Transform { + children[ + Shape { + appearance USE wandkleur + geometry Box { + size 0.07 2.50 1.2 + } - #27, 32, 69, 65, -1, - 27, 65, 69, 32, -1, + } + ] + translation 4.025 4.05 -4.96 + } - 32, 69, 70, 56, -1, + DEF vulstukvoortrap Transform { + children [ + Shape { + appearance USE wandkleur + + geometry IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + 4.42 2.7 -2.36, + 4.42 2.7 -3.36, + 4.42 2.8 -3.36, + 4.42 2.8 -2.36, + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + 0, 1, 2, 3, -1, + 0, 3, 2, 1, -1, + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid TRUE + texCoordIndex [] + } + } + ] + } - 59, 17, 16, -1, - 59, 61, 17, -1, - 17, 61 , 18. -1, + DEF paalvoortrap Transform { + children[ + Shape { + appearance USE wandkleur + geometry Box { size 0.07 2.50 0.07 } + } + ] + translation 4.385 4.05 -3.36 + } - 18, 61, 19, -1, + # deuren.wrl -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid FALSE - texCoordIndex [] - } - } - ] -} -# /buitmuur.wrl + #Deuren boven + + #deur7 + Transform { + children[ + + #dwarslat boven de deur + DEF dwarslat Transform { + children [ + Shape { + appearance DEF kozijn Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.95 0.95 0.9 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry Box { size 0.8 0.05 0.05 } + } + + ] + translation 0 2.035 0 + } + + + + DEF ruitjeboven Transform { + children [ + Shape { + appearance DEF glas Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.6 0.6 0.9 + emissiveColor 0 0 0 + shininess 0.8 + specularColor 1 1 1 + transparency 0.7 + } texture NULL + textureTransform NULL + } + geometry Box { size 0.8 0.44 0.01 } + } + + ] + translation 0 2.28 0 + }#ruit boven de deur -# binmuur.wrl + #deur + DEF deuroudersgang Transform { + center -0.4 0 0 + children [ + DEF klikopdeur7 TouchSensor {} + DEF TimeSource7 TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. + # Animeer het openzwaaien van de deur rond de Y as: + DEF Deuropen7 OrientationInterpolator { + key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] + keyValue [ 0 1 0 0, 0 1 0 -1, 0 1 0 -2, 0 1 0 -2, 0 1 0 -1, 0 1 0 0 ] + } + + + DEF deurklink # deurklink.wrl + + + + + + DEF deurklink Transform { + children [ + DEF enehelft Shape { + appearance DEF aluminium Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.4 0.4 0.5 + emissiveColor 0 0 0 + shininess 0.8 + specularColor 0.4 0.4 0.5 + } + texture NULL + textureTransform NULL + } + geometry IndexedFaceSet { + color NULL + coord Coordinate { + point [ + -0.015 0.02 0, #0 + 0.015 0.02 0, + 0.02 -0.02 0, + -0.02 -0.02 0, #3 -Transform { - children [ - Shape { -appearance Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 1 0.9 0.7 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - 0.28 0 -0.28, #0 linkerbenedenhoek voorgevel - 5.40 0 -0.28, - 5.40 5.40 -0.28, - 0.28 5.40 -0.28, #3 linkerbovenhoek voorgevel - - 3.19 0 -0.28, #4 voordeur - 4.42 0 -0.28, - 4.42 2.30 -0.28, - 3.19 2.30 -0.28, #7 voordeur - - 4.84 1.60 -0.28, #toiletraam-8 - 5.04 1.60 -0.28, - 5.04 2.30 -0.28, - 4.84 2.30 -0.28, - - 2.60 0.90 -0.28, #keukenraam-12 - 2.60 2.30 -0.28, - 0.60 2.30 -0.28, - 0.60 0.90 -0.28, - - 0.60 3.60 -0.28, #bovenraam-16 - 1.50 3.60 -0.28, - 1.50 5.0 -0.28, - 4.42 5.0 -0.28, - 4.42 5.40 -0.28, - 0.60 5.40 -0.28, - - 0.28 8.55 -3.15, #linkergevel-22 - 0.28 2.70 -8.72, - 0.28 0 -8.72, + -0.01 -0.015 0.06, #4 + 0.01 -0.015 0.06, + -0.01 0.015 0.03, + 0.01 0.015 0.03, + + 0.005 0.1 0.035, #8 + -0.005 0.1 0.035, + -0.005 0.1 0.055, + 0.005 0.1 0.055, + + + + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + + 2, 3, 4, 5, -1, + 2, 5, 4, 3, -1, + + 4, 5, 11, 10, -1, + 4, 10, 11, 5, -1, + + 0, 1, 7, 6, -1, + 0, 6, 7, 1, -1, + + 6, 7, 8, 9, -1, + 6, 9, 8, 7, -1, + + 8, 9, 10, 11, -1, + 8, 11, 10, 9, -1, + + 0, 6, 4, 3, -1, + 0, 3, 4, 6, -1, + + 6, 9, 10, 4, -1, + 6, 4, 10, 9, -1, + + 1, 2, 5, 7, -1, + 1, 7, 5, 2, -1, + + 7, 5, 11, 8, -1, + 7, 8, 11, 5, -1, - 5.40 8.55 -3.15, #rechtergevel-25 - 5.40 5.40 -6.30, - 5.40 5.40 -8.72, - 5.40 0 -8.72, + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid TRUE + #texCoordIndex [] + } + }#enehelft - 2.25 0 -8.72, #achtergevel-29 - 2.25 0.6 -8.72, - 4.8 0.6 -8.72, - 4.8 5.40 -8.72, - 1.2 0 -8.72, - 1.2 2.70 -8.72, + Transform { + children [ + USE enehelft + ] + rotation 0 1 0 3.1415927 + translation 0 0 -0.07 + } + Transform { - 3.19 0 -0.14, #diepte van de voordeur-35 - 4.42 0 -0.14, - 4.42 2.30 -0.14, - 3.19 2.30 -0.14, #diepte van de voordeur-38 + children [ + DEF vlakdeel Shape { + appearance USE aluminium + geometry Box { size 0.18 0.07 0.01 } + }#shape + ] + translation -0.03 0 -0.005 + } + + Transform { + + children [ + USE vlakdeel + ] + translation -0.03 0 -0.065 + } + + + + ] + + translation 0.35 0 0.035 + rotation 0 0 1 1.5707963 + }#deurklink + + + + # /deurklink.wrl - 2.60 0.90 -0.14, # diepte van het keukenraam-39 - 2.60 2.30 -0.14, - 0.60 2.30 -0.14, - 0.60 0.90 -0.14, - 4.84 1.60 -0.14, #diepte van het toiletraam-43 - 5.04 1.60 -0.14, - 5.04 2.30 -0.14, - 4.84 2.30 -0.14, + DEF deurvorm Shape { + appearance DEF deurkleur Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.8 0.8 0.8 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry Box { size 0.8 2 0.05 } + }] + translation 0 1.005 0 + } + + ] + translation 3.155 2.8 -3.53 + rotation 0 1 0 1.5707963 + } - 0.60 3.60 -0.14, #diepte van het bovenraam-47 - 1.50 3.60 -0.14, - 1.50 5.0 -0.14, - 4.42 5.0 -0.14, - 4.42 5.40 -0.14, - 0.60 5.40 -0.14, #52 + ROUTE klikopdeur7.touchTime TO TimeSource7.startTime + ROUTE TimeSource7.fraction_changed TO Deuropen7.set_fraction + ROUTE Deuropen7.value_changed TO deuroudersgang.rotation + + #deur8 + Transform { + children[ USE dwarslat + USE ruitjeboven + + #deur + DEF deurtweedeslaapkamergang Transform { + center -0.4 0 0 + children [ + + + + DEF klikopdeur8 TouchSensor {} + DEF TimeSource8 TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. + # Animeer het openzwaaien van de deur rond de Y as: + DEF Deuropen8 OrientationInterpolator { + key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] + keyValue [ 0 1 0 0, 0 1 0 -1, 0 1 0 -2, 0 1 0 -2, 0 1 0 -1, 0 1 0 0 ] + } + USE deurklink + USE deurvorm + ] + translation 0 1.005 0 + } + + ] + translation 3.155 2.8 -5.03 + rotation 0 1 0 -1.5707963 + } - 2.25 0 -8.86, #diepte van de achtergevel-53 - 2.25 0.6 -8.86, - 4.8 0.6 -8.86, - 4.8 5.40 -8.86, - 1.2 0 -8.86, - 1.2 2.70 -8.86, #58 + ROUTE klikopdeur8.touchTime TO TimeSource8.startTime + ROUTE TimeSource8.fraction_changed TO Deuropen8.set_fraction + ROUTE Deuropen8.value_changed TO deurtweedeslaapkamergang.rotation - 0.28 5.40 0, #59 hoekpunt voor dakvorm zolder - 5.40 5.40 0, - 0.28 5.40 -6.30, #61 - 0.28 2.70 -9.0, #62 hoekpunt voor dakvorm 1e verdieping - 0.28 2.7 -0.28, #63 extra punten voor segmentering boven - 0.14 2.7 -0.14, + #deur9 + Transform { + children[ USE dwarslat + USE ruitjeboven - 5.4 2.7 -0.28, #65 - 5.54 2.7 -0.14, # + #deur + DEF deurkinderkamergang Transform { + center -0.4 0 0 + children [ - 0.28 2.7 -8.72, #67 - 0.14 2.7 -8.86, # - 5.4 2.7 -8.72, #69 - 5.54 2.7 -8.86, # - 1.2 2.7 -8.72, #71 - 1.2 2.7 -8.86, # + DEF klikopdeur9 TouchSensor {} + DEF TimeSource9 TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. + # Animeer het openzwaaien van de deur rond de Y as: + DEF Deuropen9 OrientationInterpolator { + key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] + keyValue [ 0 1 0 0, 0 1 0 -1, 0 1 0 -2, 0 1 0 -2, 0 1 0 -1, 0 1 0 0 ] + } + USE deurklink + USE deurvorm + ] + translation 0 1.005 0 + } - 4.8 2.7 -8.72, #73 - 4.8 2.7 -8.86, # + ] + translation 3.59 2.8 -5.465 + rotation 0 1 0 3.1415927 + } - 0.14 5.4 -0.14, #75 - 5.54 5.4 -0.14, #76 - 5.54 5.4 -8.86, #77 - 0.14 2.7 -9, #78 - 0.14 5.4 -6.3, #79 + ROUTE klikopdeur9.touchTime TO TimeSource9.startTime + ROUTE TimeSource9.fraction_changed TO Deuropen9.set_fraction + ROUTE Deuropen9.value_changed TO deurkinderkamergang.rotation - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ + #deur10 + Transform { + children[ USE dwarslat + USE ruitjeboven + #deur + DEF deurbadkamergang Transform { + center -0.4 0 0 + children [ - 16, 21, 3, 63, -1, - 19, 2, 20, -1, - 63, 16, 17, 65, -1, + DEF klikopdeur10 TouchSensor {} + DEF TimeSource10 TimeSensor { cycleInterval 20.0 } # Run once for 20 sec. + # Animeer het openzwaaien van de deur rond de Y as: + DEF Deuropen10 OrientationInterpolator { + key [ 0, 0.025, 0.05, 0.95, 0.975, 1.0 ] + keyValue [ 0 1 0 0, 0 1 0 -1, 0 1 0 -2, 0 1 0 -2, 0 1 0 -1, 0 1 0 0 ] + } + USE deurklink + USE deurvorm + ] + translation 0 1.005 0 + } - 17, 18, 19, 65, -1, + ] + translation 4.01 2.8 -2.325 + rotation 0 1 0 0 + } - 2, 19, 65, -1, - 69, 27, 2, 65, -1, - 63, 3, 61, 62, -1, + ROUTE klikopdeur10.touchTime TO TimeSource10.startTime + ROUTE TimeSource10.fraction_changed TO Deuropen10.set_fraction + ROUTE Deuropen10.value_changed TO deurbadkamergang.rotation - 16, 47, 48, 17, -1, - 17, 48, 49, 18, -1, + # /deuren.wrl - 18, 49, 50, 19, -1, + # trapboven.wrl + + + + + + + + + DEF trapboven Transform { + children [ + Shape { + appearance Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 1 0.5 0.3 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry DEF trap2 IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + -0.2 0 1, #0 + 0 0.2 1, + 0 0.2 0, + -0.2 0 0, #3 + + 0.28 0.4 1, #4 + 0.6 0.6 1, + 0.98 0.8 1, + 0.98 1 0.45, #7 + + 0.98 1.2 0.25, #8 + 0.98 1.4 0, + 0.98 1.6 -0.25, + 0.98 1.8 -0.45, #11 + + 0.98 2.0 -1, #12 + 0.6 2.2 -1, + 0.28 2.4 -1, + 0 2.6 -1, #15 + + 0 0.6 0, #16 + 0 0.8 0, + 0 1 0, #18 + 0 1.2 0, #19 + + 0 1.4 0, #20 + 0 1.6 0, + 0 1.8 0, #22 + 0 2 0, #23 + + 0 2.2 0, #24 + 0 2.4 0, + 0 2.6 0, + 0 2.8 0, #27 + + -0.2 0.2 1, #28 + 0 0.4 1, + 0 0.4 0, + -0.2 0.2 0, #31 + + 0.28 0.6 1, #32 + 0.6 0.8 1, + 0.98 1 1, + 0.98 1.2 0.45, #35 + + 0.98 1.4 0.25, #36 + 0.98 1.6 0, + 0.98 1.8 -0.25, + 0.98 2 -0.45, #39 + + 0.98 2.2 -1, #40 + 0.6 2.4 -1, + 0.28 2.6 -1, + 0 2.8 -1, #43 + + 0 0 1, + 0 0 0, #45 + 0 0.4 0, #46 + + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + + 28, 1, 2, 31, -1, #1e_treevlak + 29, 4, 46, -1, #2e + 32, 5, 16, -1, + 33, 6, 17, -1, + 34, 7, 18, -1, + 35, 8, 19, -1, + 36, 9, 20, -1, + 37, 10, 21, -1, + 38, 11, 22, -1, + 39, 12, 23, -1, + 40, 13, 24, -1, + 41, 14, 25, -1, + 42, 15, 26, -1, #13e_treevlak + + # 0, 28, 31, 3, -1, #voor_en_zijvlakken_van_de_eerste_tree_komt_boven_niet_voor + # 0, 44, 1, 28, -1, + # 3, 31, 2, 45, -1, + + 2, 1, 29, 30, -1, #alle_voorvlakken + 46, 4, 32, 16, -1, + 16, 5, 33, 17, -1, + 17, 6, 34, 18, -1, + 18, 7, 35, 19, -1, + 19, 8, 36, 20, -1, + 20, 9, 37, 21, -1, + 21, 10, 38, 22, -1, + 22, 11, 39, 23, -1, + 23, 12, 40, 24, -1, + 24, 13, 41, 25, -1, + 25, 14, 42, 26, -1, + 26, 15, 43, 27, -1, + + + + + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid FALSE + texCoordIndex [] + } + } + ] + translation 4.42 2.6 -3.36 + } - 19, 50, 51, 20, -1, - 21, 52, 47, 16, -1, + # /trapboven.wrl + + # buitmuur.wrl + + + + + Transform { + children [ + Shape { + appearance DEF steen Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.8 0.4 0.3 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + 0 0 0, #linkerbenedenhoek voorgevel + 5.68 0 0, + 5.68 5.40 0, + 0 5.40 0, #linkerbovenhoek voorgevel + + 3.19 0 0, #voordeur + 4.42 0 0, + 4.42 2.30 0, + 3.19 2.30 0, #voordeur + + 4.84 1.60 0, #toiletraam-8 + 5.04 1.60 0, + 5.04 2.30 0, + 4.84 2.30 0, + + 2.60 0.90 0, #keukenraam-12 + 2.60 2.30 0, + 0.60 2.30 0, + 0.60 0.90 0, + + 0.60 3.60 0, #bovenraam-16 + 1.50 3.60 0, + 1.50 5.0 0, + 4.42 5.0 0, + 4.42 5.40 0, + 0.60 5.40 0, - 73, 74, 56, 32, -1, + 0 8.555 -3.15, #linkergevel-22 + 0 2.7 -9.0, + 0 0 -9.0, - 69, 73, 32, 27, -1, + 5.68 8.555 -3.15, #rechtergevel-25 + 5.68 5.40 -6.3, + 5.68 5.40 -9, + 5.68 0 -9.0, - 3, 21, 52, 75 -1, + 2.25 0 -9.0, #achtergevel-29 + 2.25 0.6 -9.0, + 4.8 0.6 -9.0, + 4.8 5.40 -9.0, + 1.2 0 -9.0, + 1.2 2.7 -9, - 20, 2, 76, 51, -1, - 3, 61, 79, 75, -1, + 3.19 0 -0.14, #diepte van de voordeur-35 + 4.42 0 -0.14, + 4.42 2.30 -0.14, + 3.19 2.30 -0.14, #diepte van de voordeur-38 - 2, 27, 77, 76, -1, + 2.60 0.90 -0.14, # diepte van het keukenraam-39 + 2.60 2.30 -0.14, + 0.60 2.30 -0.14, + 0.60 0.90 -0.14, - 62, 61, 79, 78, -1, + 4.84 1.60 -0.14, #diepte van het toiletraam-43 + 5.04 1.60 -0.14, + 5.04 2.30 -0.14, + 4.84 2.30 -0.14, - 27, 32, 56, 77, -1, + 0.60 3.60 -0.14, #diepte van het bovenraam-47 + 1.50 3.60 -0.14, + 1.50 5.0 -0.14, + 4.42 5.0 -0.14, + 4.42 5.40 -0.14, + 0.60 5.40 -0.14, #52 + 2.25 0 -8.86, #diepte van de achtergevel-53 + 2.25 0.6 -8.86, + 4.8 0.6 -8.86, + 4.8 5.40 -8.86, + 1.2 0 -8.86, + 1.2 2.7 -8.86, #58 + 0 2.7 0, #59 extra punten voor segmentering beneden + 0.14 2.7 -0.14, -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid FALSE - texCoordIndex [] - } - } - ] -} + 5.68 2.7 0, #61 + 5.54 2.7 -0.14, # + 0 2.7 -9, #63 + 0.14 2.7 -8.86, # + 5.68 2.7 -9, #65 + 5.54 2.7 -8.86, # -# /binmuur.wrl + 1.2 2.7 -9, #67 + 1.2 2.7 -8.86, # -# ramen.wrl + 4.8 2.7 -9, #69 + 4.8 2.7 -8.86, # + 0.14 5.4 -0.14, #71 + 5.54 5.4 -0.14, #72 + 5.54 5.4 -8.86, #73 + 0.14 2.7 -9, #74 + 0.14 5.4 -6.3, #75 + 0 5.4 -6.3, #76 + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + 16, 21, 3, 59, -1, + 19, 2, 20, -1, + 2, 19, 61, -1, + 65, 27, 2, 61, -1, -#begin bovenraam + 59, 3, 76, 23, -1, -Transform { - children [ - Shape { -appearance DEF kozijn Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.95 0.95 0.9 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} + 17, 48, 47, 16, -1, -geometry Box { size 3.82 0.05 0.05 } -} + 18, 49, 48, 17, -1, -] -translation 2.51 5.025 -0.14 -} + 19, 50, 49, 18, -1, -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 3.82 0.1 0.05 } -} + 20, 51, 50, 19, -1, -] -translation 2.51 5.35 -0.14 -} + 16, 47, 52, 21, -1, -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.05 1.8 0.05 } -} + 3, 21, 52, 71, -1, -] -translation 0.625 4.5 -0.14 -} + 20, 2, 72, 51, -1, -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.05 1.8 0.05 } -} + 2, 27, 73, 72, -1, -] -translation 1.475 4.5 -0.14 -} + 27, 32, 56, 73, -1, -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.05 0.25 0.05 } -} + 63, 64, 75, 76, -1, -] -translation 4.395 5.175 -0.14 -} + 3, 76, 75, 71, -1, -Transform { - children [ - Shape { -appearance DEF blauw Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.3 0.4 0.7 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} + #27, 32, 69, 65, -1, + 27, 65, 69, 32, -1, -geometry Box { size 0.9 0.25 0.05 } -} + 32, 69, 70, 56, -1, -] -translation 3.05 5.175 -0.14 -} + 59, 17, 16, -1, -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.9 0.05 0.05 } -} + 59, 61, 17, -1, -] -translation 1.05 3.625 -0.14 -} + 17, 61 , 18, -1, -#einde bovenraam -#begin kozijnen achter -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.05 2.4 0.05 } -} + 18, 61, 19, -1, -] -translation 3.215 3.9 -8.86 -} -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.05 2.4 0.05 } -} -] -translation 4.775 3.9 -8.86 -} -Transform { - children [ - Shape { -appearance USE blauw -geometry Box { size 1.61 0.3 0.05 } -} + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid FALSE + texCoordIndex [] + } + } + ] + } -] -translation 3.995 5.25 -8.86 -} -Transform { - children [ - Shape { -appearance USE blauw -geometry Box { size 1.51 0.8 0.05 } -} -] -translation 3.995 3.1 -8.86 -} -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 1.51 0.05 0.05 } -} + # /buitmuur.wrl + + # binmuur.wrl + + + + + Transform { + children [ + Shape { + appearance Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 1 0.9 0.7 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + 0.28 0 -0.28, #0 linkerbenedenhoek voorgevel + 5.40 0 -0.28, + 5.40 5.40 -0.28, + 0.28 5.40 -0.28, #3 linkerbovenhoek voorgevel + + 3.19 0 -0.28, #4 voordeur + 4.42 0 -0.28, + 4.42 2.30 -0.28, + 3.19 2.30 -0.28, #7 voordeur + + 4.84 1.60 -0.28, #toiletraam-8 + 5.04 1.60 -0.28, + 5.04 2.30 -0.28, + 4.84 2.30 -0.28, + + 2.60 0.90 -0.28, #keukenraam-12 + 2.60 2.30 -0.28, + 0.60 2.30 -0.28, + 0.60 0.90 -0.28, + + 0.60 3.60 -0.28, #bovenraam-16 + 1.50 3.60 -0.28, + 1.50 5.0 -0.28, + 4.42 5.0 -0.28, + 4.42 5.40 -0.28, + 0.60 5.40 -0.28, -] -translation 3.995 3.525 -8.86 -}#3 -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 1.51 0.05 0.05 } -} + 0.28 8.55 -3.15, #linkergevel-22 + 0.28 2.70 -8.72, + 0.28 0 -8.72, -] -translation 3.995 5.075 -8.86 -}#4 + 5.40 8.55 -3.15, #rechtergevel-25 + 5.40 5.40 -6.30, + 5.40 5.40 -8.72, + 5.40 0 -8.72, + 2.25 0 -8.72, #achtergevel-29 + 2.25 0.6 -8.72, + 4.8 0.6 -8.72, + 4.8 5.40 -8.72, + 1.2 0 -8.72, + 1.2 2.70 -8.72, + 3.19 0 -0.14, #diepte van de voordeur-35 + 4.42 0 -0.14, + 4.42 2.30 -0.14, + 3.19 2.30 -0.14, #diepte van de voordeur-38 + 2.60 0.90 -0.14, # diepte van het keukenraam-39 + 2.60 2.30 -0.14, + 0.60 2.30 -0.14, + 0.60 0.90 -0.14, + 4.84 1.60 -0.14, #diepte van het toiletraam-43 + 5.04 1.60 -0.14, + 5.04 2.30 -0.14, + 4.84 2.30 -0.14, + 0.60 3.60 -0.14, #diepte van het bovenraam-47 + 1.50 3.60 -0.14, + 1.50 5.0 -0.14, + 4.42 5.0 -0.14, + 4.42 5.40 -0.14, + 0.60 5.40 -0.14, #52 -Transform { - children [ - Shape { -appearance USE kozijn -geometry Box { size 0.05 1.5 0.05 } -} + 2.25 0 -8.86, #diepte van de achtergevel-53 + 2.25 0.6 -8.86, + 4.8 0.6 -8.86, + 4.8 5.40 -8.86, + 1.2 0 -8.86, + 1.2 2.70 -8.86, #58 -] -translation 3.565 4.3 -8.86 -} + 0.28 5.40 0, #59 hoekpunt voor dakvorm zolder + 5.40 5.40 0, + 0.28 5.40 -6.30, #61 + 0.28 2.70 -9.0, #62 hoekpunt voor dakvorm 1e verdieping + 0.28 2.7 -0.28, #63 extra punten voor segmentering boven + 0.14 2.7 -0.14, + 5.4 2.7 -0.28, #65 + 5.54 2.7 -0.14, # -#einde ramen achter + 0.28 2.7 -8.72, #67 + 0.14 2.7 -8.86, # + 5.4 2.7 -8.72, #69 + 5.54 2.7 -8.86, # + 1.2 2.7 -8.72, #71 + 1.2 2.7 -8.86, # -# /ramen.wrl + 4.8 2.7 -8.72, #73 + 4.8 2.7 -8.86, # -# ruiten.wrl + 0.14 5.4 -0.14, #75 + 5.54 5.4 -0.14, #76 + 5.54 5.4 -8.86, #77 + 0.14 2.7 -9, #78 + 0.14 5.4 -6.3, #79 + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + 16, 21, 3, 63, -1, + 19, 2, 20, -1, -#bovenruiten -Transform { - children [ - Shape { -appearance DEF glas Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.6 0.6 0.9 - emissiveColor 0 0 0 - shininess 0.8 - specularColor 1 1 1 - transparency 0.7 -} texture NULL - textureTransform NULL -} + 63, 16, 17, 65, -1, - geometry Box { size 0.8 1.35 0.01 } -} + 17, 18, 19, 65, -1, -] -translation 1.05 4.325 -0.14 -}#ruit 1 boven + 2, 19, 65, -1, -Transform { - children [ - Shape { -appearance USE glas - geometry Box { size 0.8 0.3 0.01 } -} + 69, 27, 2, 65, -1, -] -translation 1.05 5.2 -0.14 -}#ruit 2 boven + 63, 3, 61, 62, -1, -Transform { - children [ - Shape { -appearance USE glas - geometry Box { size 1.1 0.3 0.01 } -} + 16, 47, 48, 17, -1, -] -translation 2.05 5.2 -0.14 -}#ruit 3 boven + 17, 48, 49, 18, -1, -Transform { - children [ - Shape { -appearance USE glas - geometry Box { size 0.85 0.3 0.01 } -} + 18, 49, 50, 19, -1, -] -translation 3.935 5.2 -0.14 -}#ruit 4 boven + 19, 50, 51, 20, -1, + 21, 52, 47, 16, -1, + 73, 74, 56, 32, -1, -#ramen achter -Transform { - children [ - Shape { -appearance USE glas - geometry Box { size 1.16 1.5 0.01 } -} + 69, 73, 32, 27, -1, -] -translation 4.17 4.3 -8.86 -}#ruit 1 achter + 3, 21, 52, 75 -1, -Transform { - children [ - Shape { -appearance USE glas - geometry Box { size 0.3 1.5 0.01 } -} + 20, 2, 76, 51, -1, -] -translation 3.39 4.3 -8.86 -}#ruit 2 achter + 3, 61, 79, 75, -1, + 2, 27, 77, 76, -1, + 62, 61, 79, 78, -1, -# /ruiten.wrl + 27, 32, 56, 77, -1, -# /boven/boven.wrl + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid FALSE + texCoordIndex [] + } + } + ] + } -DEF zolder Transform { -children[ -Transform { -children[ -Transform{ -children[ - Shape { -appearance USE groen -geometry USE pijl -} -] -rotation 0 1 0 3.1415927 -} + # /binmuur.wrl -DEF schuifzolder TouchSensor {} -] -translation 0.15 5.4 0.3 -} + # ramen.wrl -Transform { -children[ - Shape { -appearance USE rood -geometry USE pijl -} -DEF schuifzolder2 TouchSensor {} -] -translation 5.48 5.4 0.3 -} -DEF dak Transform { -children [ -# dak/dak.wrl + #begin bovenraam + Transform { + children [ + Shape { + appearance DEF kozijn Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.95 0.95 0.9 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } -Transform { - children [ - Shape { -appearance Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.3 0.4 0.5 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - 0 5.4 0, #dakranden-0 - 5.68 5.4 0, - 5.68 8.55 -3.15, - 0 8.55 -3.15, - 0 2.7 -9, - 3.12 2.7 -9, - 3.12 5.4 -6.30, - 5.68 5.4 -6.30, #7 - - 1.5 3.7 -8, #dakraam1-8 - 2.3 3.7 -8, - 2.3 4.7 -7, - 1.5 4.7 -7, - - 4.1 7.3 -1.9, #dakraam2-12 - 3.5 7.3 -1.9, - 3.5 7.7 -2.3, - 4.1 7.7 -2.3, #15 - - 0 5.44 0.04, #dikte van dakranden-16 - 5.68 5.44 0.04, - 5.68 8.6065685 -3.15, - 0 8.6065685 -3.15, - 0 2.74 -9.04, - 3.12 2.74 -9.04, - 3.12 5.44 -6.34, - 5.68 5.44 -6.34, #23 - - 1.5 3.74 -8.04, #dikte van het dakraam1-24 - 2.3 3.74 -8.04, - 2.3 4.74 -7.04, - 1.5 4.74 -7.04, #27 + geometry Box { size 3.82 0.05 0.05 } + } - 4.1 7.34 -1.86, #dikte van het dakraam2-28 - 3.5 7.34 -1.86, - 3.5 7.74 -2.26, - 4.1 7.74 -2.26, #31 - - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ + ] + translation 2.51 5.025 -0.14 + } + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 3.82 0.1 0.05 } + } - 0, 13, 14, 3, -1, - 0, 3, 14, 13, -1, + ] + translation 2.51 5.35 -0.14 + } - 16, 29, 30, 19, -1, - 16, 19, 30, 29, -1, + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 1.8 0.05 } + } - 0, 1, 12, 13, -1, - 0, 13, 12, 1, -1, + ] + translation 0.625 4.5 -0.14 + } - 16, 17, 28, 29, -1, - 16, 29, 28, 17, -1, + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 1.8 0.05 } + } - 1, 12, 15, 2, -1, - 1, 2, 15, 12, -1, + ] + translation 1.475 4.5 -0.14 + } - 17, 28, 31, 18, -1, - 17, 18, 31, 28, -1, + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 0.25 0.05 } + } - 15, 2, 3, 14, -1, - 15, 14, 3, 2, -1, + ] + translation 4.395 5.175 -0.14 + } - 31, 18, 19, 30, -1, - 31, 30, 19, 18, -1, - - 4, 8, 11, 3, -1, - 4, 3, 11, 8, -1, + Transform { + children [ + Shape { + appearance DEF blauw Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.3 0.4 0.7 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + + geometry Box { size 0.9 0.25 0.05 } + } + + ] + translation 3.05 5.175 -0.14 + } - 20, 24, 27, 19, -1, - 20, 19, 27, 24, -1, + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.9 0.05 0.05 } + } - 5, 4, 8, 9, -1, - 5, 9, 8, 4, -1, + ] + translation 1.05 3.625 -0.14 + } - 21, 20, 24, 25, -1, - 21, 25, 24, 20, -1, + #einde bovenraam + #begin kozijnen achter + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 2.4 0.05 } + } + + ] + translation 3.215 3.9 -8.86 + } + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 2.4 0.05 } + } + + ] + translation 4.775 3.9 -8.86 + } + Transform { + children [ + Shape { + appearance USE blauw + geometry Box { size 1.61 0.3 0.05 } + } + + ] + translation 3.995 5.25 -8.86 + } + Transform { + children [ + Shape { + appearance USE blauw + geometry Box { size 1.51 0.8 0.05 } + } + + ] + translation 3.995 3.1 -8.86 + } - 5, 9, 10, 6, -1, - 5, 6, 10, 9, -1, + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 1.51 0.05 0.05 } + } - 21, 25, 26, 22, -1, - 21, 22, 26, 25, -1, + ] + translation 3.995 3.525 -8.86 + }#3 + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 1.51 0.05 0.05 } + } - 7, 6, 2, -1, - 7, 2, 6, -1, + ] + translation 3.995 5.075 -8.86 + }#4 - 23, 22, 18, -1, - 23, 18, 22, -1, - 6, 10, 11, 3, 2, -1, - 6, 2, 3, 11, 10, -1, - 22, 26, 18, -1, - 22, 18, 26, -1, - 26, 27, 19, -1, - 26, 19, 27, -1, - 26, 19, 18, -1, - 26, 18, 19, -1, - 0, 1, 17, 16, -1, - 0, 16, 17, 1, -1, - 1, 2, 18, 17, -1, - 1, 17, 18, 2, -1, + Transform { + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 1.5 0.05 } + } - 3, 0, 16, 19, -1, - 3, 19, 16, 0, -1, + ] + translation 3.565 4.3 -8.86 + } - 2, 7, 23, 18, -1, - 2, 18, 23, 7, -1, - 7, 6, 22, 23, -1, - 7, 23, 22, 6, -1, - 5, 6, 22, 21, -1, - 5, 21, 22, 6, -1, + #einde ramen achter - 5, 4, 20, 21, -1, - 5, 21, 20, 4, -1, - 4, 3, 19, 20, -1, - 4, 20, 19, 3, -1, - 9, 8, 24, 25, -1, - 9, 25, 24, 8, -1, + # /ramen.wrl - 8, 11, 27, 24, -1, - 8, 24, 27, 11, -1, + # ruiten.wrl - 10, 11, 27, 26, -1, - 10, 26, 27, 11, -1, - 9, 10, 26, 25, -1, - 9, 25, 26, 10, -1, - 12, 13, 29, 28, -1, - 12, 28, 29, 13, -1, - 12, 15, 31, 28, -1, - 12, 28, 31, 15, -1, - 14, 15, 31, 30, -1, - 14, 30, 31, 15, -1, - 13, 14, 30, 29, -1, - 13, 29, 30, 14, -1, + #bovenruiten + Transform { + children [ + Shape { + appearance DEF glas Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.6 0.6 0.9 + emissiveColor 0 0 0 + shininess 0.8 + specularColor 1 1 1 + transparency 0.7 + } texture NULL + textureTransform NULL + } + geometry Box { size 0.8 1.35 0.01 } + } + ] + translation 1.05 4.325 -0.14 + }#ruit 1 boven + Transform { + children [ + Shape { + appearance USE glas + geometry Box { size 0.8 0.3 0.01 } + } -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid TRUE - texCoordIndex [] - } - } - ] -} + ] + translation 1.05 5.2 -0.14 + }#ruit 2 boven + Transform { + children [ + Shape { + appearance USE glas + geometry Box { size 1.1 0.3 0.01 } + } -#schoorsteen - -Transform { - children [ - Shape { -appearance Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.1 0.1 0.1 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0.3 0.3 0.3 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - 4.8 8 -2.6, - 5.3 8 -2.6, - 5.3 8.4 -3.0, - 4.8 8.4 -3.0, - - 4.9 9.4 -2.65, - 5.2 9.4 -2.65, - 5.2 9.4 -2.95, - 4.9 9.4 -2.95, ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - 0, 1, 5, 4, -1, - 0, 4, 5, 1, -1, - - 1, 2, 6, 5, -1, - 1, 5, 6, 2, -1, - - 2, 3, 7, 6, -1, - 2, 6, 7, 3, -1, - - 0, 3, 7, 4, -1, - 0, 4, 7, 3, -1, - - 4, 5, 6, 7, -1, - 4, 7, 6, 5, -1, - - -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid TRUE - texCoordIndex [] - } - } - ] -} + ] + translation 2.05 5.2 -0.14 + }#ruit 3 boven + Transform { + children [ + Shape { + appearance USE glas + geometry Box { size 0.85 0.3 0.01 } + } + ] + translation 3.935 5.2 -0.14 + }#ruit 4 boven + #ramen achter + Transform { + children [ + Shape { + appearance USE glas + geometry Box { size 1.16 1.5 0.01 } + } -# /dak/dak.wrl + ] + translation 4.17 4.3 -8.86 + }#ruit 1 achter -Transform { -children[ + Transform { + children [ + Shape { + appearance USE glas + geometry Box { size 0.3 1.5 0.01 } + } + ] + translation 3.39 4.3 -8.86 + }#ruit 2 achter -Transform{ -children[ - Shape { -appearance USE groen -geometry USE pijl -} -] -rotation 0 1 0 3.1415927 -} + # /ruiten.wrl -DEF schuifdak TouchSensor {} + # /boven/boven.wrl + + + + DEF zolder Transform { + children[ + + Transform { + children[ + + Transform{ + children[ + Shape { + appearance USE groen + geometry USE pijl + } + ] + rotation 0 1 0 3.1415927 + } + + DEF schuifzolder TouchSensor {} + ] + translation 0.15 5.4 0.3 + } + + Transform { + children[ + + Shape { + appearance USE rood + geometry USE pijl + } + + DEF schuifzolder2 TouchSensor {} + ] + translation 5.48 5.4 0.3 + } + + DEF dak Transform { + children [ + # dak/dak.wrl + + + + + Transform { + children [ + Shape { + appearance Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.3 0.4 0.5 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + 0 5.4 0, #dakranden-0 + 5.68 5.4 0, + 5.68 8.55 -3.15, + 0 8.55 -3.15, + 0 2.7 -9, + 3.12 2.7 -9, + 3.12 5.4 -6.30, + 5.68 5.4 -6.30, #7 -] -translation 0.15 6 0.3 -} + 1.5 3.7 -8, #dakraam1-8 + 2.3 3.7 -8, + 2.3 4.7 -7, + 1.5 4.7 -7, + 4.1 7.3 -1.9, #dakraam2-12 + 3.5 7.3 -1.9, + 3.5 7.7 -2.3, + 4.1 7.7 -2.3, #15 -Transform { -children[ + 0 5.44 0.04, #dikte van dakranden-16 + 5.68 5.44 0.04, + 5.68 8.6065685 -3.15, + 0 8.6065685 -3.15, + 0 2.74 -9.04, + 3.12 2.74 -9.04, + 3.12 5.44 -6.34, + 5.68 5.44 -6.34, #23 - Shape { -appearance USE rood -geometry USE pijl -} + 1.5 3.74 -8.04, #dikte van het dakraam1-24 + 2.3 3.74 -8.04, + 2.3 4.74 -7.04, + 1.5 4.74 -7.04, #27 -DEF schuifdak2 TouchSensor {} -] -translation 5.48 6 0.3 -} + 4.1 7.34 -1.86, #dikte van het dakraam2-28 + 3.5 7.34 -1.86, + 3.5 7.74 -2.26, + 4.1 7.74 -2.26, #31 -DEF tijd1 TimeSensor { - cycleInterval 4 - enabled TRUE - loop FALSE - startTime 0 - stopTime 0 -} + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ -DEF plaats1 PositionInterpolator { - key [0, 1] - keyValue [0 0 0 ,6 0 0] -} -DEF tijd1a TimeSensor { - cycleInterval 4 - enabled TRUE - loop FALSE - startTime 0 - stopTime 0 -} + 0, 13, 14, 3, -1, + 0, 3, 14, 13, -1, -DEF plaats1a PositionInterpolator { - key [0, 1] - keyValue [6 0 0 ,0 0 0] -} + 16, 29, 30, 19, -1, + 16, 19, 30, 29, -1, + 0, 1, 12, 13, -1, + 0, 13, 12, 1, -1, + 16, 17, 28, 29, -1, + 16, 29, 28, 17, -1, -] -}#dak + 1, 12, 15, 2, -1, + 1, 2, 15, 12, -1, -# zolder/zolder.wrl + 17, 28, 31, 18, -1, + 17, 18, 31, 28, -1, + 15, 2, 3, 14, -1, + 15, 14, 3, 2, -1, + 31, 18, 19, 30, -1, + 31, 30, 19, 18, -1, -Viewpoint { - fieldOfView 1 - jump TRUE - orientation 1 0 0 0 - position 2.5 7 -3.15 + 4, 8, 11, 3, -1, + 4, 3, 11, 8, -1, - description "op zolder" -} + 20, 24, 27, 19, -1, + 20, 19, 27, 24, -1, -#kleine platte dakje - -Transform { -children [ -Shape { -appearance DEF appdak Appearance { - material Material { - ambientIntensity 0 - diffuseColor 0.2 0.2 0.2 - emissiveColor 0 0 0 - shininess 0 - specularColor 0 0 0 - transparency 0 - } - - texture ImageTexture { - url [""] - repeatS TRUE - repeatT TRUE - } -} -geometry Box { size 2.6 0.04 2.74 } -} -] -translation 4.39 5.40 -7.67 -} + 5, 4, 8, 9, -1, + 5, 9, 8, 4, -1, + 21, 20, 24, 25, -1, + 21, 25, 24, 20, -1, -DEF zoldervloer Transform { - children [ - Shape { -appearance Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 1 0.5 0.3 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - 0.14 5.40 0, - 5.54 5.40 0, - 5.54 5.40 -6.30, - 0.14 5.40 -6.30, - - 5.54 5.40 -2.36, #-4 - 5.54 5.40 -4.36, - 4.42 5.40 -4.36, - 4.42 5.40 -2.36, - - - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - 0, 1, 4, 7, -1, - 0, 7, 4, 1, -1, - - 0, 7, 6, 3, -1, - 0, 3, 6, 7, -1, - - 5, 2, 3, 6, -1, - 5, 6, 3, 2, -1, -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid TRUE - texCoordIndex [] - } - } - ] -} + 5, 9, 10, 6, -1, + 5, 6, 10, 9, -1, -DEF plafondboven Transform { - children [ - Shape { -appearance Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 1 1 1 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - 0.14 5.30 -0.14, - 5.54 5.30 -0.14, - 5.54 5.30 -8.86, - 3.19 5.30 -8.86, - - 5.54 5.30 -2.36, #-4 - 5.54 5.30 -4.36, - 4.42 5.30 -4.36, - 4.42 5.30 -2.36, - - 3.19 5.30 -6.40, - 0.14 5.30 -6.40, - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - 0, 1, 4, 7, -1, - 0, 7, 4, 1, -1, - - 0, 7, 6, 8, 9, -1, - 0, 9, 8, 6, 7, -1, - - 5, 2, 3, 8, 6, -1, - 5, 6, 8, 3, 2, -1, -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid TRUE - texCoordIndex [] - } - } - ] -} + 21, 25, 26, 22, -1, + 21, 22, 26, 25, -1, + 7, 6, 2, -1, + 7, 2, 6, -1, + 23, 22, 18, -1, + 23, 18, 22, -1, -DEF vulstukvoortrap Transform { - children [ - Shape { -appearance DEF wandkleur Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 1 0.9 0.7 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} + 6, 10, 11, 3, 2, -1, + 6, 2, 3, 11, 10, -1, + 22, 26, 18, -1, + 22, 18, 26, -1, - geometry IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - 4.42 5.3 -2.36, #0 - 4.42 5.3 -3.36, - 4.42 5.4 -3.36, - 4.42 5.4 -2.36, #3 - - 5.4 5.3 -2.36, #4 - 5.4 5.4 -2.36, - - 5.4 5.3 -4.36, #6 - 5.4 5.4 -4.36, - 4.42 5.3 -4.36, #8 - 4.42 5.4 -4.36, - - - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - 0, 1, 2, 3, -1, - 0, 3, 2, 1, -1, - 0, 3, 5, 4, -1, - 9, 8, 6, 7, -1, - -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid FALSE - texCoordIndex [] - } - } - -] -} + 26, 27, 19, -1, + 26, 19, 27, -1, -# ballustrade.wrl + 26, 19, 18, -1, + 26, 18, 19, -1, + 0, 1, 17, 16, -1, + 0, 16, 17, 1, -1, + 1, 2, 18, 17, -1, + 1, 17, 18, 2, -1, -Transform { -children[ + 3, 0, 16, 19, -1, + 3, 19, 16, 0, -1, -DEF spijlen Group { -children [ -Transform{ -children [ -DEF spijl Shape { -appearance DEF kozijn Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.95 0.95 0.9 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} -geometry Cylinder { - bottom FALSE - height 0.8 - radius 0.015 - side TRUE - top FALSE - } -} -] -translation -0.025 0.4 0.05 -} + 2, 7, 23, 18, -1, + 2, 18, 23, 7, -1, -Transform{ -children USE spijl -translation -0.025 0.4 0.15 -} -Transform{ -children USE spijl -translation -0.025 0.4 0.25 -} -Transform{ -children USE spijl -translation -0.025 0.4 0.35 -} -Transform{ -children USE spijl -translation -0.025 0.4 0.45 -} -Transform{ -children USE spijl -translation -0.025 0.4 0.55 -} -Transform{ -children USE spijl -translation -0.025 0.4 0.65 -} -Transform{ -children USE spijl -translation -0.025 0.4 0.75 -} -Transform{ -children USE spijl -translation -0.025 0.4 0.85 -} -Transform{ -children USE spijl -translation -0.025 0.4 0.95 -} + 7, 6, 22, 23, -1, + 7, 23, 22, 6, -1, -] -}#spijlengroup + 5, 6, 22, 21, -1, + 5, 21, 22, 6, -1, -Transform{ -translation 0 0 1 -rotation 0 1 0 1.5707963 -children USE spijlen -} + 5, 4, 20, 21, -1, + 5, 21, 20, 4, -1, -Transform{ -children [ -Shape { -appearance USE kozijn -geometry Box { size 0.05 0.03 1.05 } -} -] -translation -0.025 0.815 0.525 -} + 4, 3, 19, 20, -1, + 4, 20, 19, 3, -1, -Transform{ -children [ -Shape { -appearance USE kozijn -geometry Box { size 1 0.03 0.05 } -} -] -translation 0.5 0.815 1.025 -} + 9, 8, 24, 25, -1, + 9, 25, 24, 8, -1, + 8, 11, 27, 24, -1, + 8, 24, 27, 11, -1, -] -translation 4.42 5.4 -3.36 -} + 10, 11, 27, 26, -1, + 10, 26, 27, 11, -1, -# /ballustrade.wrl + 9, 10, 26, 25, -1, + 9, 25, 26, 10, -1, -# binmuur.wrl + 12, 13, 29, 28, -1, + 12, 28, 29, 13, -1, + 12, 15, 31, 28, -1, + 12, 28, 31, 15, -1, + 14, 15, 31, 30, -1, + 14, 30, 31, 15, -1, + 13, 14, 30, 29, -1, + 13, 29, 30, 14, -1, -Transform { - children [ - Shape { -appearance Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 1 0.9 0.7 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - 0.28 0 -0.28, #0 linkerbenedenhoek voorgevel - 5.40 0 -0.28, - 5.40 5.40 -0.28, - 0.28 5.40 -0.28, #3 linkerbovenhoek voorgevel - - 3.19 0 -0.28, #4 voordeur - 4.42 0 -0.28, - 4.42 2.30 -0.28, - 3.19 2.30 -0.28, #7 voordeur - - 4.84 1.60 -0.28, #toiletraam-8 - 5.04 1.60 -0.28, - 5.04 2.30 -0.28, - 4.84 2.30 -0.28, - - 2.60 0.90 -0.28, #keukenraam-12 - 2.60 2.30 -0.28, - 0.60 2.30 -0.28, - 0.60 0.90 -0.28, - - 0.60 3.60 -0.28, #bovenraam-16 - 1.50 3.60 -0.28, - 1.50 5.0 -0.28, - 4.42 5.0 -0.28, - 4.42 5.40 -0.28, - 0.60 5.40 -0.28, - - 0.28 8.55 -3.15, #linkergevel-22 - 0.28 2.70 -8.72, - 0.28 0 -8.72, - - 5.40 8.55 -3.15, #rechtergevel-25 - 5.40 5.40 -6.30, - 5.40 5.40 -8.72, - 5.40 0 -8.72, - - 2.25 0 -8.72, #achtergevel-29 - 2.25 0.6 -8.72, - 4.8 0.6 -8.72, - 4.8 5.40 -8.72, - 1.2 0 -8.72, - 1.2 2.70 -8.72, - - - 3.19 0 -0.14, #diepte van de voordeur-35 - 4.42 0 -0.14, - 4.42 2.30 -0.14, - 3.19 2.30 -0.14, #diepte van de voordeur-38 - - 2.60 0.90 -0.14, # diepte van het keukenraam-39 - 2.60 2.30 -0.14, - 0.60 2.30 -0.14, - 0.60 0.90 -0.14, - - 4.84 1.60 -0.14, #diepte van het toiletraam-43 - 5.04 1.60 -0.14, - 5.04 2.30 -0.14, - 4.84 2.30 -0.14, - - 0.60 3.60 -0.14, #diepte van het bovenraam-47 - 1.50 3.60 -0.14, - 1.50 5.0 -0.14, - 4.42 5.0 -0.14, - 4.42 5.40 -0.14, - 0.60 5.40 -0.14, #52 - - 2.25 0 -8.86, #diepte van de achtergevel-53 - 2.25 0.6 -8.86, - 4.8 0.6 -8.86, - 4.8 5.40 -8.86, - 1.2 0 -8.86, - 1.2 2.70 -8.86, #58 - - 0.28 5.40 0, #59 hoekpunt voor dakvorm zolder - 5.40 5.40 0, - 0.28 5.40 -6.30, #61 - 0.28 2.70 -9.0, #62 hoekpunt voor dakvorm 1e verdieping - - 0.14 5.40 0, #63 extra punten voor segmentering - 5.54 5.40 0, - 0.14 5.40 -6.30, - 5.54 5.40 -6.3, #66 - 5.54 8.55 -3.15, #rechtergevel-67 - 0.14 8.55 -3.15, #linkergevel-68 - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - - 59, 22, 61, -1, - 60, 25, 26, -1, - - 59, 63, 68, 22, -1, - 68, 22, 61, 65, -1, - - 60, 64, 67, 25, -1, - 25, 67, 66, 26, -1, - - - -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid FALSE - texCoordIndex [] - } - } - ] -} -# /binmuur.wrl + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid TRUE + texCoordIndex [] + } + } + ] + } -# buitmuur.wrl + #schoorsteen + Transform { + children [ + Shape { + appearance Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.1 0.1 0.1 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0.3 0.3 0.3 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + 4.8 8 -2.6, + 5.3 8 -2.6, + 5.3 8.4 -3.0, + 4.8 8.4 -3.0, + 4.9 9.4 -2.65, + 5.2 9.4 -2.65, + 5.2 9.4 -2.95, + 4.9 9.4 -2.95, ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + 0, 1, 5, 4, -1, + 0, 4, 5, 1, -1, -Transform { - children [ - Shape { -appearance DEF steen Appearance { - material Material { - ambientIntensity 0.2 - diffuseColor 0.8 0.4 0.3 - emissiveColor 0 0 0 - shininess 0.1 - specularColor 0 0 0 - transparency 0 -} texture NULL - textureTransform NULL -} - geometry IndexedFaceSet { - color NULL - coord Coordinate { #default NULL - point [ - 0 0 0, #linkerbenedenhoek voorgevel - 5.68 0 0, - 5.68 5.40 0, - 0 5.40 0, #linkerbovenhoek voorgevel - - 3.19 0 0, #voordeur - 4.42 0 0, - 4.42 2.30 0, - 3.19 2.30 0, #voordeur - - 4.84 1.60 0, #toiletraam-8 - 5.04 1.60 0, - 5.04 2.30 0, - 4.84 2.30 0, - - 2.60 0.90 0, #keukenraam-12 - 2.60 2.30 0, - 0.60 2.30 0, - 0.60 0.90 0, - - 0.60 3.60 0, #bovenraam-16 - 1.50 3.60 0, - 1.50 5.0 0, - 4.42 5.0 0, - 4.42 5.40 0, - 0.60 5.40 0, - - 0 8.555 -3.15, #linkergevel-22 - 0 2.7 -9.0, - 0 0 -9.0, - - 5.68 8.555 -3.15, #rechtergevel-25 - 5.68 5.40 -6.3, - 5.68 5.40 -9, - 5.68 0 -9.0, - - 2.25 0 -9.0, #achtergevel-29 - 2.25 0.6 -9.0, - 4.8 0.6 -9.0, - 4.8 5.40 -9.0, - 1.2 0 -9.0, - 1.2 2.7 -9, - - - 3.19 0 -0.14, #diepte van de voordeur-35 - 4.42 0 -0.14, - 4.42 2.30 -0.14, - 3.19 2.30 -0.14, #diepte van de voordeur-38 - - 2.60 0.90 -0.14, # diepte van het keukenraam-39 - 2.60 2.30 -0.14, - 0.60 2.30 -0.14, - 0.60 0.90 -0.14, - - 4.84 1.60 -0.14, #diepte van het toiletraam-43 - 5.04 1.60 -0.14, - 5.04 2.30 -0.14, - 4.84 2.30 -0.14, - - 0.60 3.60 -0.14, #diepte van het bovenraam-47 - 1.50 3.60 -0.14, - 1.50 5.0 -0.14, - 4.42 5.0 -0.14, - 4.42 5.40 -0.14, - 0.60 5.40 -0.14, #52 - - 2.25 0 -8.86, #diepte van de achtergevel-53 - 2.25 0.6 -8.86, - 4.8 0.6 -8.86, - 4.8 5.40 -8.86, - 1.2 0 -8.86, - 1.2 2.7 -8.86, #58 - - 0.14 5.40 0, #59 extra punten voor segmentering - 5.54 5.40 0, - 0.14 5.40 -6.30, - 5.54 5.40 -6.3, #62 - 5.54 8.55 -3.15, #rechtergevel-63 - 0.14 8.55 -3.15, #linkergevel-64 - 0 5.4 -6.3, - ] - } - normal NULL - texCoord NULL - ccw TRUE - colorIndex [] - colorPerVertex TRUE - convex TRUE - coordIndex [ - 3, 22, 65, -1, - 2, 26, 25, -1, - - 3, 59, 64, 22, -1, - 61, 65, 22, 64, -1, - - 60, 2, 25, 63, -1, - 63, 25, 26, 62, -1, - - -] #default [] - creaseAngle 0 - normalIndex [] - normalPerVertex TRUE - solid FALSE - texCoordIndex [] - } - } - ] -} + 1, 2, 6, 5, -1, + 1, 5, 6, 2, -1, + 2, 3, 7, 6, -1, + 2, 6, 7, 3, -1, + 0, 3, 7, 4, -1, + 0, 4, 7, 3, -1, -# /buitmuur.wrl + 4, 5, 6, 7, -1, + 4, 7, 6, 5, -1, -# /zolder/zolder.wrl -DEF tijd2 TimeSensor { - cycleInterval 4 - enabled TRUE - loop FALSE - startTime 0 - stopTime 0 -} + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid TRUE + texCoordIndex [] + } + } + ] + } -DEF plaats2 PositionInterpolator { - key [0, 1] - keyValue [0 0 0 ,6 0 0] -} -DEF tijd2a TimeSensor { - cycleInterval 4 - enabled TRUE - loop FALSE - startTime 0 - stopTime 0 -} -DEF plaats2a PositionInterpolator { - key [0, 1] - keyValue [6 0 0 ,0 0 0] -} -] -}#zolder + # /dak/dak.wrl -DEF tijd3 TimeSensor { - cycleInterval 4 - enabled TRUE - loop FALSE - startTime 0 - stopTime 0 -} + Transform { + children[ + + + Transform{ + children[ + + Shape { + appearance USE groen + geometry USE pijl + } + + ] + rotation 0 1 0 3.1415927 + } + + DEF schuifdak TouchSensor {} + + ] + translation 0.15 6 0.3 + } + + + Transform { + children[ + + Shape { + appearance USE rood + geometry USE pijl + } + + DEF schuifdak2 TouchSensor {} + ] + translation 5.48 6 0.3 + } + + DEF tijd1 TimeSensor { + cycleInterval 4 + enabled TRUE + loop FALSE + startTime 0 + stopTime 0 + } + + DEF plaats1 PositionInterpolator { + key [0, 1] + keyValue [0 0 0 ,6 0 0] + } + + DEF tijd1a TimeSensor { + cycleInterval 4 + enabled TRUE + loop FALSE + startTime 0 + stopTime 0 + } + + DEF plaats1a PositionInterpolator { + key [0, 1] + keyValue [6 0 0 ,0 0 0] + } + + + + ] + }#dak + + # zolder/zolder.wrl + + + + Viewpoint { + fieldOfView 1 + jump TRUE + orientation 1 0 0 0 + position 2.5 7 -3.15 + + description "op zolder" + } + + #kleine platte dakje + + Transform { + children [ + Shape { + appearance DEF appdak Appearance { + material Material { + ambientIntensity 0 + diffuseColor 0.2 0.2 0.2 + emissiveColor 0 0 0 + shininess 0 + specularColor 0 0 0 + transparency 0 + } + + texture ImageTexture { + url [""] + repeatS TRUE + repeatT TRUE + } + } + geometry Box { size 2.6 0.04 2.74 } + } + ] + translation 4.39 5.40 -7.67 + } + + + DEF zoldervloer Transform { + children [ + Shape { + appearance Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 1 0.5 0.3 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + 0.14 5.40 0, + 5.54 5.40 0, + 5.54 5.40 -6.30, + 0.14 5.40 -6.30, + + 5.54 5.40 -2.36, #-4 + 5.54 5.40 -4.36, + 4.42 5.40 -4.36, + 4.42 5.40 -2.36, + + + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + 0, 1, 4, 7, -1, + 0, 7, 4, 1, -1, + + 0, 7, 6, 3, -1, + 0, 3, 6, 7, -1, + + 5, 2, 3, 6, -1, + 5, 6, 3, 2, -1, + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid TRUE + texCoordIndex [] + } + } + ] + } + + DEF plafondboven Transform { + children [ + Shape { + appearance Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 1 1 1 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + 0.14 5.30 -0.14, + 5.54 5.30 -0.14, + 5.54 5.30 -8.86, + 3.19 5.30 -8.86, + + 5.54 5.30 -2.36, #-4 + 5.54 5.30 -4.36, + 4.42 5.30 -4.36, + 4.42 5.30 -2.36, + + 3.19 5.30 -6.40, + 0.14 5.30 -6.40, + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + 0, 1, 4, 7, -1, + 0, 7, 4, 1, -1, + + 0, 7, 6, 8, 9, -1, + 0, 9, 8, 6, 7, -1, + + 5, 2, 3, 8, 6, -1, + 5, 6, 8, 3, 2, -1, + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid TRUE + texCoordIndex [] + } + } + ] + } + + + + DEF vulstukvoortrap Transform { + children [ + Shape { + appearance DEF wandkleur Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 1 0.9 0.7 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + + + geometry IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + 4.42 5.3 -2.36, #0 + 4.42 5.3 -3.36, + 4.42 5.4 -3.36, + 4.42 5.4 -2.36, #3 + + 5.4 5.3 -2.36, #4 + 5.4 5.4 -2.36, + + 5.4 5.3 -4.36, #6 + 5.4 5.4 -4.36, + 4.42 5.3 -4.36, #8 + 4.42 5.4 -4.36, + + + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + 0, 1, 2, 3, -1, + 0, 3, 2, 1, -1, + 0, 3, 5, 4, -1, + 9, 8, 6, 7, -1, + + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid FALSE + texCoordIndex [] + } + } + + ] + } + + # ballustrade.wrl + + + + Transform { + children[ + + DEF spijlen Group { + children [ + Transform{ + children [ + DEF spijl Shape { + appearance DEF kozijn Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.95 0.95 0.9 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry Cylinder { + bottom FALSE + height 0.8 + radius 0.015 + side TRUE + top FALSE + } + } + ] + translation -0.025 0.4 0.05 + } + + Transform{ + children USE spijl + translation -0.025 0.4 0.15 + } + Transform{ + children USE spijl + translation -0.025 0.4 0.25 + } + Transform{ + children USE spijl + translation -0.025 0.4 0.35 + } + Transform{ + children USE spijl + translation -0.025 0.4 0.45 + } + Transform{ + children USE spijl + translation -0.025 0.4 0.55 + } + Transform{ + children USE spijl + translation -0.025 0.4 0.65 + } + Transform{ + children USE spijl + translation -0.025 0.4 0.75 + } + Transform{ + children USE spijl + translation -0.025 0.4 0.85 + } + Transform{ + children USE spijl + translation -0.025 0.4 0.95 + } + + ] + }#spijlengroup + + Transform{ + translation 0 0 1 + rotation 0 1 0 1.5707963 + children USE spijlen + } + + Transform{ + children [ + Shape { + appearance USE kozijn + geometry Box { size 0.05 0.03 1.05 } + } + ] + translation -0.025 0.815 0.525 + } + + Transform{ + children [ + Shape { + appearance USE kozijn + geometry Box { size 1 0.03 0.05 } + } + ] + translation 0.5 0.815 1.025 + } + + + ] + translation 4.42 5.4 -3.36 + } + + # /ballustrade.wrl + + # binmuur.wrl + + + + + Transform { + children [ + Shape { + appearance Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 1 0.9 0.7 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + 0.28 0 -0.28, #0 linkerbenedenhoek voorgevel + 5.40 0 -0.28, + 5.40 5.40 -0.28, + 0.28 5.40 -0.28, #3 linkerbovenhoek voorgevel + + 3.19 0 -0.28, #4 voordeur + 4.42 0 -0.28, + 4.42 2.30 -0.28, + 3.19 2.30 -0.28, #7 voordeur + + 4.84 1.60 -0.28, #toiletraam-8 + 5.04 1.60 -0.28, + 5.04 2.30 -0.28, + 4.84 2.30 -0.28, + + 2.60 0.90 -0.28, #keukenraam-12 + 2.60 2.30 -0.28, + 0.60 2.30 -0.28, + 0.60 0.90 -0.28, + + 0.60 3.60 -0.28, #bovenraam-16 + 1.50 3.60 -0.28, + 1.50 5.0 -0.28, + 4.42 5.0 -0.28, + 4.42 5.40 -0.28, + 0.60 5.40 -0.28, + + 0.28 8.55 -3.15, #linkergevel-22 + 0.28 2.70 -8.72, + 0.28 0 -8.72, + + 5.40 8.55 -3.15, #rechtergevel-25 + 5.40 5.40 -6.30, + 5.40 5.40 -8.72, + 5.40 0 -8.72, + + 2.25 0 -8.72, #achtergevel-29 + 2.25 0.6 -8.72, + 4.8 0.6 -8.72, + 4.8 5.40 -8.72, + 1.2 0 -8.72, + 1.2 2.70 -8.72, + + + 3.19 0 -0.14, #diepte van de voordeur-35 + 4.42 0 -0.14, + 4.42 2.30 -0.14, + 3.19 2.30 -0.14, #diepte van de voordeur-38 + + 2.60 0.90 -0.14, # diepte van het keukenraam-39 + 2.60 2.30 -0.14, + 0.60 2.30 -0.14, + 0.60 0.90 -0.14, + + 4.84 1.60 -0.14, #diepte van het toiletraam-43 + 5.04 1.60 -0.14, + 5.04 2.30 -0.14, + 4.84 2.30 -0.14, + + 0.60 3.60 -0.14, #diepte van het bovenraam-47 + 1.50 3.60 -0.14, + 1.50 5.0 -0.14, + 4.42 5.0 -0.14, + 4.42 5.40 -0.14, + 0.60 5.40 -0.14, #52 + + 2.25 0 -8.86, #diepte van de achtergevel-53 + 2.25 0.6 -8.86, + 4.8 0.6 -8.86, + 4.8 5.40 -8.86, + 1.2 0 -8.86, + 1.2 2.70 -8.86, #58 + + 0.28 5.40 0, #59 hoekpunt voor dakvorm zolder + 5.40 5.40 0, + 0.28 5.40 -6.30, #61 + 0.28 2.70 -9.0, #62 hoekpunt voor dakvorm 1e verdieping + + 0.14 5.40 0, #63 extra punten voor segmentering + 5.54 5.40 0, + 0.14 5.40 -6.30, + 5.54 5.40 -6.3, #66 + 5.54 8.55 -3.15, #rechtergevel-67 + 0.14 8.55 -3.15, #linkergevel-68 + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + + 59, 22, 61, -1, + 60, 25, 26, -1, + + 59, 63, 68, 22, -1, + 68, 22, 61, 65, -1, + + 60, 64, 67, 25, -1, + 25, 67, 66, 26, -1, + + + + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid FALSE + texCoordIndex [] + } + } + ] + } + + + + # /binmuur.wrl + + # buitmuur.wrl + + + + + Transform { + children [ + Shape { + appearance DEF steen Appearance { + material Material { + ambientIntensity 0.2 + diffuseColor 0.8 0.4 0.3 + emissiveColor 0 0 0 + shininess 0.1 + specularColor 0 0 0 + transparency 0 + } texture NULL + textureTransform NULL + } + geometry IndexedFaceSet { + color NULL + coord Coordinate { #default NULL + point [ + 0 0 0, #linkerbenedenhoek voorgevel + 5.68 0 0, + 5.68 5.40 0, + 0 5.40 0, #linkerbovenhoek voorgevel + + 3.19 0 0, #voordeur + 4.42 0 0, + 4.42 2.30 0, + 3.19 2.30 0, #voordeur + + 4.84 1.60 0, #toiletraam-8 + 5.04 1.60 0, + 5.04 2.30 0, + 4.84 2.30 0, + + 2.60 0.90 0, #keukenraam-12 + 2.60 2.30 0, + 0.60 2.30 0, + 0.60 0.90 0, + + 0.60 3.60 0, #bovenraam-16 + 1.50 3.60 0, + 1.50 5.0 0, + 4.42 5.0 0, + 4.42 5.40 0, + 0.60 5.40 0, + + 0 8.555 -3.15, #linkergevel-22 + 0 2.7 -9.0, + 0 0 -9.0, + + 5.68 8.555 -3.15, #rechtergevel-25 + 5.68 5.40 -6.3, + 5.68 5.40 -9, + 5.68 0 -9.0, + + 2.25 0 -9.0, #achtergevel-29 + 2.25 0.6 -9.0, + 4.8 0.6 -9.0, + 4.8 5.40 -9.0, + 1.2 0 -9.0, + 1.2 2.7 -9, + + + 3.19 0 -0.14, #diepte van de voordeur-35 + 4.42 0 -0.14, + 4.42 2.30 -0.14, + 3.19 2.30 -0.14, #diepte van de voordeur-38 + + 2.60 0.90 -0.14, # diepte van het keukenraam-39 + 2.60 2.30 -0.14, + 0.60 2.30 -0.14, + 0.60 0.90 -0.14, + + 4.84 1.60 -0.14, #diepte van het toiletraam-43 + 5.04 1.60 -0.14, + 5.04 2.30 -0.14, + 4.84 2.30 -0.14, + + 0.60 3.60 -0.14, #diepte van het bovenraam-47 + 1.50 3.60 -0.14, + 1.50 5.0 -0.14, + 4.42 5.0 -0.14, + 4.42 5.40 -0.14, + 0.60 5.40 -0.14, #52 + + 2.25 0 -8.86, #diepte van de achtergevel-53 + 2.25 0.6 -8.86, + 4.8 0.6 -8.86, + 4.8 5.40 -8.86, + 1.2 0 -8.86, + 1.2 2.7 -8.86, #58 + + 0.14 5.40 0, #59 extra punten voor segmentering + 5.54 5.40 0, + 0.14 5.40 -6.30, + 5.54 5.40 -6.3, #62 + 5.54 8.55 -3.15, #rechtergevel-63 + 0.14 8.55 -3.15, #linkergevel-64 + 0 5.4 -6.3, + ] + } + normal NULL + texCoord NULL + ccw TRUE + colorIndex [] + colorPerVertex TRUE + convex TRUE + coordIndex [ + 3, 22, 65, -1, + 2, 26, 25, -1, + + 3, 59, 64, 22, -1, + 61, 65, 22, 64, -1, + + 60, 2, 25, 63, -1, + 63, 25, 26, 62, -1, + + + ] #default [] + creaseAngle 0 + normalIndex [] + normalPerVertex TRUE + solid FALSE + texCoordIndex [] + } + } + ] + } + + + + # /buitmuur.wrl + + # /zolder/zolder.wrl + + DEF tijd2 TimeSensor { + cycleInterval 4 + enabled TRUE + loop FALSE + startTime 0 + stopTime 0 + } + + DEF plaats2 PositionInterpolator { + key [0, 1] + keyValue [0 0 0 ,6 0 0] + } + + DEF tijd2a TimeSensor { + cycleInterval 4 + enabled TRUE + loop FALSE + startTime 0 + stopTime 0 + } + + DEF plaats2a PositionInterpolator { + key [0, 1] + keyValue [6 0 0 ,0 0 0] + } + + + + ] + }#zolder + + DEF tijd3 TimeSensor { + cycleInterval 4 + enabled TRUE + loop FALSE + startTime 0 + stopTime 0 + } -DEF plaats3 PositionInterpolator { - key [0, 1] - keyValue [0 0 0 ,6 0 0] -} + DEF plaats3 PositionInterpolator { + key [0, 1] + keyValue [0 0 0 ,6 0 0] + } -DEF tijd3a TimeSensor { - cycleInterval 4 - enabled TRUE - loop FALSE - startTime 0 - stopTime 0 -} + DEF tijd3a TimeSensor { + cycleInterval 4 + enabled TRUE + loop FALSE + startTime 0 + stopTime 0 + } -DEF plaats3a PositionInterpolator { - key [0, 1] - keyValue [6 0 0 ,0 0 0] -} + DEF plaats3a PositionInterpolator { + key [0, 1] + keyValue [6 0 0 ,0 0 0] + } -] -}#boven + ] + }#boven -] + ] } -#ROUTE schuifdak.touchTime TO tijd1.startTime -#ROUTE tijd1.fraction_changed TO plaats1.set_fraction -#ROUTE plaats1.value_changed TO dak.translation +ROUTE schuifdak.touchTime TO tijd1.startTime +ROUTE tijd1.fraction_changed TO plaats1.set_fraction +ROUTE plaats1.value_changed TO dak.translation -#ROUTE schuifzolder.touchTime TO tijd2.startTime -#ROUTE tijd2.fraction_changed TO plaats2.set_fraction -#ROUTE plaats2.value_changed TO zolder.translation +ROUTE schuifzolder.touchTime TO tijd2.startTime +ROUTE tijd2.fraction_changed TO plaats2.set_fraction +ROUTE plaats2.value_changed TO zolder.translation -#ROUTE schuifboven.touchTime TO tijd3.startTime -#ROUTE tijd3.fraction_changed TO plaats3.set_fraction -#ROUTE plaats3.value_changed TO boven.translation +ROUTE schuifboven.touchTime TO tijd3.startTime +ROUTE tijd3.fraction_changed TO plaats3.set_fraction +ROUTE plaats3.value_changed TO boven.translation -#ROUTE schuifdak2.touchTime TO tijd1a.startTime -#ROUTE tijd1a.fraction_changed TO plaats1a.set_fraction -#ROUTE plaats1a.value_changed TO dak.translation +ROUTE schuifdak2.touchTime TO tijd1a.startTime +ROUTE tijd1a.fraction_changed TO plaats1a.set_fraction +ROUTE plaats1a.value_changed TO dak.translation -#ROUTE schuifzolder2.touchTime TO tijd2a.startTime -#ROUTE tijd2a.fraction_changed TO plaats2a.set_fraction -#ROUTE plaats2a.value_changed TO zolder.translation +ROUTE schuifzolder2.touchTime TO tijd2a.startTime +ROUTE tijd2a.fraction_changed TO plaats2a.set_fraction +ROUTE plaats2a.value_changed TO zolder.translation -#ROUTE schuifboven2.touchTime TO tijd3a.startTime -#ROUTE tijd3a.fraction_changed TO plaats3a.set_fraction -#ROUTE plaats3a.value_changed TO boven.translation +ROUTE schuifboven2.touchTime TO tijd3a.startTime +ROUTE tijd3a.fraction_changed TO plaats3a.set_fraction +ROUTE plaats3a.value_changed TO boven.translation diff --git a/examples/webgl_loader_vrml.html b/examples/webgl_loader_vrml.html index b6d2292530eec65bdddd27e2c32084002cc01904..00ab8ada08903b324b708f228b849c4322e5484c 100644 --- a/examples/webgl_loader_vrml.html +++ b/examples/webgl_loader_vrml.html @@ -1,129 +1,214 @@ - - three.js webgl - loaders - vrml loader - - - + + + + +
+ three.js / VrmlParser - + vrml format loader test using VrmlParser - +
+
+

Viewpoints from the VRML file

+
+ + + + + + + + + + + + - - - - - - - - - + - +