return 0;
}
+#include <Geom_Curve.hxx>
+#include <Geom_Surface.hxx>
+#include <Precision.hxx>
+#include <ShapeConstruct_ProjectCurveOnSurface.hxx>
+//=======================================================================
+//function : OCC24008
+//purpose :
+//=======================================================================
+static Standard_Integer OCC24008 (Draw_Interpretor& di, Standard_Integer argc, const char ** argv)
+{
+ if (argc != 3) {
+ di << "Usage: " << argv[0] << " invalid number of arguments" << "\n";
+ return 1;
+ }
+ Handle(Geom_Curve) aCurve = DrawTrSurf::GetCurve(argv[1]);
+ Handle(Geom_Surface) aSurf = DrawTrSurf::GetSurface(argv[2]);
+ if (aCurve.IsNull()) {
+ di << "Curve was not read" << "\n";
+ return 1;
+ }
+ if (aSurf.IsNull()) {
+ di << "Surface was not read" << "\n";
+ return 1;
+ }
+ ShapeConstruct_ProjectCurveOnSurface aProj;
+ aProj.Init (aSurf, Precision::Confusion());
+ try {
+ Handle(Geom2d_Curve) aPCurve;
+ aProj.Perform (aCurve, aCurve->FirstParameter(), aCurve->LastParameter(), aPCurve);
+ if (aPCurve.IsNull()) {
+ di << "PCurve was not created" << "\n";
+ return 1;
+ }
+ } catch (...) {
+ di << "Exception was caught" << "\n";
+ }
+ return 0;
+}
+
#include <GeomAdaptor_Surface.hxx>
#include <Draw.hxx>
//=======================================================================
theCommands.Add ("OCC23952intersect", "OCC23952intersect nbsol shape1 shape2", __FILE__, OCC23952intersect, group);
theCommands.Add ("test_offset", "test_offset", __FILE__, test_offset, group);
theCommands.Add("OCC23945", "OCC23945 surfname U V X Y Z [DUX DUY DUZ DVX DVY DVZ [D2UX D2UY D2UZ D2VX D2VY D2VZ D2UVX D2UVY D2UVZ]]", __FILE__, OCC23945,group);
+ theCommands.Add ("OCC24008", "OCC24008 curve surface", __FILE__, OCC24008, group);
theCommands.Add ("OCC24019", "OCC24019 aShape", __FILE__, OCC24019, group);
theCommands.Add ("OCC11758", "OCC11758", __FILE__, OCC11758, group);
theCommands.Add ("OCC24005", "OCC24005 result", __FILE__, OCC24005, group);
dv = ( rs * ( ( ru ^ n ) + rv * rSuu - ru * rSuv ) ) * fract;
U += du;
V += dv;
-
+ if ( U < UF || U > UL || V < VF || V > VL ) break;
// check that iterations do not diverge
//pdn Standard_Real rs2 = rs.SquareMagnitude();
// if ( rs2 > 4.*rs2p ) break;
Standard_Real aResolution = Max(1e-12,(U+V)*10e-16);
if ( fabs ( du ) + fabs ( dv ) > aResolution ) continue; //Precision::PConfusion() continue;
- if ( U < UF || U > UL || V < VF || V > VL ) break;
+ //if ( U < UF || U > UL || V < VF || V > VL ) break;
//pdn PRO10109 4517: protect against wrong result
Standard_Real rs2 = rs.SquareMagnitude();
--- /dev/null
+puts "========"
+puts "OCC24008"
+puts "========"
+puts ""
+#################################################################
+# ShapeAnalysis_Surface causes exception in Geom_OffsetSurface
+#################################################################
+
+pload QAcommands
+
+restore [locate_data_file bug24008_curv_6964.draw] a
+restore [locate_data_file bug24008_surf_6962.draw] b
+
+set info [OCC24008 a b]
+if { [regexp "Exception" $info] != 0 } {
+ puts "Error : Exception was caught"
+} else {
+ puts "OK: COmmand wrong propery"
+}
--- /dev/null
+puts "========"
+puts "OCC24008"
+puts "========"
+puts ""
+#################################################################
+# ShapeAnalysis_Surface causes exception in Geom_OffsetSurface
+#################################################################
+
+pload QAcommands
+
+restore [locate_data_file bug24008_curv_rbp.draw] a
+restore [locate_data_file bug24008_surf_rbls.draw] b
+
+set info [OCC24008 a b]
+if { [regexp "Exception" $info] != 0 } {
+ puts "Error : Exception was caught"
+} else {
+ puts "OK: COmmand wrong propery"
+}
+
set ref_data {
DATA : Faulties = 0 ( 2 ) Warnings = 0 ( 0 ) Summary = 0 ( 2 )
-TPSTAT : Faulties = 0 ( 0 ) Warnings = 187 ( 454 ) Summary = 187 ( 454 )
+TPSTAT : Faulties = 0 ( 0 ) Warnings = 139 ( 454 ) Summary = 139 ( 454 )
CHECKSHAPE : Wires = 6 ( 8 ) Faces = 6 ( 8 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 223 ( 223 ) Summary = 4659 ( 4555 )
-STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 223 ( 223 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 2133 ( 2075 )
-TOLERANCE : MaxTol = 0.991254355 ( 0.991254355 ) AvgTol = 0.01129351736 ( 0.01223705309 )
+NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 223 ( 223 ) Summary = 4647 ( 4551 )
+STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 223 ( 223 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 2125 ( 2071 )
+TOLERANCE : MaxTol = 0.991254355 ( 0.991254355 ) AvgTol = 0.01133191547 ( 0.01225912551 )
LABELS : N0Labels = 223 ( 223 ) N1Labels = 0 ( 256 ) N2Labels = 0 ( 0 ) TotalLabels = 223 ( 479 ) NameLabels = 223 ( 388 ) ColorLabels = 223 ( 479 ) LayerLabels = 223 ( 479 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
NCOLORS : NColors = 3 ( 3 )
set ref_data {
DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 0 ) Summary = 0 ( 0 )
-TPSTAT : Faulties = 0 ( 238 ) Warnings = 484 ( 2532 ) Summary = 484 ( 2770 )
+TPSTAT : Faulties = 0 ( 238 ) Warnings = 483 ( 2531 ) Summary = 483 ( 2769 )
CHECKSHAPE : Wires = 3 ( 3 ) Faces = 3 ( 3 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 1346 ( 1345 ) Summary = 22215 ( 22292 )
-STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 1346 ( 1345 ) FreeWire = 96 ( 170 ) FreeEdge = 1061 ( 1061 ) SharedEdge = 9271 ( 9277 )
-TOLERANCE : MaxTol = 0.8099726869 ( 1.367966665 ) AvgTol = 0.008004679127 ( 0.00836844767 )
-LABELS : N0Labels = 27 ( 27 ) N1Labels = 2100 ( 6101 ) N2Labels = 0 ( 0 ) TotalLabels = 2127 ( 6128 ) NameLabels = 2127 ( 2596 ) ColorLabels = 2114 ( 6127 ) LayerLabels = 2114 ( 6127 )
+NBSHAPES : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 1346 ( 1345 ) Summary = 22207 ( 22290 )
+STATSHAPE : Solid = 0 ( 0 ) Shell = 0 ( 0 ) Face = 1346 ( 1345 ) FreeWire = 96 ( 170 ) FreeEdge = 1061 ( 1061 ) SharedEdge = 9265 ( 9275 )
+TOLERANCE : MaxTol = 0.8630766579 ( 1.367916315 ) AvgTol = 0.008034943314 ( 0.008258022117 )
+LABELS : N0Labels = 27 ( 27 ) N1Labels = 2100 ( 6099 ) N2Labels = 0 ( 0 ) TotalLabels = 2127 ( 6126 ) NameLabels = 2127 ( 2596 ) ColorLabels = 2114 ( 6125 ) LayerLabels = 2114 ( 6125 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
NCOLORS : NColors = 11 ( 12 )
COLORS : Colors = BLUE1 CYAN1 CYAN2 DARKGOLDENROD GREEN MAGENTA1 PALEVIOLETRED1 RED TURQUOISE2 WHITE YELLOW ( BLUE1 CYAN1 CYAN2 DARKGOLDENROD GRAY53 GREEN MAGENTA1 PALEVIOLETRED1 RED TURQUOISE2 WHITE YELLOW )
# !!!! This file is generated automatically, do not edit manually! See end script
+puts "TODO CR23096 ALL: TPSTAT : Faulty"
+
+
set filename r31ct.stp
set ref_data {
DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 0 ) Summary = 0 ( 0 )
-TPSTAT : Faulties = 0 ( 0 ) Warnings = 4 ( 4 ) Summary = 4 ( 4 )
-CHECKSHAPE : Wires = 0 ( 1 ) Faces = 0 ( 1 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 3 ( 3 ) Shell = 3 ( 3 ) Face = 127 ( 127 ) Summary = 694 ( 694 )
-STATSHAPE : Solid = 3 ( 3 ) Shell = 3 ( 3 ) Face = 127 ( 127 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 268 ( 268 )
-TOLERANCE : MaxTol = 2.392489823 ( 2.392489823 ) AvgTol = 0.0228313324 ( 0.02283092055 )
+TPSTAT : Faulties = 0 ( 0 ) Warnings = 14 ( 4 ) Summary = 14 ( 4 )
+CHECKSHAPE : Wires = 0 ( 0 ) Faces = 0 ( 0 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
+NBSHAPES : Solid = 3 ( 3 ) Shell = 3 ( 3 ) Face = 127 ( 127 ) Summary = 695 ( 694 )
+STATSHAPE : Solid = 3 ( 3 ) Shell = 3 ( 3 ) Face = 127 ( 127 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 269 ( 268 )
+TOLERANCE : MaxTol = 0.0357587389 ( 0.0357587389 ) AvgTol = 0.000777057905 ( 0.0007804686376 )
LABELS : N0Labels = 1 ( 1 ) N1Labels = 0 ( 0 ) N2Labels = 0 ( 0 ) TotalLabels = 1 ( 1 ) NameLabels = 1 ( 1 ) ColorLabels = 0 ( 0 ) LayerLabels = 0 ( 0 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
NCOLORS : NColors = 0 ( 0 )
set ref_data {
DATA : Faulties = 0 ( 0 ) Warnings = 0 ( 0 ) Summary = 0 ( 0 )
-TPSTAT : Faulties = 0 ( 0 ) Warnings = 328 ( 344 ) Summary = 328 ( 344 )
-CHECKSHAPE : Wires = 0 ( 1 ) Faces = 0 ( 1 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
-NBSHAPES : Solid = 1 ( 1 ) Shell = 1 ( 1 ) Face = 1858 ( 1858 ) Summary = 12128 ( 12125 )
-STATSHAPE : Solid = 1 ( 1 ) Shell = 1 ( 1 ) Face = 1858 ( 1858 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 5037 ( 5034 )
-TOLERANCE : MaxTol = 0.02256463189 ( 0.02260559351 ) AvgTol = 0.0007883955887 ( 0.0008034259318 )
+TPSTAT : Faulties = 0 ( 0 ) Warnings = 325 ( 343 ) Summary = 325 ( 343 )
+CHECKSHAPE : Wires = 0 ( 0 ) Faces = 0 ( 0 ) Shells = 0 ( 0 ) Solids = 0 ( 0 )
+NBSHAPES : Solid = 1 ( 1 ) Shell = 1 ( 1 ) Face = 1858 ( 1858 ) Summary = 12122 ( 12119 )
+STATSHAPE : Solid = 1 ( 1 ) Shell = 1 ( 1 ) Face = 1858 ( 1858 ) FreeWire = 0 ( 0 ) FreeEdge = 0 ( 0 ) SharedEdge = 5033 ( 5030 )
+TOLERANCE : MaxTol = 0.009518071089 ( 0.009517975925 ) AvgTol = 0.0007802070273 ( 0.0007817341352 )
LABELS : N0Labels = 1 ( 1 ) N1Labels = 858 ( 858 ) N2Labels = 0 ( 0 ) TotalLabels = 859 ( 859 ) NameLabels = 1 ( 1 ) ColorLabels = 859 ( 859 ) LayerLabels = 0 ( 0 )
PROPS : Centroid = 0 ( 0 ) Volume = 0 ( 0 ) Area = 0 ( 0 )
NCOLORS : NColors = 2 ( 2 )