From a13f3b1f5e12aed64c51c7978a3efce0bbc3e900 Mon Sep 17 00:00:00 2001
From: Amanda Ghassaei <amandaghassaei@gmail.com>
Date: Fri, 15 May 2015 16:05:34 -0400
Subject: [PATCH] update gik scale

---
 js/models/Lattice.js         | 5 +++++
 js/threeViews/Highlighter.js | 9 +++++++++
 2 files changed, 14 insertions(+)

diff --git a/js/models/Lattice.js b/js/models/Lattice.js
index 6a764060..3acecb4b 100644
--- a/js/models/Lattice.js
+++ b/js/models/Lattice.js
@@ -36,6 +36,7 @@ Lattice = Backbone.Model.extend({
 
         //bind events
         this.listenTo(this, "change:scale", this._scaleDidChange);
+        this.listenTo(this, "change:gikLength", this._gikLengthDidChange);
         this.listenTo(options.appState, "change:cellMode", this._updateForMode);
         this.listenTo(this, "change:partType", this._updatePartType);
         this.listenTo(this, "change:cellType change:connectionType", this._updateLatticeType);
@@ -369,6 +370,10 @@ Lattice = Backbone.Model.extend({
         dmaGlobals.three.render();
     },
 
+    _gikLengthDidChange: function(){
+        if (this.get("highlighter").updateGikLength) this.get("highlighter").updateGikLength(this.get("scale"));
+    },
+
     previewScaleChange: function(scale){
         this.get("basePlane").updateScale(scale);
     },
diff --git a/js/threeViews/Highlighter.js b/js/threeViews/Highlighter.js
index 2f448669..abbda29d 100644
--- a/js/threeViews/Highlighter.js
+++ b/js/threeViews/Highlighter.js
@@ -56,6 +56,7 @@ Highlighter = Backbone.View.extend({
         this.highlightedObject = null;
         this.index = null;
         this.direction = null;
+        this.position = null;
         this.hide();
     },
 
@@ -69,6 +70,7 @@ Highlighter = Backbone.View.extend({
 
         var highlightedPos = highlighted.myParent.calcHighlighterPosition(intersection.face, intersection.point);
         this.index = highlightedPos.index;
+        this.position = highlightedPos.position;
         if (!highlightedPos.direction) {//may be hovering over a face that we shouldn't highlight
             this.hide();
             return;
@@ -230,6 +232,13 @@ GIKHighlighter = Highlighter.extend({
             this.mesh.rotation.set(0, 0,0);
             this.mesh.translateX(-this.mesh.scale.x/2+this.mesh.scale.z/2);
         }
+    },
+
+    updateGikLength: function(scale){
+        this.updateScale(scale);
+        this._setPosition(this.position, this.direction);//position of center point
+        this._setRotation(this.direction, this.index);
+        dmaGlobals.three.render();
     }
 });
 
-- 
GitLab