mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-04-10 18:51:21 +03:00
Sometimes curve or surface, which is defined as C0, has continuity G1 or above. Offset can be built from these shapes. Therefore, this extended checking was added into SetBasisCurve and SetBasisSurface methods. Main changes in function BRepOffset_Tool::ExtentFace(...): * "return" is added if intersection (in 2D-space) between two edges in a face cannot be found. Basis curve/surface continuity value found (if G1-checking is OK) is set up as BasisContinuity (see myBasisCurveContinuity and myBasisSurfContinuity members which is returned by GetBasisCurveContinuity and GetBasisSurfContinuity() methods). This fact is used in Geom2dAdaptor and in GeomAdaptor classes. Possibility is entered, which allows for basis elements of offset curve/surface to avoid of C0-checking. Test cases were changed according to their new behavior. Test-cases for issue #25124
28 lines
707 B
Plaintext
28 lines
707 B
Plaintext
puts "========"
|
|
puts "OCC25124"
|
|
puts "========"
|
|
puts ""
|
|
######################################################
|
|
# Removal of continuity checks for offset geometries
|
|
######################################################
|
|
|
|
smallview
|
|
|
|
restore [locate_data_file OCC25124_a_15592.draw] a2
|
|
getsurfcontinuity a2
|
|
offset o2 a2 20
|
|
getsurfcontinuity o2
|
|
|
|
set bug_info_1 [dump a2]
|
|
set bug_info_1 [string range $bug_info_1 39 [expr {[string length $bug_info_1] -1}]]
|
|
set bug_info_2 [dump o2]
|
|
set bug_info_2 [string range $bug_info_2 39 [expr {[string length $bug_info_2] -1}]]
|
|
if {[string compare $bug_info_1 $bug_info_2] == 0} {
|
|
puts "ERROR: OCC25124 is reproduced (a2 = o2)."
|
|
}
|
|
|
|
donly a2 o2
|
|
fit
|
|
|
|
set only_screen_axo 1
|