1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-04-10 18:51:21 +03:00
occt/tests/bugs/modalg_1/buc60555_3
nbv 59495dbe8a 0023511: The function BRepTools::UVBounds provides icorrect result for a face
Range of changing of some analytic curves is computed by other methods. It allows computing face's boundaries with more precise.
Tolerance was increased to provide successful work of some algorithms.
Functions BRepOffsetAPI_MiddlePath::Build() and ApproxWithPCurves(...) (file IntTools_FaceFace.cxx) were changed according to new result of algorithm's work.
It is possibly for "outboundaried faces" (see bug#23675) to compute incorrect UV-Bounds, when first parameter is more than last. To avoid it, extended control of computed bounds was added.
Function for fail sameparameter fixing was added to HLRAppli_ReflectLines to avoid creation bad shapes after algorithm's work.

In file ShapeFix_ComposeShell.cxx only text formatting was changed.

Some test cases are changed according to their new behavior.
Added test case bugs/moddata_3/bug23511
2014-05-22 17:55:31 +04:00

71 lines
1.8 KiB
Plaintext
Executable File

puts "=============="
puts "BUC60555"
puts "CUT Case 3"
puts "=============="
cpulimit 5000
restore [locate_data_file buc60555a.brep] part
checkshape part
restore [locate_data_file buc60555b.brep] trTool1
checkshape trTool1
halfspace hs1 trTool1 20000 10000 0
bcut cut1 part hs1
checkshape cut1
set che [checkshape cut1 r]
if { [regexp {OK} $che] != 1 } {
puts "Faulty : mistakes are found in checked shape by checkshape command"
} else {
puts "Checking by checkshape - OK"
}
maxtolerance cut1
restore [locate_data_file buc60555c.brep] trTool2
halfspace hs2 trTool2 10000 10000 0
bcut cut2 cut1 hs2
checkshape cut2
set che [checkshape cut2 r]
if { [regexp {OK} $che] != 1 } {
puts "Faulty : mistakes are found in checked shape by checkshape command"
} else {
puts "Checking by checkshape - OK"
}
maxtolerance cut2
restore [locate_data_file buc60555d.brep] trTool3
halfspace hs3 trTool3 20000 1000 0
bcut cut3 cut2 hs3
tcopy cut3 result
explode cut3 e
mkcurve cu1 cut3_1
mkcurve cu2 cut3_2
mkcurve cu3 cut3_3
mkcurve cu4 cut3_4
set che [checkshape cut3 r]
if { [regexp {OK} $che] != 1 } {
puts "Faulty : mistakes are found in checked shape by checkshape command"
} else {
puts "Checking by checkshape - OK"
}
checkshape cut3
set tolerance [ maxtolerance cut3 ]
regexp { +Face +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tolerance full MaxFaceTolerance
regexp { +Edge +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tolerance full MaxEdgeTolerance
regexp { +Vertex +: +Min +[-0-9.+eE]+ +Max +([-0-9.+eE]+)} $tolerance full MaxVertexTolerance
if { $MaxFaceTolerance > 1 || $MaxEdgeTolerance > 1 || $MaxVertexTolerance > 1 } {
puts "Faulty : Tolerance of shape is more then 1.0"
} else {
puts "Tolerance of shape is less then 1.0"
}
set square 2.34799e+007
set 2dviewer 0