From 2fd6db5f46208a5aa8fa58d090f795e5b7eb99bb Mon Sep 17 00:00:00 2001 From: Nivesh Rajbhandari Date: Tue, 29 May 2012 10:35:06 -0700 Subject: Sped up user-interaction by moving grid drawing into its own canvas so the layout code doesn't have to be run when modifying selected elements. Signed-off-by: Nivesh Rajbhandari --- js/helper-classes/3D/draw-utils.js | 7 +++---- js/helper-classes/3D/snap-manager.js | 5 ++--- 2 files changed, 5 insertions(+), 7 deletions(-) (limited to 'js/helper-classes') diff --git a/js/helper-classes/3D/draw-utils.js b/js/helper-classes/3D/draw-utils.js index 871b832d..75aa308c 100755 --- a/js/helper-classes/3D/draw-utils.js +++ b/js/helper-classes/3D/draw-utils.js @@ -126,7 +126,7 @@ var DrawUtils = exports.DrawUtils = Montage.create(Component, { //initialize with current document this._eltArray = []; this._planesArray = []; - this.setDrawingSurfaceElement(stage.canvas); + this.setDrawingSurfaceElement(stage.gridCanvas); this.setSourceSpaceElement( this.application.ninja.currentDocument.model.documentRoot); this.setWorkingPlane( [0,0,1,0] ); @@ -307,7 +307,6 @@ var DrawUtils = exports.DrawUtils = Montage.create(Component, { } if(!changed) { - stage.layout.draw(); this.drawWorkingPlane(); this.draw3DCompass(); } @@ -631,8 +630,8 @@ var DrawUtils = exports.DrawUtils = Montage.create(Component, { if (!this.isDrawingGrid()) return; var saveContext = this.getDrawingSurfaceElement(); - //this.setDrawingSurfaceElement(window.stageManager.layoutCanvas); - this.setDrawingSurfaceElement(this.application.ninja.stage.layoutCanvas); + this.setDrawingSurfaceElement(this.application.ninja.stage.gridCanvas); + this.clear(); // 3 coordinate axes for the plane var zAxis = [this._workingPlane[0], this._workingPlane[1], this._workingPlane[2]]; diff --git a/js/helper-classes/3D/snap-manager.js b/js/helper-classes/3D/snap-manager.js index 069c6022..4dcda24a 100755 --- a/js/helper-classes/3D/snap-manager.js +++ b/js/helper-classes/3D/snap-manager.js @@ -21,8 +21,7 @@ var SnapManager = exports.SnapManager = Montage.create(Component, { /////////////////////////////////////////////////////////////////////// // Instance variables /////////////////////////////////////////////////////////////////////// - drawingCanvas: { value: null, writable: true}, - + // we keep a stack of working planes to facilitate working on other planes temporarily _workingPlaneStack : { value: [], writable: true }, @@ -2124,7 +2123,7 @@ var SnapManager = exports.SnapManager = Montage.create(Component, { if (hitRec) { var saveContext = drawUtils.getDrawingSurfaceElement(); - drawUtils.setDrawingSurfaceElement(this.drawingCanvas); + drawUtils.setDrawingSurfaceElement(this.application.ninja.stage.drawingCanvas); var context = drawUtils.getDrawingContext(); if (context) { -- cgit v1.2.3