diff options
Diffstat (limited to 'js/tools/RotateStage3DTool.js')
-rwxr-xr-x | js/tools/RotateStage3DTool.js | 43 |
1 files changed, 22 insertions, 21 deletions
diff --git a/js/tools/RotateStage3DTool.js b/js/tools/RotateStage3DTool.js index 2f655333..3d890d13 100755 --- a/js/tools/RotateStage3DTool.js +++ b/js/tools/RotateStage3DTool.js | |||
@@ -1,24 +1,25 @@ | |||
1 | /* <copyright> | 1 | /* <copyright> |
2 | Copyright (c) 2012, Motorola Mobility, Inc | 2 | Copyright (c) 2012, Motorola Mobility LLC. |
3 | All Rights Reserved. | 3 | All Rights Reserved. |
4 | BSD License. | ||
5 | 4 | ||
6 | Redistribution and use in source and binary forms, with or without | 5 | Redistribution and use in source and binary forms, with or without |
7 | modification, are permitted provided that the following conditions are met: | 6 | modification, are permitted provided that the following conditions are met: |
8 | 7 | ||
9 | - Redistributions of source code must retain the above copyright notice, | 8 | * Redistributions of source code must retain the above copyright notice, |
10 | this list of conditions and the following disclaimer. | 9 | this list of conditions and the following disclaimer. |
11 | - Redistributions in binary form must reproduce the above copyright | 10 | |
12 | notice, this list of conditions and the following disclaimer in the | 11 | * Redistributions in binary form must reproduce the above copyright notice, |
13 | documentation and/or other materials provided with the distribution. | 12 | this list of conditions and the following disclaimer in the documentation |
14 | - Neither the name of Motorola Mobility nor the names of its contributors | 13 | and/or other materials provided with the distribution. |
15 | may be used to endorse or promote products derived from this software | 14 | |
16 | without specific prior written permission. | 15 | * Neither the name of Motorola Mobility LLC nor the names of its |
16 | contributors may be used to endorse or promote products derived from this | ||
17 | software without specific prior written permission. | ||
17 | 18 | ||
18 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" | 19 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" |
19 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | 20 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
20 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | 21 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
21 | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE | 22 | ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE |
22 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | 23 | LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |
23 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | 24 | CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |
24 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | 25 | SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS |
@@ -94,15 +95,15 @@ exports.RotateStage3DTool = Montage.create(Rotate3DToolBase, { | |||
94 | var eltCtr = viewUtils.getCenterOfProjection(); | 95 | var eltCtr = viewUtils.getCenterOfProjection(); |
95 | viewUtils.popViewportObj(); | 96 | viewUtils.popViewportObj(); |
96 | 97 | ||
97 | // cache the local to global and global to local matrices | 98 | // cache the local to global and global to local matrices |
98 | var l2gMat = viewUtils.getLocalToGlobalMatrix( elt ); | 99 | var l2gMat = viewUtils.getLocalToGlobalMatrix( elt ); |
99 | var g2lMat = glmat4.inverse( l2gMat, [] ); | 100 | var g2lMat = glmat4.inverse( l2gMat, [] ); |
100 | eltCtr = MathUtils.transformAndDivideHomogeneousPoint( eltCtr, l2gMat ); | 101 | eltCtr = MathUtils.transformAndDivideHomogeneousPoint( eltCtr, l2gMat ); |
101 | 102 | ||
102 | elt.elementModel.setProperty("mat", curMat); | 103 | elt.elementModel.setProperty("mat", curMat); |
103 | elt.elementModel.setProperty("matInv", curMatInv); | 104 | elt.elementModel.setProperty("matInv", curMatInv); |
104 | elt.elementModel.setProperty("ctr", eltCtr); | 105 | elt.elementModel.setProperty("ctr", eltCtr); |
105 | elt.elementModel.setProperty("l2g", l2gMat); | 106 | elt.elementModel.setProperty("l2g", l2gMat); |
106 | elt.elementModel.setProperty("g2l", g2lMat); | 107 | elt.elementModel.setProperty("g2l", g2lMat); |
107 | 108 | ||
108 | ElementsMediator.setMatrix(elt, curMat, false, "rotateStage3DTool"); | 109 | ElementsMediator.setMatrix(elt, curMat, false, "rotateStage3DTool"); |
@@ -172,11 +173,11 @@ exports.RotateStage3DTool = Montage.create(Rotate3DToolBase, { | |||
172 | iMat, false, "rotateStage3DTool"); | 173 | iMat, false, "rotateStage3DTool"); |
173 | this.application.ninja.currentDocument.model.documentRoot.elementModel.props3D.m_transformCtr = null; | 174 | this.application.ninja.currentDocument.model.documentRoot.elementModel.props3D.m_transformCtr = null; |
174 | 175 | ||
175 | // let the document and stage manager know about the zoom change | 176 | // let the document and stage manager know about the zoom change |
176 | stage._firstDraw = true; | 177 | stage._firstDraw = true; |
177 | this.application.ninja.documentBar.zoomFactor = 100; | 178 | this.application.ninja.documentBar.zoomFactor = 100; |
178 | this.application.ninja.currentDocument.model.views.design.iframe.style.zoom = 1.0; | 179 | this.application.ninja.currentDocument.model.views.design.iframe.style.zoom = 1.0; |
179 | stage._firstDraw = false; | 180 | stage._firstDraw = false; |
180 | 181 | ||
181 | viewUtils.clearStageTranslation(); | 182 | viewUtils.clearStageTranslation(); |
182 | stage.centerStage(); | 183 | stage.centerStage(); |
@@ -185,7 +186,7 @@ exports.RotateStage3DTool = Montage.create(Rotate3DToolBase, { | |||
185 | this.isDrawing = false; | 186 | this.isDrawing = false; |
186 | this.endDraw(event); | 187 | this.endDraw(event); |
187 | 188 | ||
188 | // this.UpdateSelection(true); | 189 | // this.UpdateSelection(true); |
189 | this.Configure(true); | 190 | this.Configure(true); |
190 | } | 191 | } |
191 | } | 192 | } |