aboutsummaryrefslogtreecommitdiff
path: root/js/controllers/elements
diff options
context:
space:
mode:
authorJose Antonio Marquez2012-05-01 15:27:58 -0700
committerJose Antonio Marquez2012-05-01 15:27:58 -0700
commitccb1b8e5762679ff752aa9d2d42fd9aab6c46b65 (patch)
tree28abd3a420b7aec7527a6ef46d061dc970e7d18f /js/controllers/elements
parent4ba680a7e9168d0f505a81e42a287dfbc54b4d7d (diff)
parente3fa4c7db57b63c5ac604c9420062de5d0fe413a (diff)
downloadninja-ccb1b8e5762679ff752aa9d2d42fd9aab6c46b65.tar.gz
Merge branch 'refs/heads/Ninja-Internal' into Document
Diffstat (limited to 'js/controllers/elements')
-rwxr-xr-xjs/controllers/elements/body-controller.js40
1 files changed, 40 insertions, 0 deletions
diff --git a/js/controllers/elements/body-controller.js b/js/controllers/elements/body-controller.js
index 839d0787..14aeae24 100755
--- a/js/controllers/elements/body-controller.js
+++ b/js/controllers/elements/body-controller.js
@@ -51,5 +51,45 @@ exports.BodyController = Montage.create(ElementController, {
51 return dist; 51 return dist;
52 } 52 }
53 } 53 }
54 },
55
56 getMatrix: {
57 value: function(el) {
58 if(el.elementModel && el.elementModel.props3D && el.elementModel.props3D.matrix3d)
59 {
60 return el.elementModel.props3D.matrix3d.slice(0);
61 }
62 else
63 {
64 var mat;
65
66 if (el)
67 {
68 mat = this.application.ninja.stylesController.getMatrixFromElement(el, true);
69 if (!mat) {
70 mat = Matrix.I(4);
71 }
72
73 var zoom = this.application.ninja.elementMediator.getProperty(el, "zoom");
74 if (zoom)
75 {
76 zoom = Number(zoom);
77 if (zoom != 1)
78 {
79 var zoomMat = Matrix.create( [
80 [ zoom, 0, 0, 0],
81 [ 0, zoom, 0, 0],
82 [ 0, 0, zoom, 0],
83 [ 0, 0, 0, 1]
84 ] );
85 glmat4.multiply( zoomMat, mat, mat );
86 }
87 }
88 }
89
90 el.elementModel.props3D.matrix3d = mat;
91 return mat;
92 }
93 }
54 } 94 }
55}); 95});