File: bug2755

package info (click to toggle)
opencascade 7.9.2%2Bdfsg-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 301,924 kB
  • sloc: cpp: 1,523,264; tcl: 10,159; cs: 5,173; java: 1,554; sh: 1,342; ansic: 827; xml: 699; makefile: 30; javascript: 22
file content (56 lines) | stat: -rwxr-xr-x 2,461 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
puts "============"
puts "OCC2755"
puts "============"
puts ""
######################################################
# Boolean Bug in OCC5.0 with the shape having a ellipse curve
######################################################

restore [locate_data_file OCC2755.brep] a 

checkshape a

explode a f
mksurface gs a_1
set list [proj gs 0 10 50]
set list [lmatch $list ext_*]
set ll 4

set good_Parameter1List [list 0 0 0 0]
set good_Parameter2List [list 40.4616826479819 211.944716681974 64.3186164305428 81.0582330575794]
set good_OriginXList [list 0 0 0 0]
set good_OriginYList [list 10 10 10 10]
set good_OriginZList [list 50 50 50 50]
set good_AxisXList [list -0.0300865818651084 -0.941236271764613 0.534306660761684 0.998573938898137]
set good_AxisYList [list 0.999547296325529 -0.337748842654791 -0.845290714645381 0.0533862206328518]
set good_AxisZList [list 0 0 0 0]

if {[llength ${list}] != ${ll}} {
    puts "Faulty OCC2755"
} else {
    set IsGood 1
    for {set i 0} {$i < ${ll}} {incr i} {
        set dump_list [dump [lindex ${list} $i]]
        regexp { *Parameters *: *([-0-9.+eE]+) *([-0-9.+eE]+)} $dump_list full Parameter1 Parameter2
        regexp { *Origin *:([-0-9.+eE]+), *([-0-9.+eE]+), *([-0-9.+eE]+)} $dump_list full OriginX OriginY OriginZ
        regexp { *Axis *:([-0-9.+eE]+), *([-0-9.+eE]+), *([-0-9.+eE]+)} $dump_list full AxisX AxisY AxisZ

        set good_Parameter1 [lindex ${good_Parameter1List} $i]
        set good_Parameter2 [lindex ${good_Parameter2List} $i]
        set good_OriginX [lindex ${good_OriginXList} $i]
        set good_OriginY [lindex ${good_OriginYList} $i]
        set good_OriginZ [lindex ${good_OriginZList} $i]
        set good_AxisX [lindex ${good_AxisXList} $i]
        set good_AxisY [lindex ${good_AxisYList} $i]
        set good_AxisZ [lindex ${good_AxisZList} $i]

        checkreal "Parameter1 / case 3 / $i" ${Parameter1} ${good_Parameter1} 0 0.001
        checkreal "Parameter2 / case 3 / $i" ${Parameter2} ${good_Parameter2} 0 0.001
        checkreal "OriginX / case 3 / $i" ${OriginX} ${good_OriginX} 0 0.001
        checkreal "OriginY / case 3 / $i" ${OriginY} ${good_OriginY} 0 0.001
        checkreal "OriginZ / case 3 / $i" ${OriginZ} ${good_OriginZ} 0 0.001
        checkreal "AxisX / case 3 / $i" ${AxisX} ${good_AxisX} 0 0.001
        checkreal "AxisY / case 3 / $i" ${AxisY} ${good_AxisY} 0 0.001
        checkreal "AxisZ / case 3 / $i" ${AxisZ} ${good_AxisZ} 0 0.001
    }
}