From 50cecc79dc5978b3357343ace9b6f0e521a529c5 Mon Sep 17 00:00:00 2001 From: Amanda Ghassaei <amandaghassaei@gmail.com> Date: Thu, 28 May 2015 14:36:55 -0700 Subject: [PATCH] highlihgter and baseplane visibility --- js/models/BasePlane.js | 9 +++++++++ js/threeViews/Highlighter.js | 1 + 2 files changed, 10 insertions(+) diff --git a/js/models/BasePlane.js b/js/models/BasePlane.js index 2bec59ad..d561e29e 100644 --- a/js/models/BasePlane.js +++ b/js/models/BasePlane.js @@ -17,6 +17,7 @@ BasePlane = Backbone.Model.extend({ //bind events this.listenTo(this, "change:zIndex", this._renderZIndexChange); + this.listenTo(globals.appState, "change:basePlaneIsVisible", this._setVisibility); //draw mesh this.set("mesh", this._makeBasePlaneMesh()); @@ -26,6 +27,7 @@ BasePlane = Backbone.Model.extend({ globals.three.sceneAdd(mesh, self._checkIsHighlightable(mesh)); }); globals.three.render(); + this._setVisibility(); }, updateXYSeparation: function(xySep) {}, @@ -34,6 +36,13 @@ BasePlane = Backbone.Model.extend({ return new THREE.Quaternion().setFromAxisAngle(new THREE.Vector3(0,0,1), Math.PI); }, + _setVisibility: function(){ + _.each(this.get("mesh"), function(mesh){ + mesh.visible = globals.appState.get("basePlaneIsVisible"); + }); + globals.three.render(); + }, + /////////////////////////////////////////////////////////////////////////////////// //////////////////////HIGHLIGHTER FUNCTIONALITY//////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////// diff --git a/js/threeViews/Highlighter.js b/js/threeViews/Highlighter.js index efe36725..19c7ec33 100644 --- a/js/threeViews/Highlighter.js +++ b/js/threeViews/Highlighter.js @@ -40,6 +40,7 @@ Highlighter = Backbone.View.extend({ }, _setVisibility: function(visible, forceRender){ + visible = globals.appState.get("highlighterIsVisible") && visible; if (forceRender || this.isVisible() != visible){ this.mesh.visible = visible; globals.three.render(); -- GitLab