aboutsummaryrefslogtreecommitdiff
path: root/js/tools/drawing-tool-base.js
diff options
context:
space:
mode:
authorValerio Virgillito2012-04-11 10:32:52 -0700
committerValerio Virgillito2012-04-11 10:32:52 -0700
commit9d1c919a4865ab1a2b0b0b9fc893a54b145c82c0 (patch)
tree9ebbe37bf22cb5280882a0ef5b95196fcf163251 /js/tools/drawing-tool-base.js
parentbd43ce383b050d03b0f92cc923c517febc66ca28 (diff)
parent36df4f454d64c7b43062835495425021ce955b05 (diff)
downloadninja-9d1c919a4865ab1a2b0b0b9fc893a54b145c82c0.tar.gz
Merge pull request #161 from mqg734/PerspectiveFix
IKNinja-812 - Perspective fix
Diffstat (limited to 'js/tools/drawing-tool-base.js')
-rwxr-xr-xjs/tools/drawing-tool-base.js9
1 files changed, 6 insertions, 3 deletions
diff --git a/js/tools/drawing-tool-base.js b/js/tools/drawing-tool-base.js
index 84602186..476dca66 100755
--- a/js/tools/drawing-tool-base.js
+++ b/js/tools/drawing-tool-base.js
@@ -227,7 +227,7 @@ exports.DrawingToolBase = Montage.create(Montage, {
227 //var planeMatInv = planeMat.inverse(); 227 //var planeMatInv = planeMat.inverse();
228 var planeMatInv = glmat4.inverse( planeMat, [] ); 228 var planeMatInv = glmat4.inverse( planeMat, [] );
229 //var midPt = this.unprojectPoints( s0, s1, planeMat, planeMatInv, s1Proj ); 229 //var midPt = this.unprojectPoints( s0, s1, planeMat, planeMatInv, s1Proj );
230 var midPt = this.unprojectPoints( s0, s1, planeMat, planeMatInv, true ); 230// var midPt = this.unprojectPoints( s0, s1, planeMat, planeMatInv, true );
231 231
232 // get the 4 points of the bounding box in 2D space 232 // get the 4 points of the bounding box in 2D space
233 p0 = MathUtils.transformPoint( s0, planeMatInv ); 233 p0 = MathUtils.transformPoint( s0, planeMatInv );
@@ -237,7 +237,7 @@ exports.DrawingToolBase = Montage.create(Montage, {
237 //midPt = s0.add(s1); 237 //midPt = s0.add(s1);
238 //midPt = midPt.multiply(0.5); 238 //midPt = midPt.multiply(0.5);
239 //midPt = MathUtils.makeDimension3(midPt); 239 //midPt = MathUtils.makeDimension3(midPt);
240 midPt = vec3.add(s0, s1, []); 240 var midPt = vec3.add(s0, s1, []);
241 midPt = vecUtils.vecScale( 3, midPt, 0.5 ); 241 midPt = vecUtils.vecScale( 3, midPt, 0.5 );
242 242
243 // the mid point is now relative to the center of the 3D space. To 243 // the mid point is now relative to the center of the 3D space. To
@@ -371,6 +371,9 @@ exports.DrawingToolBase = Montage.create(Montage, {
371 // determine if the geometry is going to be projected. If so a second projected rectangle is drawn 371 // determine if the geometry is going to be projected. If so a second projected rectangle is drawn
372 var isProjected = ((MathUtils.fpCmp(thePlane[2],1.0) !== 0) || (MathUtils.fpSign(thePlane[3]) !== 0)); 372 var isProjected = ((MathUtils.fpCmp(thePlane[2],1.0) !== 0) || (MathUtils.fpSign(thePlane[3]) !== 0));
373 373
374 // TODO - We no longer need to project drawing after perspective fix. Need to clean up this code.
375 // For now, just setting isProjected to false so rest of the drawing still works.
376 isProjected = false;
374 // get and draw the unprojected object points 377 // get and draw the unprojected object points
375 var projPtArr = []; 378 var projPtArr = [];
376 if (isProjected) 379 if (isProjected)
@@ -442,7 +445,7 @@ exports.DrawingToolBase = Montage.create(Montage, {
442 flatMat = divMat; 445 flatMat = divMat;
443 flatMatSafe = MathUtils.scientificToDecimal(flatMat, 10); 446 flatMatSafe = MathUtils.scientificToDecimal(flatMat, 10);
444 447
445 return "perspective(" + 1400 + ") matrix3d(" + flatMatSafe + ")"; 448 return "matrix3d(" + flatMatSafe + ")";
446 } 449 }
447 }, 450 },
448 451