Commit in GeomConverter/src/org/lcsim/detector/tracker/silicon on MAIN
GaussianDistribution2D.java+11-91.1 -> 1.2
Add tolerance to check in constructor for perpendicular axes.

GeomConverter/src/org/lcsim/detector/tracker/silicon
GaussianDistribution2D.java 1.1 -> 1.2
diff -u -r1.1 -r1.2
--- GaussianDistribution2D.java	14 Oct 2007 06:13:10 -0000	1.1
+++ GaussianDistribution2D.java	11 Jan 2008 02:06:20 -0000	1.2
@@ -11,10 +11,10 @@
 
 import org.lcsim.detector.ITransform3D;
 import hep.physics.vec.Hep3Vector;
-import hep.physics.vec.BasicHep3Vector;
 import hep.physics.vec.VecOp;
 import org.apache.commons.math.MathException;
 import org.apache.commons.math.special.Erf;
+import org.lcsim.detector.solids.GeomOp3D;
 
 /**
  *
@@ -31,11 +31,19 @@
     public GaussianDistribution2D(double normalization, Hep3Vector mean, Hep3Vector major_axis, Hep3Vector minor_axis)
     {
 //        System.out.println("Constructing GaussianDistribution2D");
+//        
+//        System.out.println("normalization: "+normalization);
+//        System.out.println("mean: "+mean);
+//        System.out.println("major axis: "+major_axis);
+//        System.out.println("minor axis: "+minor_axis);
+//        
+//        System.out.println("VecOp.dot(major_axis,minor_axis): "+VecOp.dot(major_axis,minor_axis));
         
         _normalization = normalization;
         _mean = mean;
-        
-        if (VecOp.dot(major_axis,minor_axis) == 0.0)
+  
+//        if (VecOp.dot(major_axis,minor_axis) == 0.0)
+        if (Math.abs(VecOp.dot(major_axis,minor_axis)) < GeomOp3D.DISTANCE_TOLERANCE)  // must have a tolerance on this
         {
             _major_axis = major_axis;
             _minor_axis = minor_axis;
@@ -45,12 +53,6 @@
             throw new RuntimeException("Axes not perpendicular!");
         }
         
-        
-//        System.out.println("normalization: "+_normalization);
-//        System.out.println("mean: "+_mean);
-//        System.out.println("major axis: "+_major_axis);
-//        System.out.println("minor axis: "+_minor_axis);
-        
     }
     
     public void transform(ITransform3D transform)
CVSspam 0.2.8