1 /** 2 * Copyright (C) 2009-2012 Klaus Reimer <k@ailis.de> 3 * See LICENSE.txt for licensing information 4 * 5 * @require threedee.js 6 * @require threedee/SceneNode.js 7 * @use threedee/rendering/RenderModel.js 8 */ 9 10 /** 11 * Constructs a new model node. 12 * 13 * @param {!threedee.Model} model 14 * The model 15 * 16 * @constructor 17 * @extends {threedee.SceneNode} 18 * @class 19 * A node which draws a model. 20 */ 21 22 threedee.ModelNode = function(model) 23 { 24 threedee.SceneNode.call(this); 25 this.model = new threedee.RenderModel(model); 26 }; 27 threedee.inherit(threedee.ModelNode, threedee.SceneNode); 28 29 /** 30 * The model. 31 * @private 32 * @type {!threedee.RenderModel} 33 */ 34 threedee.ModelNode.prototype.model; 35 36 /** 37 * @inheritDoc 38 * @param {!threedee.PolygonBuffer} buffer 39 * @param {!threedee.Matrix} transform 40 */ 41 threedee.ModelNode.prototype.render = function(buffer, transform) 42 { 43 buffer.addModel(this.model, transform); 44 threedee.SceneNode.prototype.render.call(this, buffer, transform); 45 }; 46