1puts "============" 2puts "OCC7166" 3puts "============" 4puts "" 5####################################################################### 6# Improvement of API of ThruSection 7####################################################################### 8 9set BugNumber OCC7166 10 11# 12# 13# 14# 15# 16# v22 v21 17# *----------------------* 18# / \ 19# / \ 20# / v12 v11 \ 21# / *---------------------* \ 22# / | | \ 23# / | | \ 24# * v23 | * v3 | v28 * 25# | | | \ | | 26# | | | \ | | 27# | | | \ | | 28# | | | \ | | 29# | | | /* v2 | | 30# | | | / | | 31# | | | / | | * v4, v5 32# | | | / | | 33# | | * | | 34# | | v1 | | 35# | | | | 36# | | | | 37# * v24 | | v27 * 38# \ | | / 39# \ *---------------------* / 40# \ v13 v14 / 41# \ / 42# \ / 43# \ v25 v26 / 44# *----------------------* 45# 46# 47# 48 49set z1 40 50set z2 20 51set z3 0 52set z4 100 53 54# beginning vertex 55vertex v4 55 2.5 ${z4} 56# ending vertex 57vertex v5 55 2.5 -${z4} 58 59# top triangle 60vertex v1 0 0 ${z1} 61vertex v2 5 5 ${z1} 62vertex v3 0 10 ${z1} 63 64edge e1 v1 v2 65edge e2 v2 v3 66edge e3 v3 v1 67 68wire w1 e1 e2 e3 69 70# top quadrangle 71vertex v11 15 15 ${z2} 72vertex v12 -15 15 ${z2} 73vertex v13 -15 -15 ${z2} 74vertex v14 15 -15 ${z2} 75 76edge e11 v11 v12 77edge e12 v12 v13 78edge e13 v13 v14 79edge e14 v14 v11 80 81wire w11 e11 e12 e13 e14 82 83# top octagon 84vertex v21 25 25 ${z3} 85vertex v22 -25 25 ${z3} 86vertex v23 -30 10 ${z3} 87vertex v24 -30 -10 ${z3} 88vertex v25 -25 -25 ${z3} 89vertex v26 25 -25 ${z3} 90vertex v27 30 -10 ${z3} 91vertex v28 30 10 ${z3} 92 93edge e21 v21 v22 94edge e22 v22 v23 95edge e23 v23 v24 96edge e24 v24 v25 97edge e25 v25 v26 98edge e26 v26 v27 99edge e27 v27 v28 100edge e28 v28 v21 101 102wire w21 e21 e22 e23 e24 e25 e26 e27 e28 103 104# bottom quadrangle 105vertex v111 15 15 -${z2} 106vertex v112 -15 15 -${z2} 107vertex v113 -15 -15 -${z2} 108vertex v114 15 -15 -${z2} 109 110edge e111 v111 v112 111edge e112 v112 v113 112edge e113 v113 v114 113edge e114 v114 v111 114 115wire w111 e111 e112 e113 e114 116 117# bottom triangle 118vertex v101 0 0 -${z1} 119vertex v102 5 5 -${z1} 120vertex v103 0 10 -${z1} 121 122edge e101 v101 v102 123edge e102 v102 v103 124edge e103 v103 v101 125 126wire w101 e101 e102 e103 127 128 129# 130set issolid 1 131set isruled 1 132thrusections result ${issolid} ${isruled} v4 w1 w11 w21 w111 w101 v5 133 134 135checkprops result -s 12651.5 136 137 138checknbshapes result -vertex 57 -edge 121 -wire 66 -face 66 -shell 1 -solid 1 -compsolid 0 -compound 0 -shape 312 139 140 141set index [lsearch [whatis result] Closed] 142if {$index == -1} { 143 puts "Faulty ${BugNumber} : result is not Closed shape" 144 145} 146 147 148