diff options
Diffstat (limited to 'js/helper-classes/3D/snap-manager.js')
-rwxr-xr-x | js/helper-classes/3D/snap-manager.js | 20 |
1 files changed, 5 insertions, 15 deletions
diff --git a/js/helper-classes/3D/snap-manager.js b/js/helper-classes/3D/snap-manager.js index e3756f32..0157140f 100755 --- a/js/helper-classes/3D/snap-manager.js +++ b/js/helper-classes/3D/snap-manager.js | |||
@@ -481,10 +481,8 @@ var SnapManager = exports.SnapManager = Montage.create(Component, { | |||
481 | { | 481 | { |
482 | var snapRec = this._elementCache[i]; | 482 | var snapRec = this._elementCache[i]; |
483 | var elt = snapRec.getElement(); | 483 | var elt = snapRec.getElement(); |
484 | if (elt.elementModel) | 484 | elt.elementModel.isIn2DSnapCache = false; |
485 | elt.elementModel.isIn2DSnapCache = false; | 485 | |
486 | else | ||
487 | console.log( "element in the 2D cache does not have an elementModel" ); | ||
488 | } | 486 | } |
489 | 487 | ||
490 | this._elementCache = null; | 488 | this._elementCache = null; |
@@ -498,7 +496,7 @@ var SnapManager = exports.SnapManager = Montage.create(Component, { | |||
498 | this._elementCache = new Array; | 496 | this._elementCache = new Array; |
499 | 497 | ||
500 | // var stage = this.getStage(); | 498 | // var stage = this.getStage(); |
501 | var stage = this.application.ninja.currentSelectedContainer || this.getStage(); | 499 | var stage = this.application.ninja.currentDocument.model.domContainer || this.getStage(); |
502 | this.hLoadElementCache( stage, plane, 0 ); | 500 | this.hLoadElementCache( stage, plane, 0 ); |
503 | this._isCacheInvalid = false; | 501 | this._isCacheInvalid = false; |
504 | 502 | ||
@@ -541,10 +539,6 @@ var SnapManager = exports.SnapManager = Montage.create(Component, { | |||
541 | snapRec.init( elt ); | 539 | snapRec.init( elt ); |
542 | this._elementCache.push( snapRec ); | 540 | this._elementCache.push( snapRec ); |
543 | 541 | ||
544 | if (!elt.elementModel) | ||
545 | { | ||
546 | NJUtils.makeModelFromElement(elt); | ||
547 | } | ||
548 | elt.elementModel.isIn2DSnapCache = true; | 542 | elt.elementModel.isIn2DSnapCache = true; |
549 | } | 543 | } |
550 | else if (elt.elementModel) | 544 | else if (elt.elementModel) |
@@ -613,10 +607,6 @@ var SnapManager = exports.SnapManager = Montage.create(Component, { | |||
613 | snapRec.init( elt ); | 607 | snapRec.init( elt ); |
614 | this._elementCache.push( snapRec ); | 608 | this._elementCache.push( snapRec ); |
615 | 609 | ||
616 | if (!elt.elementModel) | ||
617 | { | ||
618 | NJUtils.makeModelFromElement(elt); | ||
619 | } | ||
620 | elt.elementModel.isIn2DSnapCache = true; | 610 | elt.elementModel.isIn2DSnapCache = true; |
621 | } | 611 | } |
622 | else if (elt.elementModel) | 612 | else if (elt.elementModel) |
@@ -997,7 +987,7 @@ var SnapManager = exports.SnapManager = Montage.create(Component, { | |||
997 | value: function( screenPt, hitRecs ) { | 987 | value: function( screenPt, hitRecs ) { |
998 | // start at the stage. | 988 | // start at the stage. |
999 | // var stage = this.getStage(); | 989 | // var stage = this.getStage(); |
1000 | var stage = this.application.ninja.currentSelectedContainer || this.getStage(); | 990 | var stage = this.application.ninja.currentDocument.model.domContainer || this.getStage(); |
1001 | 991 | ||
1002 | // the root should be the 'view' canvas, so the first matrix is the camera | 992 | // the root should be the 'view' canvas, so the first matrix is the camera |
1003 | viewUtils.setViewportObj( stage ); | 993 | viewUtils.setViewportObj( stage ); |
@@ -1019,7 +1009,7 @@ var SnapManager = exports.SnapManager = Montage.create(Component, { | |||
1019 | } | 1009 | } |
1020 | // hit test the current object | 1010 | // hit test the current object |
1021 | var hit; | 1011 | var hit; |
1022 | var snapToStage = ((depth === 0) && (elt === this.application.ninja.currentSelectedContainer) && (elt.nodeName === 'CANVAS')); | 1012 | var snapToStage = ((depth === 0) && (elt === this.application.ninja.currentDocument.model.domContainer) && (elt.nodeName === 'CANVAS')); |
1023 | if ((depth > 0) || snapToStage) // don't snap to the root unles we are working inside a canvas | 1013 | if ((depth > 0) || snapToStage) // don't snap to the root unles we are working inside a canvas |
1024 | { | 1014 | { |
1025 | // if the element is in the 2D cache snapping is done there | 1015 | // if the element is in the 2D cache snapping is done there |