From: JGV <> Date: Thu, 18 Aug 2011 12:45:29 +0000 (+0000) Subject: 022695: The algorithm BRepFilletAPI_MakeFillet2d crashes in cases when some original... X-Git-Tag: V6_5_2~51 X-Git-Url: http://git.dev.opencascade.org/gitweb/?a=commitdiff_plain;h=f10018adfe18b8ff7571ace18125f091ca4ab25c;p=occt-copy.git 022695: The algorithm BRepFilletAPI_MakeFillet2d crashes in cases when some original edges of the face degenerate (become punctual) --- diff --git a/src/ChFi2d/ChFi2d_Builder.cxx b/src/ChFi2d/ChFi2d_Builder.cxx index 05d3088585..36b350d751 100755 --- a/src/ChFi2d/ChFi2d_Builder.cxx +++ b/src/ChFi2d/ChFi2d_Builder.cxx @@ -1000,7 +1000,10 @@ TopoDS_Edge ChFi2d_Builder::BuildFilletEdge(const TopoDS_Vertex& V, Fillet.Tangency2(numsol,Vv1,Vv2,Ptg2); // check the validity of parameters - inside = (U2param2) || (U2param1); + //// modified by jgv, 08.08.2011 for bug 0022695 //// + //inside = (U2param2) || (U2param1); + inside = (U2 < param1 && U2 >= param2) || (U2 <= param2 && U2 > param1); + ///////////////////////////////////////////////////// if ( (basisC1->DynamicType() == STANDARD_TYPE(Geom2d_Circle)) && ( (2*PIparam2) || (2*PIparam1) ) ) { // arc of circle containing the circle origin @@ -1014,7 +1017,10 @@ TopoDS_Edge ChFi2d_Builder::BuildFilletEdge(const TopoDS_Vertex& V, return filletEdge; } - inside = (Vv2param4) || (Vv2param3); + //// modified by jgv, 08.08.2011 for bug 0022695 //// + //inside = (Vv2param4) || (Vv2param3); + inside = (Vv2 < param3 && Vv2 >= param4) || (Vv2 <= param4 && Vv2 > param3); + ///////////////////////////////////////////////////// if ( (basisC2->DynamicType() == STANDARD_TYPE(Geom2d_Circle)) && ( (2*PIparam4) || (2*PIparam3) ) ) { // arc of circle containing the circle origin