aLocalFace = FaceRef.Oriented(wfirst.Orientation());
GetDirection(LastEdge, TopoDS::Face(aLocalFace),plast , dlast, Standard_False);
- Standard_Boolean cond;
+ Standard_Boolean cond = Standard_True;
if(IsPeriodic) {
BRepAdaptor_Surface surf(F,Standard_False); // no restriction
surf.D0 (plst.X(), plst.Y(), aPlst);
-
+
gp_Dir2d ref2d(dlst);
Handle(Geom2d_Curve) C2d;
TopoDS_Edge anEdge = TopoDS::Edge (Poss.FindKey (index));
GetDirection(anEdge, F, p2d, v2d, Standard_True);
+ if(!SameUV(plst,p2d,surf))
+ continue;
surf.D0 (p2d.X(), p2d.Y(), aPCur);
--- /dev/null
+puts "=============="
+puts " splitshape_1 "
+puts " "
+puts "=============="
+puts ""
+#puts " 0029473 "
+###################################################
+# Operation "splitshape" in the Test Harness give invalid result on the attached case.
+###################################################
+restore [locate_data_file bug29473_Split.brep] a
+explode a
+explode a_1
+explode a_2
+wire w1 a_2_1 a_2_2 a_2_3
+wire w2 a_2_4 a_2_5
+explode a_1_5 e
+splitshape r1 a_1 a_1_1 w1 a_1_3 w2 a_1_4 a_2_6 a_1_5 a_2_7 @ a_1_5_4 a_2_8
+explode r1 f
+copy r1_1 result
--- /dev/null
+# test script to check validity of shape
+
+########################################################################
+
+checkshape result
+maxtolerance result
+
+smallview
+donly result
+fit
+checkview -screenshot -2d -path ${imagedir}/${test_image}.png