//
Standard_Real aXmin, aYmin, aZmin, aXmax, aYmax, aZmax, anExt;
//
- anExt = myBBox.SquareExtent() * 0.5;
+ anExt = sqrt(myBBox.SquareExtent()) * 0.5;
myBBox.Enlarge(anExt);
myBBox.Get(aXmin, aYmin, aZmin, aXmax, aYmax, aZmax);
//
TopAbs_EDGE,
TopAbs_FACE,
aEFMap);
-
}
//
aItF.Initialize (myShapes);
TopAbs_EDGE,
TopAbs_FACE,
aMEF);
-
+ //
aNbMEF=aMEF.Extent();
for (i=1; i<=aNbMEF; ++i) {
const TopoDS_Shape& aE=aMEF.FindKey(i);
aLFP.Append(aF1);
//
// Trying to reach the branch point
- for (;;) {
+ for (;;) {
aItLFP.Initialize(aLFP);
for (; aItLFP.More(); aItLFP.Next()) {
const TopoDS_Shape& aFP=aItLFP.Value();
continue;
}
//
+ if (aE.Orientation() == TopAbs_INTERNAL) {
+ continue;
+ }
+ //
if (BRep_Tool::Degenerated(aE)) {
continue;
}
aLFP.Append(aFP1);
}
aLFP1.Clear();
- }// for (;;) {
+ }// for (;;) {
//
aNbMFB=aMFB.Extent();
if (aNbMFB) {
aLShX.Append(aShX);
}
}//for (; aIt.More(); aIt.Next()) {
-}
+}
//=======================================================================
//function : MakeShells
//purpose :
# test script on make volume operation
# plane
-puts "TODO OCC26020 ALL: Faulty shapes in variables faulty_1 to faulty_"
+puts "TODO ?OCC26020 ALL: Faulty shapes in variables faulty_1 to faulty_"
puts "TODO ?OCC26020 ALL: Error : The area of the resulting shape is"
-puts "TODO OCC26020 ALL: Error: bopcheck failed"
+puts "TODO ?OCC26020 ALL: Error: bopcheck failed"
# planar face
plane pln_f1 -331.49269816258993 -487.15663197846379 -460.05843051255943 -0.29784456643004237 0.75470958022277179 -0.58455287508322795
# test script on make volume operation
# plane
-puts "TODO OCC26020 ALL: Faulty shapes in variables faulty_1 to faulty_"
+puts "TODO ?OCC26020 ALL: Faulty shapes in variables faulty_1 to faulty_"
+puts "TODO OCC26020 ALL: Error: bopcheck failed"
+puts "TODO OCC26020 ALL: Error : The area of the resulting shape is"
# planar face
plane pln_f1 0 840 1.2212453270876722e-014 0 -1 -1.1102230246251565e-016
--- /dev/null
+puts "========"
+puts "OCC26379"
+puts "========"
+puts ""
+#######################################################
+# Wrong result produced by the volume maker algorithm
+#######################################################
+
+restore [locate_data_file OCC26379-csf_2.brep] cf
+mkvolume result cf -ni
+
+vinit
+vsetdispmode 1
+vdisplay result
+vfit
+
+set bug_info [vreadpixel 350 310 name]
+if {$bug_info != "DARKGOLDENROD3 1"} {
+ puts "ERROR: OCC26379 is reproduced. Volume is incorrect."
+}
+
+set square 6.60933e+006
+
+set only_screen 1
--- /dev/null
+puts "========"
+puts "OCC26379"
+puts "========"
+puts ""
+#######################################################
+# Wrong result produced by the volume maker algorithm
+#######################################################
+
+restore [locate_data_file OCC26379-csf_3.brep] cf
+mkvolume result cf -ni
+
+vinit
+vsetdispmode 1
+vdisplay result
+vfit
+
+set bug_info [vreadpixel 350 310 name]
+if {$bug_info != "DARKGOLDENROD3 1"} {
+ puts "ERROR: OCC26379 is reproduced. Volume is incorrect."
+}
+
+set square 7.22211e+006
+
+set only_screen 1