Revision: 56402
http://sourceforge.net/p/brlcad/code/56402
Author: phoenixyjll
Date: 2013-08-01 04:15:39 +0000 (Thu, 01 Aug 2013)
Log Message:
-----------
It seems that J.invert() doesn't work (it cause brep arb8.brep intersect
ehy.brep 0 1 on csgbrep.g to fail). Use explicit pseudo-inverse.
Modified Paths:
--------------
brlcad/trunk/src/libbrep/intersect.cpp
Modified: brlcad/trunk/src/libbrep/intersect.cpp
===================================================================
--- brlcad/trunk/src/libbrep/intersect.cpp 2013-08-01 03:52:49 UTC (rev
56401)
+++ brlcad/trunk/src/libbrep/intersect.cpp 2013-08-01 04:15:39 UTC (rev
56402)
@@ -2002,11 +2002,17 @@
J[i][3] = -deriv_t[i];
F[i][0] = pointA[i] - pointB[i];
}
- if (!J.Invert(0.0)) {
+ ON_Matrix tranJ = J;
+ tranJ.Transpose();
+ ON_Matrix JotranJ;
+ JotranJ.Multiply(J, tranJ);
+ if (!JotranJ.Invert(0.0)) {
break;
}
+ ON_Matrix pinvJ;
+ pinvJ.Multiply(tranJ, JotranJ);
ON_Matrix Delta;
- Delta.Multiply(J, F);
+ Delta.Multiply(pinvJ, F);
u -= Delta[0][0];
v -= Delta[1][0];
s -= Delta[2][0];
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Get your SQL database under version control now!
Version control is standard for application code, but databases havent
caught up. So what steps can you take to put your SQL databases under
version control? Why should you start doing it? Read more to find out.
http://pubads.g.doubleclick.net/gampad/clk?id=49501711&iu=/4140/ostg.clktrk
_______________________________________________
BRL-CAD Source Commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/brlcad-commits