0029807: [Regression to 7.0.0] Impossible to cut cone from prism
[occt.git] / tests / bugs / modalg_5 / bug25292_36
CommitLineData
02effd35 1puts "================"
2puts "OCC25292"
3puts "================"
4puts ""
5#######################################################################
6# Face/Face intersection algorithm gives different results for different order of the arguments
7#######################################################################
8
e8feb725 9puts "##############################"
10puts "#!!!Search \"Attention\" keyword on this web-page for additional checking!!!"
11puts "##############################"
12puts ""
13puts ""
14
02effd35 15# intersect command for trimmed surfaces
16
e8feb725 17#This value must be equal to the analogical value in bug25292_35 and bug25292_36 of "bugs modalg_5" testgrid.
18set GoodNbCurv 2
19
02effd35 20restore [locate_data_file bug25292_f1.brep] f1
21restore [locate_data_file bug25292_f2.brep] f2
22
23mksurface s1 f1
24mksurface s2 f2
25
26# trim s1 in accordance with the UV-bounds of f1:
27trimv s1t s1 19.1600000005 19.6600000005
28
29# trim s2 in accordance with the UV-bounds of f2:
30trim s2t s2 0. 1.570796326795 -275 275
31
32###################
e8feb725 33intersect res s2t s1t
02effd35 34###################
35
e8feb725 36set che [whatis res]
37set ind [string first "3d curve" $che]
38if {${ind} >= 0} {
39 #Only variable "res" exists
261b7d9e 40 renamevar res res_1
f542b7bb 41}
e8feb725 42
f542b7bb 43set ic 1
44set AllowRepeate 1
45while { $AllowRepeate != 0 } {
46 set che [whatis res_$ic]
47 set ind [string first "3d curve" $che]
48 if {${ind} < 0} {
49 set AllowRepeate 0
50 } else {
261b7d9e 51 display res_$ic
52
f542b7bb 53 bounds res_$ic U1 U2
54
261b7d9e 55 dval U1
56 dval U2
57
58 if {[dval U2-U1] < 1.0e-20} {
f542b7bb 59 puts "Error: Wrong curve's range!"
e8feb725 60 }
f542b7bb 61
261b7d9e 62 xdistcs res_$ic s1 U1 U2 10 1.0e-7
63 xdistcs res_$ic s2 U1 U2 10 1.0e-7
f542b7bb 64
65 incr ic
e8feb725 66 }
f542b7bb 67}
261b7d9e 68
f542b7bb 69if {[expr {$ic - 1}] == $GoodNbCurv} {
70 puts "OK: Curve Number is good!"
71} else {
72 puts "Error: Curve Number is bad!"
02effd35 73}