diff --git a/js/models/BasePlane.js b/js/models/BasePlane.js index 8ed76cbf97ace7ecccd0e46d19e9c8e7142c9580..f88fa498a3c3ef9a13045fda30a023c12789974b 100644 --- a/js/models/BasePlane.js +++ b/js/models/BasePlane.js @@ -24,22 +24,19 @@ BasePlane = Backbone.Model.extend({ //draw mesh this.set("mesh", this._makeBasePlaneMesh()); this.updateScale(options.scale); - this._showMesh();//do this once - }, - - updateScale: function(scale){ + var self = this; _.each(this.get("mesh"), function(mesh){ - mesh.scale.set(scale, scale, scale); + window.three.sceneAdd(mesh, self._checkIsHighlightable(mesh)); }); + window.three.render(); + }, - _showMesh: function(){ - var self = this; + updateScale: function(scale){ _.each(this.get("mesh"), function(mesh){ - window.three.sceneAdd(mesh, self._checkIsHighlightable(mesh)); + mesh.scale.set(scale, scale, scale); }); - window.three.render(); }, // _renderForCurrentScene: function(){ diff --git a/js/threeViews/Highlighter.js b/js/threeViews/Highlighter.js index e0f62b90d9a6fb1239ec1979f49d06a534f943b8..c53d76b1715f49e28bd44f53e711e42e6dfd5809 100644 --- a/js/threeViews/Highlighter.js +++ b/js/threeViews/Highlighter.js @@ -7,8 +7,9 @@ Highlighter = Backbone.View.extend({ mesh: null, highlightedObject: null, - commonInit: function(geometry){ + initialize: function(){ + var geometry = this._makeGeometry(); geometry.dynamic = true; this.mesh = new THREE.Mesh(geometry, new THREE.MeshBasicMaterial({ @@ -111,14 +112,14 @@ Highlighter = Backbone.View.extend({ OctaFaceHighlighter = Highlighter.extend({ - initialize: function(){ + _makeGeometry: function(){ var geometry = new THREE.Geometry(); //can't change size of faces or vertices buffers dynamically geometry.vertices = [new THREE.Vector3(0,0,0), new THREE.Vector3(0,0,0), new THREE.Vector3(0,0,0)]; geometry.faces = [new THREE.Face3(0,1,2)]; - this.commonInit(geometry); + return geometry; } }); @@ -129,14 +130,14 @@ OctaFaceHighlighter = Highlighter.extend({ CubeHighlighter = Highlighter.extend({ - initialize: function(){ + _makeGeometry: function(){ var geometry = new THREE.Geometry(); //can't change size of faces or vertices buffers dynamically geometry.vertices = [new THREE.Vector3(0,0,0), new THREE.Vector3(0,0,0), new THREE.Vector3(0,0,0), new THREE.Vector3(0,0,0)]; geometry.faces = [new THREE.Face3(0,1,2), new THREE.Face3(0,2,3)]; - this.commonInit(geometry); + return geometry; } }); \ No newline at end of file