[cgma-dev] r6034 - cgm/trunk/geom/OCC
janehu at mcs.anl.gov
janehu at mcs.anl.gov
Wed Apr 3 12:16:10 CDT 2013
Author: janehu
Date: 2013-04-03 12:16:10 -0500 (Wed, 03 Apr 2013)
New Revision: 6034
Added:
cgm/trunk/geom/OCC/occ_patches_6.5.4
Log:
Added patch for occ654 code.
Added: cgm/trunk/geom/OCC/occ_patches_6.5.4
===================================================================
--- cgm/trunk/geom/OCC/occ_patches_6.5.4 (rev 0)
+++ cgm/trunk/geom/OCC/occ_patches_6.5.4 2013-04-03 17:16:10 UTC (rev 6034)
@@ -0,0 +1,118 @@
+--- a/src/BRepBuilderAPI/BRepBuilderAPI_Collect.cxx 2013-04-03 11:08:17.000000000 -0500
++++ b/src/BRepBuilderAPI/BRepBuilderAPI_Collect.cxx 2013-04-03 11:20:44.000000000 -0500
+@@ -217,9 +217,18 @@
+ BuildBack (myGen, GenBack); // Vraiment pas optimum a Revoir
+ BuildBack (myMod, ModBack);
+
+- Update (myMod,myGen,ModBack,GenBack,SI,MKS,TopAbs_FACE);
+- Update (myMod,myGen,ModBack,GenBack,SI,MKS,TopAbs_EDGE);
+- Update (myMod,myGen,ModBack,GenBack,SI,MKS,TopAbs_VERTEX);
++ TopAbs_ShapeEnum type = SI.ShapeType();
++ Update (myMod,myGen,ModBack,GenBack,SI,MKS,type);
++ if(type < TopAbs_SHELL)
++ Update (myMod,myGen,ModBack,GenBack,SI,MKS,TopAbs_SHELL);
++ if(type < TopAbs_FACE)
++ Update (myMod,myGen,ModBack,GenBack,SI,MKS,TopAbs_FACE);
++ if(type < TopAbs_WIRE)
++ Update (myMod,myGen,ModBack,GenBack,SI,MKS,TopAbs_WIRE);
++ if(type < TopAbs_EDGE)
++ Update (myMod,myGen,ModBack,GenBack,SI,MKS,TopAbs_EDGE);
++ if(type < TopAbs_VERTEX)
++ Update (myMod,myGen,ModBack,GenBack,SI,MKS,TopAbs_VERTEX);
+
+ #ifdef DEB
+ if (Affich) {
+--- a/src/Extrema/Extrema_ExtPElS.cxx 2013-04-03 11:08:29.000000000 -0500
++++ b/src/Extrema/Extrema_ExtPElS.cxx 2013-04-03 11:25:30.000000000 -0500
+@@ -71,6 +71,7 @@
+ gp_Vec myZ = Pos.XDirection()^Pos.YDirection();
+ Standard_Real U1 = gp_Vec(Pos.XDirection()).AngleWithRef(OPp,myZ); //-M_PI<U1<M_PI
+ Standard_Real U2 = U1 + M_PI;
++ if(U1 > -Tol && U1 < 0.) {U1 = 0.;}
+ if (U1 < 0.) { U1 += 2. * M_PI; }
+
+ gp_Pnt Ps;
+@@ -167,7 +168,9 @@
+ B = MP.Angle(DirZ);
+ if (!Same) { U1 += M_PI; }
+ U2 = U1 + M_PI;
++ if(U1 > -Tol && U1 < 0.) {U1 = 0.;}
+ if (U1 < 0.) { U1 += 2. * M_PI; }
++ if (U2 - 2.*M_PI < Tol && U2 > 2.*M_PI) {U2 = 2. * M_PI; }
+ if (U2 > 2.*M_PI) { U2 -= 2. * M_PI; }
+ B = MP.Angle(DirZ);
+ A = Abs(A);
+@@ -258,6 +261,7 @@
+ gp_Vec myZ = Pos.XDirection()^Pos.YDirection();
More information about the cgma-dev
mailing list