Advertisement
Dece111

Stipiti

Feb 28th, 2024
106
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. 'Stipiti
  2.  
  3. Function DEFINE_QCSP(ByVal COD_SPC As String, ByVal NND As Integer, ByVal H As Double)
  4. DEFINE_QCSP = 0
  5.  
  6. If COD_SPC = "0" Then Exit Function
  7.  
  8. HSP = INPUT_NUM(NND, "H_SPC", H_SPC, ACT_MOD)
  9. M2 = INPUT_NUM(NND, "M2_SPC", M2_SPC, ACT_MOD)
  10. M3 = INPUT_NUM(NND, "M3_SPC", M3_SPC, ACT_MOD)
  11. M4 = INPUT_NUM(NND, "M4_SPC", M4_SPC, ACT_MOD)
  12. TYS = INPUT_STR(NND, "TY_SPC", TY_SPC, ACT_MOD)
  13. If HSP = 0 Or HSP = -1 Then Exit Function
  14.  
  15. Select Case COD_SPC
  16. Case "1420", "1430", "1432", "1450", "9140"
  17.  
  18. If InStr(1, TYS, "A") > 0 Then
  19. DEFINE_QCSP = HSP
  20. End If
  21. If InStr(1, TYS, "B") > 0 Then
  22. DEFINE_QCSP = HSP + M2
  23. End If
  24. If InStr(1, TYS, "C") > 0 Then
  25. DEFINE_QCSP = HSP + (M2 * 2)
  26. End If
  27.  
  28. Case "9150"
  29. If InStr(1, TYS, "A") > 0 Then
  30. DEFINE_QCSP = HSP
  31. End If
  32. If InStr(1, TYS, "B") > 0 Then
  33. DEFINE_QCSP = HSP + M4
  34. End If
  35. If InStr(1, TYS, "C") > 0 Then
  36. DEFINE_QCSP = HSP + M3
  37. End If
  38.  
  39. Case "1800", "1810", "1820", "9180"
  40. If InStr(1, TYS, "A") > 0 Then
  41. DEFINE_QCSP = HSP + 17
  42. End If
  43. If InStr(1, TYS, "B") > 0 Then
  44. DEFINE_QCSP = HSP + 17 + 54
  45. End If
  46. If InStr(1, TYS, "C") > 0 Then
  47. DEFINE_QCSP = HSP + 17 + 54 * 2
  48. End If
  49. If InStr(1, TYS, "D") > 0 Then
  50. DEFINE_QCSP = HSP + 17 + 54 * 3
  51. End If
  52.  
  53. Case "2000", "2002", "9200"
  54. If InStr(1, TYS, "A") > 0 Then
  55. DEFINE_QCSP = HSP + 42
  56. End If
  57. If InStr(1, TYS, "B") > 0 Then
  58. DEFINE_QCSP = HSP + 755 + 75.25
  59. End If
  60.  
  61. Case Else
  62. DEFINE_QCSP = HSP + (M2 / 2)
  63. End Select
  64.  
  65. DEFINE_QCSP = H - DEFINE_QCSP
  66.  
  67.  
  68. End Function
  69.  
  70. Function SPCp_CODIFY(ByVal NND As Integer, ByVal COD_SPC As String, ByVal FL_AP As Double, ByVal H As Double, ByVal L As Double, ByVal MRR As Byte, ByVal SB As Double) As String
  71. ' PROGRESSIVO PEZZO, CODICE SPACCO, FILO APERTURA, LUNGHEZZA, ALTEZZA, SPECCHIATURA, SB\SF
  72.  
  73. If COD_SPC = "50518" Or COD_SPC = "50543" Then COD_SPC = "2382"
  74. If COD_SPC = "50519" Then COD_SPC = "2900"
  75. If COD_SPC = "50520" Then COD_SPC = "3000"
  76. If COD_SPC = "50521" Then COD_SPC = "3100"
  77.  
  78. If COD_SPC = "50522" Then COD_SPC = "3200"
  79. If COD_SPC = "50523" Then COD_SPC = "3300"
  80. If COD_SPC = "50524" Then COD_SPC = "3400"
  81.  
  82. M1 = INPUT_NUM(NND, "M1_SPC", M1_SPC, ACT_MOD)
  83. If COD_SPC = "9932" Or COD_SPC = "9933" Or COD_SPC = "9934" Then GoTo SALTA_SPC_CCD 'WITTUR ZOO
  84. If M1 = 0 Or M1 = -1 Then Exit Function
  85.  
  86. SALTA_SPC_CCD:
  87. HSP = INPUT_NUM(NND, "H_SPC", H_SPC, ACT_MOD)
  88. M2 = INPUT_NUM(NND, "M2_SPC", M2_SPC, ACT_MOD)
  89. M3 = INPUT_NUM(NND, "M3_SPC", M3_SPC, ACT_MOD)
  90. M4 = INPUT_NUM(NND, "M4_SPC", M4_SPC, ACT_MOD)
  91. M5 = INPUT_NUM(NND, "M5_SPC", M5_SPC, ACT_MOD)
  92. M6 = INPUT_NUM(NND, "M6_SPC", M6_SPC, ACT_MOD)
  93. M7 = INPUT_NUM(NND, "M7_SPC", M7_SPC, ACT_MOD)
  94. M8 = INPUT_NUM(NND, "M8_SPC", M8_SPC, ACT_MOD)
  95. M9 = INPUT_NUM(NND, "M9_SPC", M9_SPC, ACT_MOD)
  96. M10 = INPUT_NUM(NND, "M10_SPC", M10_SPC, ACT_MOD)
  97. M11 = INPUT_NUM(NND, "M11_SPC", M11_SPC, ACT_MOD)
  98. M12 = INPUT_NUM(NND, "M12_SPC", M12_SPC, ACT_MOD)
  99. M13 = INPUT_NUM(NND, "M13_SPC", M13_SPC, ACT_MOD)
  100. M14 = INPUT_NUM(NND, "M14_SPC", M14_SPC, ACT_MOD)
  101. M15 = INPUT_NUM(NND, "M15_SPC", M15_SPC, ACT_MOD)
  102. M16 = INPUT_NUM(NND, "M16_SPC", M16_SPC, ACT_MOD)
  103. M17 = INPUT_NUM(NND, "M17_SPC", M17_SPC, ACT_MOD)
  104. M18 = INPUT_NUM(NND, "M18_SPC", M18_SPC, ACT_MOD)
  105. sf = INPUT_NUM(NND, "SF", sf, ACT_MOD)
  106. QCSP = DEFINE_QCSP(COD_SPC, NND, H)
  107.  
  108. RS1 = ""
  109. RS2 = ""
  110. RS3 = ""
  111. RS4 = ""
  112. RS5 = ""
  113. RS6 = ""
  114. RS7 = ""
  115. SPCp_CODIFY = ""
  116.  
  117.  
  118. FA = FL_AP
  119. HSP = HSP '+ 2.5 ' I RIVESTIMENTI VANNO SOTTO LA SOGLIA DI 2.5 mm --> FINELINE FILO PAVIMENTO
  120.  
  121. If Len(COD_SPC) < 4 Then COD_SPC = "0" & COD_SPC
  122.  
  123. Select Case COD_SPC
  124. Case "9020"
  125. 'Y = MR_Y(FA + M5, L, MRR)
  126. 'RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  127. 'RS2 = T_RECT2(H - HSP - M4 - M3 / 2, Y, M3, M1)
  128. 'SPCp_CODIFY = RS1 & RS2
  129. 'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  130. MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
  131.  
  132. Case "0300", "90300", "0306", "0308", "0304", "0338", "0342", "0344", "0348", "0352", "0356", "0374", "0378", "0384", "2312", "2320", "2322", "2326", "2330", "2332", "2334", "2336", "2342", "2344", "2346", "92346", "2350", "2354", "2360", "2364", "2372", "2380", "2382", "9030"
  133. If M3 = 0 Then
  134. If SB > 300 Then M3 = 60 Else M3 = SB / 2
  135. End If
  136.  
  137. Y = MR_Y(FA + M3, L, MRR)
  138. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  139. SPCp_CODIFY = RS1
  140. 'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  141.  
  142. Case "0440", "9040"
  143. If M6 = 0 Then
  144. If SB > 300 Then M6 = 60 Else M6 = SB / 2
  145. End If
  146.  
  147. Y = MR_Y(FA + M6, L, MRR)
  148. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  149. RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y - M4 / 2, M5)
  150. RS3 = T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - M4 / 2, M5)
  151. SPCp_CODIFY = RS1 & RS2 & RS3
  152. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  153.  
  154. Case "0514", "0518", "0526", "0530", "0540", "0542", "0560", "0570", "0580", "90580", "0592", "0594", "9050", "90540", "90526"
  155. If M5 = 0 Then
  156. If SB > 300 Then M5 = 60 Else M5 = SB / 2
  157. End If
  158.  
  159. If M4 = 3.2 Then M4 = 3.3 'AGGIUNTA GALLONI 09-04-2019
  160. If M4 = 2.1 Then M4 = 2 'AGGIUNTA GALLONI 14-10-2019
  161. If M4 = 4.4 Then M4 = 4.2 'AGGIUNTA GALLONI 23-07-2020
  162. If M4 = 4 Then M4 = 4.2 'AGGIUNTA GALLONI 23-07-2020
  163. If M4 = 4.5 Then M4 = 4.2 'AGGIUNTA GALLONI 23-07-2020
  164.  
  165. Y = MR_Y(FA + M5, L, MRR)
  166. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  167. RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y, M4) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y, M4)
  168. SPCp_CODIFY = RS1 & RS2
  169. 'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  170.  
  171. Case "9240"
  172. Y = MR_Y(FA + M6, L, MRR)
  173. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  174. RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y, M5)
  175. If MRR = 1 Then
  176. RS3 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y - M4, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + M4, M5)
  177. Else
  178. RS3 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + M4, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - M4, M5)
  179. End If
  180. SPCp_CODIFY = RS1 & RS2 & RS3
  181. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  182.  
  183. Case "9060"
  184. 'Y = MR_Y(FA + M4, L, MRR)
  185. 'RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  186. 'RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y, M8) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y, M8)
  187. 'RS3 = T_RECT2(H - HSP - M6 - M5 / 2, Y, M5, M1)
  188. 'RS4 = T_CIRC(H - HSP - M6 - M5 / 2 - M7 / 2, Y, M8) & T_CIRC(H - HSP - M6 - M5 / 2 + M7 / 2, Y, M8)
  189. 'SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
  190. 'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  191. MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
  192.  
  193. Case "9070"
  194. Y = MR_Y(FA + M5, L, MRR)
  195. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  196.  
  197. If MRR = 1 Then
  198. RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y - 3, M4) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + 3, M4)
  199. RS3 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y - (M1 / 2 - 6.5), 13) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + (M1 / 2 - 6.5), 13)
  200. RS4 = T_RECT1(H - HSP - M2 / 2 - M3 / 2 + (M3 - M2) / 2, H - HSP - M2 / 2 - M3 / 2, Y - (M1 / 2 - 6.5) - 6.5, Y - (M1 / 2 - 6.5) + 6.5)
  201. RS5 = T_RECT1(H - HSP - M2 / 2 + M3 / 2 - (M3 - M2) / 2, H - HSP - M2 / 2 + M3 / 2, Y + (M1 / 2 - 6.5) - 6.5, Y + (M1 / 2 - 6.5) + 6.5)
  202. Else
  203. RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + 3, M4) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - 3, M4)
  204. RS3 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + (M1 / 2 - 6.5), 13) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - (M1 / 2 - 6.5), 13)
  205. RS4 = T_RECT1(H - HSP - M2 / 2 - M3 / 2 + (M3 - M2) / 2, H - HSP - M2 / 2 - M3 / 2, Y + (M1 / 2 - 6.5) - 6.5, Y + (M1 / 2 - 6.5) + 6.5)
  206. RS5 = T_RECT1(H - HSP - M2 / 2 + M3 / 2 - (M3 - M2) / 2, H - HSP - M2 / 2 + M3 / 2, Y - (M1 / 2 - 6.5) - 6.5, Y - (M1 / 2 - 6.5) + 6.5)
  207. End If
  208. SPCp_CODIFY = RS1 & RS2 & RS3 & RS4 & RS5
  209. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  210.  
  211. Case "9090"
  212. Y = MR_Y(FA + M7, L, MRR)
  213. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  214. RS2 = T_CIRC(H - HSP + M4, Y - M5 / 2, M6) & T_CIRC(H - HSP + M4, Y + M5 / 2, M6)
  215. RS3 = T_CIRC(H - HSP + M4 - M3, Y - M5 / 2, M6) & T_CIRC(H - HSP + M4 - M3, Y + M5 / 2, M6)
  216. SPCp_CODIFY = RS1 & RS2 & RS3
  217. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  218.  
  219. Case "1050", "9100"
  220. If M5 = 0 Then
  221. If SB > 300 Then M5 = 60 Else M5 = SB / 2
  222. End If
  223.  
  224. Y = MR_Y(FA + M5, L, MRR)
  225. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  226. RS2 = T_RECT1(H - HSP - 4, H - HSP + (M3 - M2) / 2, Y - M4 / 2, Y + M4 / 2)
  227. RS3 = T_RECT1(H - HSP - M2 - (M3 - M2) / 2, H - HSP - M2 + 4, Y - M4 / 2, Y + M4 / 2)
  228. SPCp_CODIFY = RS1 & RS2 & RS3
  229. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  230.  
  231. Case "9110"
  232. 'Y = MR_Y(FA + M9, L, MRR)
  233. 'RS1 = T_RECT2(H - HSP - M5 / 2, Y, M5, M4)
  234. 'RS2 = T_RECT2(H - HSP - M3 - M2 / 2, Y, M2, M1)
  235. 'RS3A = T_CIRC(H - HSP - M5 / 2 + M10 / 2, Y, M7) & T_CIRC(H - HSP - M5 / 2 - M10 / 2, Y, M7)
  236. 'RS3B = T_CIRC(H - HSP - M5 / 2 + M10 / 2, Y + M8 / 2, M7) & T_CIRC(H - HSP - M5 / 2 - M10 / 2, Y + M8 / 2, M7)
  237. 'RS3C = T_CIRC(H - HSP - M5 / 2 + M10 / 2, Y - M8 / 2, M7) & T_CIRC(H - HSP - M5 / 2 - M10 / 2, Y - M8 / 2, M7)
  238. 'RS3 = RS3A & RS3B & RS3C
  239. 'RS4A = T_CIRC(H - HSP - M3 - M2 / 2 + M6 / 2, Y, M7) & T_CIRC(H - HSP - M3 - M2 / 2 - M6 / 2, Y, M7)
  240. 'RS4B = T_CIRC(H - HSP - M3 - M2 / 2 + M6 / 2, Y + M8 / 2, M7) & T_CIRC(H - HSP - M3 - M2 / 2 - M6 / 2, Y + M8 / 2, M7)
  241. 'RS4C = T_CIRC(H - HSP - M3 - M2 / 2 + M6 / 2, Y - M8 / 2, M7) & T_CIRC(H - HSP - M3 - M2 / 2 - M6 / 2, Y - M8 / 2, M7)
  242. 'RS4 = RS4A & RS4B & RS4C
  243. 'SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
  244. 'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  245. MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
  246.  
  247. Case "9160", "1600"
  248. If M5 = 0 Then
  249. If SB > 300 Then M5 = 60 Else M5 = SB / 2
  250. End If
  251.  
  252. Y = MR_Y(FA + M5, L, MRR)
  253. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  254. RS2 = T_RECT1(H - HSP - 4, H - HSP + (M3 - M2) / 2, Y - M4 / 2, Y + M4 / 2)
  255. RS3 = T_RECT1(H - HSP - M2 - (M3 - M2) / 2, H - HSP - M2 + 4, Y - M4 / 2, Y + M4 / 2)
  256. RS4 = T_CIRC(H - HSP - M2 / 2 + M6 / 2, Y, M7) & T_CIRC(H - HSP - M2 / 2 - M6 / 2, Y, M7)
  257. SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
  258. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  259.  
  260. Case "1900", "9190"
  261. 'If M5 = 0 Then
  262. 'If SB > 300 Then M5 = 60 Else M5 = SB / 2
  263. 'End If
  264. '
  265. 'Y = MR_Y(FA + M5, L, MRR)
  266. 'RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  267. 'RS2 = T_RECT1(H - HSP - 4, H - HSP + (M3 - M2) / 2, Y - M4 / 2, Y + M4 / 2)
  268. 'RS3 = T_RECT1(H - HSP - M2 - (M3 - M2) / 2, H - HSP - M2 + 4, Y - M4 / 2, Y + M4 / 2)
  269. 'RS4 = T_CIRC(H - HSP - M2 / 2 + M6 / 2, Y, M7) & T_CIRC(H - HSP - M2 / 2 - M6 / 2, Y, M7)
  270. '
  271. 'RS5 = T_RECT2(H - HSP - M2 - M8 - M9 / 2, Y, M9, M12)
  272. 'RS6 = T_CIRC(H - HSP - M2 - M8 - M9 / 2 + M10 / 2, Y + M11 / 2, M13) & T_CIRC(H - HSP - M2 - M8 - M9 / 2 - M10 / 2, Y + M11 / 2, M13)
  273. 'RS7 = T_CIRC(H - HSP - M2 - M8 - M9 / 2 + M10 / 2, Y - M11 / 2, M13) & T_CIRC(H - HSP - M2 - M8 - M9 / 2 - M10 / 2, Y - M11 / 2, M13)
  274. '
  275. 'SPCp_CODIFY = RS1 & RS2 & RS3 & RS4 & RS5 & RS6 & RS7
  276. 'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  277. MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
  278.  
  279. Case "9120"
  280. Y = MR_Y(FA + M8, L, MRR)
  281. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M3)
  282. RS2 = T_CIRC(H - HSP - M2 / 2 - M4 / 2, Y, M7)
  283. RS3 = T_CIRC(H - HSP - M2 / 2 + M4 / 2, Y, M7)
  284. RS4 = T_RECT2(H - HSP - M5 - M6 / 2, Y, M6, M1)
  285. SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
  286. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  287.  
  288. Case "9130"
  289. Y = MR_Y(FA + M7, L, MRR)
  290. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  291. RS2 = T_CIRC(H - HSP - M2 / 2 - M4 / 2, Y, M6) & T_CIRC(H - HSP - M2 / 2 + M4 / 2, Y, M6)
  292. RS3 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + M5 / 2, M6) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + M5 / 2, M6)
  293. RS4 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y - M5 / 2, M6) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - M5 / 2, M6)
  294. SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
  295. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  296.  
  297. Case "1420", "1430", "1432", "1450", "9140"
  298. TYS = INPUT_STR(NND, "TY_SPC", TY_SPC, ACT_MOD)
  299.  
  300. If InStr(1, TYS, "AB") > 0 And InStr(1, TYS, "BC") > 0 Or InStr(1, TYS, "CD") > 0 Then
  301.  
  302. MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
  303.  
  304. Else
  305. If M4 = 0 Then
  306. If SB > 300 Then M4 = 60 Else M4 = SB / 2
  307. End If
  308.  
  309. Y = MR_Y(FA + M4, L, MRR)
  310. If InStr(1, TYS, "A") > 0 Then
  311. RS1 = T_CIRC(H - HSP, Y, M1)
  312. Else
  313. RS1 = ""
  314. End If
  315. If InStr(1, TYS, "B") > 0 Then
  316. RS2 = T_CIRC(H - HSP - M2, Y, M1)
  317. Else
  318. RS2 = ""
  319. End If
  320. If InStr(1, TYS, "C") > 0 Then
  321. RS3 = T_CIRC(H - HSP - 2 * M2, Y, M1)
  322. Else
  323. RS3 = ""
  324. End If
  325. SPCp_CODIFY = RS1 & RS2 & RS3
  326. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  327. End If
  328.  
  329.  
  330. Case "9150"
  331. TYS = INPUT_STR(NND, "TY_SPC", TY_SPC, ACT_MOD)
  332.  
  333.  
  334. If InStr(1, TYS, "AB") > 0 Or InStr(1, TYS, "BC") > 0 Or InStr(1, TYS, "AC") > 0 Then
  335.  
  336. MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
  337.  
  338. Else
  339. Y = MR_Y(FA + M7, L, MRR)
  340. If InStr(1, TYS, "A") > 0 Then
  341. RS1 = T_RECT2(H - HSP, Y, M5, M6)
  342. Else
  343. RS1 = ""
  344. End If
  345. If InStr(1, TYS, "B") > 0 Then
  346. RS2 = T_RECT2(H - HSP - M4, Y, M2, M1)
  347. Else
  348. RS2 = ""
  349. End If
  350. If InStr(1, TYS, "C") > 0 Then
  351. RS3 = T_RECT2(H - HSP - M4 - M3, Y, M2, M1)
  352. Else
  353. RS3 = ""
  354. End If
  355. SPCp_CODIFY = RS1 & RS2 & RS3
  356. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  357. End If
  358.  
  359.  
  360. Case "1800", "1810", "1820", "9180"
  361. TYS = INPUT_STR(NND, "TY_SPC", TY_SPC, ACT_MOD)
  362.  
  363.  
  364. If InStr(1, TYS, "AB") > 0 Or InStr(1, TYS, "BC") > 0 Or InStr(1, TYS, "CD") > 0 Or InStr(1, TYS, "AC") > 0 Or InStr(1, TYS, "AD") > 0 Then
  365.  
  366. MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
  367.  
  368. Else
  369.  
  370. If M1 = 0 Then
  371. If SB > 300 Then M1 = 60 Else M1 = SB / 2
  372. End If
  373.  
  374. Y = MR_Y(FA + M1, L, MRR)
  375. If InStr(1, TYS, "A") > 0 Then
  376. RS1A = T_RECT2(H - HSP - 17, Y, 34, 29)
  377. RS1B = T_CIRC(H - HSP - 2.5, Y + 17 - 2.5, 5) & T_CIRC(H - HSP - 2.5, Y - 17 + 2.5, 5)
  378. RS1C = T_CIRC(H - HSP - 34 + 2.5, Y + 17 - 2.5, 5) & T_CIRC(H - HSP - 34 + 2.5, Y - 17 + 2.5, 5)
  379. RS1D = T_RECT2(H - HSP - 17, Y + 17 - 5, 34 - 5, 10) & T_RECT2(H - HSP - 17, Y - 17 + 5, 34 - 5, 10)
  380. RS1 = RS1A & RS1B & RS1C & RS1D
  381. Else
  382. RS1 = ""
  383. End If
  384.  
  385. If InStr(1, TYS, "B") > 0 Then
  386. RS2A = T_RECT2(H - HSP - 17 - 54, Y, 34, 29)
  387. RS2B = T_CIRC(H - HSP - 2.5 - 54, Y + 17 - 2.5, 5) & T_CIRC(H - HSP - 2.5 - 54, Y - 17 + 2.5, 5)
  388. RS2C = T_CIRC(H - HSP - 34 + 2.5 - 54, Y + 17 - 2.5, 5) & T_CIRC(H - HSP - 34 + 2.5 - 54, Y - 17 + 2.5, 5)
  389. RS2D = T_RECT2(H - HSP - 17 - 54, Y + 17 - 5, 34 - 5, 10) & T_RECT2(H - HSP - 17 - 54, Y - 17 + 5, 34 - 5, 10)
  390. RS2 = RS2A & RS2B & RS2C & RS2D
  391. Else
  392. RS2 = ""
  393. End If
  394.  
  395. If InStr(1, TYS, "C") > 0 Then
  396. RS3A = T_RECT2(H - HSP - 17 - 108, Y, 34, 29)
  397. RS3B = T_CIRC(H - HSP - 2.5 - 108, Y + 17 - 2.5, 5) & T_CIRC(H - HSP - 2.5 - 108, Y - 17 + 2.5, 5)
  398. RS3C = T_CIRC(H - HSP - 34 + 2.5 - 108, Y + 17 - 2.5, 5) & T_CIRC(H - HSP - 34 + 2.5 - 108, Y - 17 + 2.5, 5)
  399. RS3D = T_RECT2(H - HSP - 17 - 108, Y + 17 - 5, 34 - 5, 10) & T_RECT2(H - HSP - 17 - 108, Y - 17 + 5, 34 - 5, 10)
  400. RS3 = RS3A & RS3B & RS3C & RS3D
  401. Else
  402. RS3 = ""
  403. End If
  404.  
  405. If InStr(1, TYS, "D") > 0 Then
  406. RS4A = T_RECT2(H - HSP - 17 - 162, Y, 34, 29)
  407. RS4B = T_CIRC(H - HSP - 2.5 - 162, Y + 17 - 2.5, 5) & T_CIRC(H - HSP - 2.5 - 162, Y - 17 + 2.5, 5)
  408. RS4C = T_CIRC(H - HSP - 34 + 2.5 - 162, Y + 17 - 2.5, 5) & T_CIRC(H - HSP - 34 + 2.5 - 162, Y - 17 + 2.5, 5)
  409. RS4D = T_RECT2(H - HSP - 17 - 162, Y + 17 - 5, 34 - 5, 10) & T_RECT2(H - HSP - 17 - 162, Y - 17 + 5, 34 - 5, 10)
  410. RS4 = RS4A & RS4B & RS4C & RS4D
  411. Else
  412. RS4 = ""
  413. End If
  414.  
  415. SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
  416. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  417. End If
  418.  
  419.  
  420. Case "2000", "2002", "9200"
  421. TYS = INPUT_STR(NND, "TY_SPC", TY_SPC, ACT_MOD)
  422.  
  423. If InStr(1, TYS, "AB") > 0 Then
  424.  
  425. MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
  426.  
  427. Else
  428.  
  429. If M1 = 0 Then
  430. If SB > 300 Then M1 = 60 Else M1 = SB / 2
  431. End If
  432.  
  433. Y = MR_Y(FA + M1, L, MRR)
  434.  
  435. If InStr(1, TYS, "A") > 0 Then
  436. RS1A = T_RECT2(H - HSP - 84 / 2, Y, 84, 47)
  437. RS1B = T_CIRC(H - HSP + 3, Y, 5) & T_RECT2(H - HSP + 3 - 2.5, Y, 5, 5)
  438. RS1C = T_CIRC(H - HSP - 90 + 3, Y, 5) & T_RECT2(H - HSP + 3 - 90 + 2.5, Y, 5, 5)
  439. RS1 = RS1A & RS1B & RS1C
  440. Else
  441. RS1 = ""
  442. End If
  443.  
  444. If InStr(1, TYS, "B") > 0 Then
  445. RS2 = T_RECT2(H - HSP - 755 - 150.5 / 2, Y, 150.5, 50)
  446. Else
  447. RS2 = ""
  448. End If
  449.  
  450. SPCp_CODIFY = RS1 & RS2
  451. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  452. End If
  453.  
  454.  
  455.  
  456. Case "2200", "2210", "2220", "9220"
  457.  
  458. If M4 = 0 Then
  459. If SB > 300 Then M4 = 60 Else M4 = SB / 2
  460. End If
  461.  
  462. If M1 < 20 Or M2 < 20 Then MsgBox ("ATTENZIONE POSSIBILE SPACCO " & COD_SPC & " ERRATO SU CODICE " & ACT_MOD)
  463. Y = MR_Y(FA + M4, L, MRR)
  464. 'If M3 = 6 Then M3 = 6.125 'CAMBIO MISURA PER DISPONIBILITA' PUNZONE
  465. 'If M3 = 3.6 Then M3 = 3.55 'CAMBIO MISURA PER DISPONIBILITA' PUNZONE
  466. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1 - M3 * 2)
  467. RS2 = T_CIRC(H - HSP - M3, Y + M1 / 2 - M3, M3 * 2) & T_CIRC(H - HSP - M3, Y - M1 / 2 + M3, M3 * 2)
  468. RS3 = T_CIRC(H - HSP - M2 + M3, Y + M1 / 2 - M3, M3 * 2) & T_CIRC(H - HSP - M2 + M3, Y - M1 / 2 + M3, M3 * 2)
  469. RS4 = T_RECT2(H - HSP - M2 / 2, Y + M1 / 2 - 5, M2 - M3 * 2, 10) & T_RECT2(H - HSP - M2 / 2, Y - M1 / 2 + 5, M2 - M3 * 2, 10)
  470. SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
  471. 'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  472.  
  473.  
  474. Case "2800", "9280"
  475. 'If M10 = 0 Then
  476. 'If SB <= 300 Then M10 = 50 Else M10 = 60
  477. 'End If
  478. '
  479. 'Y = MR_Y(FA + M10, L, MRR)
  480. 'If M6 = 3.5 Then M6 = 3.3 'CAMBIO MISURA PER DISPONIBILITA' PUNZONE
  481. 'RS1 = T_RECT2(H - HSP - M7 / 2, Y, M7, M1)
  482. 'RS2 = T_CIRC(H - HSP - M7 / 2 + M8 / 2, Y, M9) & T_CIRC(H - HSP - M7 / 2 - M8 / 2, Y, M9)
  483. '
  484. 'RS3 = T_RECT2(H - HSP - M2 / 2 - 350, Y, M2, M1)
  485. 'RS4 = T_CIRC(H - HSP - 350 + M4, Y - M5 / 2, M6) & T_CIRC(H - HSP - 350 + M4, Y + M5 / 2, M6)
  486. 'RS5 = T_CIRC(H - HSP - 350 + M4 - M3, Y - M5 / 2, M6) & T_CIRC(H - HSP - 350 + M4 - M3, Y + M5 / 2, M6)
  487. 'SPCp_CODIFY = RS1 & RS2 & RS3 & RS4 & RS5
  488. 'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  489.  
  490. MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
  491.  
  492. Case "0102", "0130", "0142", "0152", "0170", "0180", "0196", "9010"
  493. 'If M3 = 0 Then
  494. 'If SB > 300 Then M3 = 60 Else M3 = SB / 2
  495. 'End If
  496. '
  497. 'Y = MR_Y(FA + M3, L, MRR)
  498. 'RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  499. 'SPCp_CODIFY = RS1
  500. 'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  501. MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
  502.  
  503. Case "9080"
  504. 'Y = MR_Y(FA + M4, L, MRR)
  505. 'RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  506. 'SPCp_CODIFY = RS1
  507. 'MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  508.  
  509. MsgBox (COD_SPC & " BLOCCATO SU CODICE " & ACT_MOD)
  510.  
  511. Case "2900", "9290"
  512. Y = MR_Y(FA + M5, L, MRR)
  513. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  514. 'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
  515. RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
  516. SPCp_CODIFY = RS1 & RS2
  517. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  518.  
  519. Case "3000", "9300"
  520. Y = MR_Y(FA + M5, L, MRR)
  521. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  522. 'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
  523. RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
  524. RS3 = T_RECT1(H - HSP + M6 + M7, H - HSP + M6, Y - M1 / 2, Y + M1 / 2)
  525. SPCp_CODIFY = RS1 & RS2 & RS3
  526. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  527.  
  528. Case "3100", "9310"
  529. Y = MR_Y(FA + M5, L, MRR)
  530. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  531. 'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
  532. RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
  533. RS3 = T_RECT1(H - HSP + M6 + M7, H - HSP + M6, Y - M1 / 2, Y + M1 / 2)
  534. RS4 = T_RECT1(H - HSP + M6 + M7 + M8 + M9, H - HSP + M6 + M7 + M8, Y - M1 / 2, Y + M1 / 2)
  535. SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
  536. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  537.  
  538. Case "3200", "9320"
  539. Y = MR_Y(FA + M5, L, MRR)
  540. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  541. RS3 = T_RECT1(H - M8, H - M8 - M6, Y - M7 / 2, Y + M7 / 2)
  542. 'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
  543. RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
  544. SPCp_CODIFY = RS1 & RS2 & RS3
  545. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  546.  
  547. Case "3300"
  548. Y = MR_Y(FA + M5, L, MRR)
  549. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  550. 'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
  551. RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
  552. RS3 = T_RECT1(H - M10, H - M10 - M8, Y - M9 / 2, Y + M9 / 2)
  553. RS4 = T_RECT1(H - HSP + M6 + M7, H - HSP + M6, Y - M1 / 2, Y + M1 / 2)
  554. SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
  555. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  556.  
  557. Case "9330"
  558. Y = MR_Y(FA + M10, L, MRR)
  559. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  560. 'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
  561. 'RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
  562. RS3 = T_RECT1(H - HSP - M9, H - HSP - M9 - M6, Y - M5 / 2, Y + M5 / 2)
  563. 'RS4 = T_RECT1(H - HSP + M6 + M7, H - HSP + M6, Y - M1 / 2, Y + M1 / 2)
  564. RS2 = T_CIRC(H - HSP + ((M3 - M2) / 2), Y, M4) & T_CIRC(H - HSP - M2 - ((M3 - M2) / 2), Y, M4) & T_CIRC(H - HSP - M9 - M6 - ((M7 - M6) / 2), Y, M8) & T_CIRC(H - HSP - M9 + ((M7 - M6) / 2), Y, M8)
  565. SPCp_CODIFY = RS1 & RS3 & RS2
  566. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  567.  
  568.  
  569. Case "3400", "9340"
  570. Y = MR_Y(FA + M5, L, MRR)
  571. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  572. 'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
  573. RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
  574. RS3 = T_RECT1(H - HSP + M6 + M7, H - HSP + M6, Y - M1 / 2, Y + M1 / 2)
  575. RS4 = T_RECT1(H - HSP + M6 + M7 + M8 + M9, H - HSP + M6 + M7 + M8, Y - M1 / 2, Y + M1 / 2)
  576. RS5 = T_RECT1(H - M12, H - M12 - M10, Y - M11 / 2, Y + M11 / 2)
  577.  
  578. SPCp_CODIFY = RS1 & RS2 & RS3 & RS4 & RS5
  579. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  580.  
  581. 'START NUOVI SPACCHI OTIS 03/11/2022
  582. Case "50948", "50949", "50974"
  583. Y = MR_Y(FA + sf / 2, L, MRR)
  584. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  585. 'RS3 = T_RECT1(H - M8, H - M8 - M6, Y - M7 / 2, Y + M7 / 2)
  586. 'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
  587. 'RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
  588. RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + M4 / 2, M5)
  589. SPCp_CODIFY = RS1 & RS2 '& RS3
  590. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  591.  
  592. Case "50952", "50953", "51001", "50956", "50957"
  593. Y = MR_Y(FA + sf / 2, L, MRR)
  594. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M2 / 2 - M6, Y, M2, M1)
  595. 'RS3 = T_RECT1(H - M8, H - M8 - M6, Y - M7 / 2, Y + M7 / 2)
  596. 'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
  597. 'RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
  598. RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + M4 / 2, M5)
  599. RS3 = T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6, Y + M4 / 2, M5)
  600. SPCp_CODIFY = RS1 & RS2 & RS3
  601. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  602.  
  603. Case "50960", "51005", "50964", "50965"
  604. Y = MR_Y(FA + sf / 2, L, MRR)
  605. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M2 / 2 - M6, Y, M2, M1) & T_RECT2(H - HSP - M2 / 2 - M6 - M7, Y, M2, M1)
  606. 'RS3 = T_RECT1(H - M8, H - M8 - M6, Y - M7 / 2, Y + M7 / 2)
  607. 'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
  608. 'RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
  609. RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + M4 / 2, M5)
  610. RS3 = T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6, Y + M4 / 2, M5)
  611. RS4 = T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6 - M7, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6 - M7, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6 - M7, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6 - M7, Y + M4 / 2, M5)
  612. SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
  613. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  614.  
  615. Case "50968", "51007"
  616. Y = MR_Y(FA + sf / 2, L, MRR)
  617. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M2 / 2 - M6, Y, M2, M1) & T_RECT2(H - HSP - M2 / 2 - M6 - M7, Y, M2, M1) & T_RECT2(H - HSP - M2 / 2 - M6 - M7 - M8, Y, M2, M1)
  618. 'RS3 = T_RECT1(H - M8, H - M8 - M6, Y - M7 / 2, Y + M7 / 2)
  619. 'RS2 = T_SLOT(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5, 0) & T_SLOT(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5, 0)
  620. 'RS2 = T_RECT2(H - HSP - M2 - M4, Y - M3 / 2, 8, 5.5) & T_RECT2(H - HSP - M2 - M4, Y + M3 / 2, 8, 5.5)
  621. RS2 = T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + M4 / 2, M5)
  622. RS3 = T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6, Y + M4 / 2, M5)
  623. RS4 = T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6 - M7, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6 - M7, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6 - M7, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6 - M7, Y + M4 / 2, M5)
  624. RS4 = RS4 & T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6 - M7 - M8, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 - M3 / 2 - M6 - M7 - M8, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6 - M7 - M8, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2 - M6 - M7 - M8, Y + M4 / 2, M5)
  625. SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
  626. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  627.  
  628.  
  629. Case "50950", "50951", "50975" 'A
  630. Y = MR_Y(FA + sf / 2, L, MRR)
  631. 'RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M2 / 2 - M6, Y, M2, M1) & T_RECT2(H - HSP - M2 / 2 - M6 - M7, Y, M2, M1) & T_RECT2(H - HSP - M2 / 2 - M6 - M7 - M8, Y, M2, M1)
  632. RS1 = T_SLOT(H - HSP - M1, Y, 18, 6.5, 90)
  633.  
  634. RS2 = T_CIRC(H - HSP - M1, Y - M2 / 2, M7) & T_CIRC(H - HSP, Y + M2 / 2, M7) 'T_CIRC(H - HSP - M2 / 2 - M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 / 2 + M3 / 2, Y + M4 / 2, M5)
  635.  
  636. SPCp_CODIFY = RS1 & RS2
  637. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  638.  
  639.  
  640. Case "50954", "51004", "50958", "50959", "51000" 'A+B
  641. Y = MR_Y(FA + sf / 2, L, MRR)
  642.  
  643. RS1 = T_SLOT(H - HSP - M1, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M1 - M3, Y, 18, 6.5, 90)
  644.  
  645. RS2 = T_CIRC(H - HSP - M1, Y - M2 / 2, M7) & T_CIRC(H - HSP, Y + M2 / 2, M7) & T_CIRC(H - HSP - M1 - M3, Y - M2 / 2, M7) & T_CIRC(H - HSP - M3, Y + M2 / 2, M7)
  646.  
  647. SPCp_CODIFY = RS1 & RS2
  648. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  649.  
  650.  
  651. Case "50962", "51006", "50967" 'A+B+C
  652. Y = MR_Y(FA + sf / 2, L, MRR)
  653.  
  654. RS1 = T_SLOT(H - HSP - M1, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M1 - M3, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M1 - M3 - M5, Y, 18, 6.5, 90)
  655.  
  656. RS2 = T_CIRC(H - HSP - M1, Y - M2 / 2, M7) & T_CIRC(H - HSP, Y + M2 / 2, M7) & T_CIRC(H - HSP - M1 - M3, Y - M2 / 2, M7) & T_CIRC(H - HSP - M3, Y + M2 / 2, M7) & T_CIRC(H - HSP - M1 - M3 - M5, Y - M2 / 2, M7) & T_CIRC(H - HSP - M3 - M5, Y + M2 / 2, M7)
  657.  
  658. SPCp_CODIFY = RS1 & RS2
  659. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  660.  
  661.  
  662. Case "50970", "51008" 'A+B+C+D
  663. Y = MR_Y(FA + sf / 2, L, MRR)
  664.  
  665. RS1 = T_SLOT(H - HSP - M1, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M1 - M3, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M1 - M3 - M5, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M1 - M3 - M5 - M6, Y, 18, 6.5, 90)
  666.  
  667. RS2 = T_CIRC(H - HSP - M1, Y - M2 / 2, M7) & T_CIRC(H - HSP, Y + M2 / 2, M7) & T_CIRC(H - HSP - M1 - M3, Y - M2 / 2, M7) & T_CIRC(H - HSP - M3, Y + M2 / 2, M7) & T_CIRC(H - HSP - M1 - M3 - M5, Y - M2 / 2, M7) & T_CIRC(H - HSP - M3 - M5, Y + M2 / 2, M7) & T_CIRC(H - HSP - M1 - M3 - M5 - M6, Y - M2 / 2, M7) & T_CIRC(H - HSP - M3 - M5 - M6, Y + M2 / 2, M7)
  668.  
  669. SPCp_CODIFY = RS1 & RS2
  670. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  671.  
  672.  
  673. Case "50972", "50973"
  674. Y = MR_Y(FA + sf / 2, L, MRR)
  675.  
  676. RS1 = T_SLOT(H - HSP - M1 + M2, Y, 18, 6.5, 90)
  677.  
  678. RS2 = T_CIRC(H - HSP, Y, M4) & T_CIRC(H - HSP - M1, Y - M3 / 2, M4) & T_CIRC(H - HSP - M1, Y + M3 / 2, M4)
  679.  
  680. SPCp_CODIFY = RS1 & RS2
  681. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  682.  
  683.  
  684. Case "50981", "50982"
  685. Y = MR_Y(FA + sf / 2, L, MRR)
  686.  
  687. RS1 = T_RECT2(H - HSP - M2 / 2, Y, M2, M1)
  688.  
  689. RS2 = T_CIRC(H - HSP - ((M2 - M3) / 2), Y - M4 / 2, M5) & T_CIRC(H - HSP - ((M2 - M3) / 2), Y + M4 / 2, M5) & T_CIRC(H - HSP - M2 + ((M2 - M3) / 2), Y - M4 / 2, M5) & T_CIRC(H - HSP - M2 + ((M2 - M3) / 2), Y + M4 / 2, M5)
  690.  
  691. SPCp_CODIFY = RS1 & RS2
  692. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  693.  
  694. Case "50983"
  695. Y = MR_Y(FA + sf / 2, L, MRR)
  696.  
  697. RS1 = T_RECT2(H - HSP - M6 - M2 / 2, Y, M2, M1)
  698.  
  699. RS2 = T_SLOT(H - HSP - M3 - M8 + M9, Y, 18, 6.5, 90)
  700.  
  701. RS3 = T_CIRC(H - HSP, Y - M12, M11) & T_CIRC(H - HSP, Y + M5 / 2, M11) & T_CIRC(H - HSP - M3, Y - M4 / 2, M11) & T_CIRC(H - HSP - M3, Y + M4 / 2, M11) & T_CIRC(H - HSP - M3 - M7, Y, M11) & T_CIRC(H - HSP - M3 - M7 - M8, Y - M10 / 2, M11) & T_CIRC(H - HSP - M3 - M7 - M8, Y + M10 / 2, M11)
  702.  
  703. SPCp_CODIFY = RS1 & RS2 & RS3
  704. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  705.  
  706. Case "50991", "50992"
  707. Y = MR_Y(FA + sf / 2, L, MRR)
  708.  
  709.  
  710. RS1 = T_SLOT(H - HSP - M1, Y, 18, 6.5, 90)
  711.  
  712. RS2 = T_CIRC(H - HSP - M1, Y - M2 / 2, M4) & T_CIRC(H - HSP, Y + M2 / 2, M4)
  713.  
  714. RS3 = T_SLOT(H - HSP - M1 - M5 - M6 + M7, Y, 18, 6.5, 90)
  715.  
  716. RS4 = T_CIRC(H - HSP - M1 - M5 - M6, Y - M8 / 2, M9) & T_CIRC(H - HSP - M1 - M5 - M6, Y + M8 / 2, M9) & T_CIRC(H - HSP - M1 - M5, Y, M9)
  717.  
  718. SPCp_CODIFY = RS1 & RS2 & RS3 & RS4
  719. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  720.  
  721. Case "50984"
  722. Y = MR_Y(FA + sf / 2, L, MRR)
  723.  
  724. RS1 = T_RECT2(H - HSP - M15 - M8 / 2, Y, M8, M6) & T_RECT2(H - HSP - M11 - M2 / 2, Y, M2, M1)
  725.  
  726. RS2 = T_CIRC(H - HSP, Y - M16, M5) & T_CIRC(H - HSP, Y - M16 + M10, M5) & T_CIRC(H - HSP - M9, Y - M7 / 2, M5) & T_CIRC(H - HSP - M9, Y + M7 / 2, M5)
  727.  
  728. RS2 = RS2 & T_CIRC(H - HSP - M11 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
  729.  
  730. SPCp_CODIFY = RS1 & RS2
  731. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  732.  
  733. Case "50986", "50988"
  734. Y = MR_Y(FA + sf / 2, L, MRR)
  735.  
  736. RS1 = T_RECT2(H - HSP - M15 - M8 / 2, Y, M8, M6) & T_RECT2(H - HSP - M11 - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M11 - M12 - M2 / 2, Y, M2, M1)
  737.  
  738. RS2 = T_CIRC(H - HSP, Y - M16, M5) & T_CIRC(H - HSP, Y - M16 + M10, M5) & T_CIRC(H - HSP - M9, Y - M7 / 2, M5) & T_CIRC(H - HSP - M9, Y + M7 / 2, M5)
  739. RS2 = RS2 & T_CIRC(H - HSP - M11 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
  740. RS2 = RS2 & T_CIRC(H - HSP - M11 - M12 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
  741.  
  742. SPCp_CODIFY = RS1 & RS2
  743. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  744.  
  745. Case "50990", "50996"
  746. Y = MR_Y(FA + sf / 2, L, MRR)
  747.  
  748. RS1 = T_RECT2(H - HSP - M15 - M8 / 2, Y, M8, M6) & T_RECT2(H - HSP - M11 - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M11 - M12 - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M11 - M12 - M13 - M2 / 2, Y, M2, M1)
  749.  
  750. RS2 = T_CIRC(H - HSP, Y - M16, M5) & T_CIRC(H - HSP, Y - M16 + M10, M5) & T_CIRC(H - HSP - M9, Y - M7 / 2, M5) & T_CIRC(H - HSP - M9, Y + M7 / 2, M5)
  751. RS2 = RS2 & T_CIRC(H - HSP - M11 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
  752. RS2 = RS2 & T_CIRC(H - HSP - M11 - M12 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
  753. RS2 = RS2 & T_CIRC(H - HSP - M11 - M12 - M13 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M13 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M13 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M13 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
  754.  
  755. SPCp_CODIFY = RS1 & RS2
  756. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  757.  
  758. Case "50998"
  759. Y = MR_Y(FA + sf / 2, L, MRR)
  760.  
  761. RS1 = T_RECT2(H - HSP - M15 - M8 / 2, Y, M8, M6) & T_RECT2(H - HSP - M11 - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M11 - M12 - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M11 - M12 - M13 - M2 / 2, Y, M2, M1) & T_RECT2(H - HSP - M11 - M12 - M13 - M14 - M2 / 2, Y, M2, M1)
  762.  
  763. RS2 = T_CIRC(H - HSP, Y - M16, M5) & T_CIRC(H - HSP, Y - M16 + M10, M5) & T_CIRC(H - HSP - M9, Y - M7 / 2, M5) & T_CIRC(H - HSP - M9, Y + M7 / 2, M5)
  764. RS2 = RS2 & T_CIRC(H - HSP - M11 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
  765. RS2 = RS2 & T_CIRC(H - HSP - M11 - M12 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
  766. RS2 = RS2 & T_CIRC(H - HSP - M11 - M12 - M13 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M13 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M13 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M13 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
  767. RS2 = RS2 & T_CIRC(H - HSP - M11 - M12 - M13 - M14 - M2 / 2 + M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M13 - M14 - M2 / 2 + M3 / 2, Y + M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M13 - M14 - M2 / 2 - M3 / 2, Y - M4 / 2, M5) & T_CIRC(H - HSP - M11 - M12 - M13 - M14 - M2 / 2 - M3 / 2, Y + M4 / 2, M5)
  768.  
  769. SPCp_CODIFY = RS1 & RS2
  770. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  771.  
  772. Case "50985"
  773. Y = MR_Y(FA + sf / 2, L, MRR)
  774.  
  775. RS1 = T_RECT2(H - HSP - M12 - M10 / 2, Y, M10, M8)
  776.  
  777. RS2 = T_SLOT(H - HSP - M15 - M1, Y, 18, 6.5, 90)
  778.  
  779. RS3 = T_CIRC(H - HSP, Y - M13, M7) & T_CIRC(H - HSP, Y - M13 + M14, M7) & T_CIRC(H - HSP - M11, Y - M9 / 2, M7) & T_CIRC(H - HSP - M11, Y + M9 / 2, M7) & T_CIRC(H - HSP - M15 - M1, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15, Y + M2 / 2, M7)
  780.  
  781. SPCp_CODIFY = RS1 & RS2 & RS3
  782. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  783.  
  784. Case "50987", "50989"
  785. Y = MR_Y(FA + sf / 2, L, MRR)
  786.  
  787. RS1 = T_RECT2(H - HSP - M12 - M10 / 2, Y, M10, M8)
  788.  
  789. RS2 = T_SLOT(H - HSP - M15 - M1, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M15 - M3 - M1, Y, 18, 6.5, 90)
  790.  
  791. RS3 = T_CIRC(H - HSP, Y - M13, M7) & T_CIRC(H - HSP, Y - M13 + M14, M7) & T_CIRC(H - HSP - M11, Y - M9 / 2, M7) & T_CIRC(H - HSP - M11, Y + M9 / 2, M7) & T_CIRC(H - HSP - M15 - M1, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15, Y + M2 / 2, M7)
  792. RS3 = RS3 & T_CIRC(H - HSP - M15 - M1 - M3, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15 - M3, Y + M2 / 2, M7)
  793.  
  794. SPCp_CODIFY = RS1 & RS2 & RS3
  795. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  796.  
  797. Case "50995", "50997"
  798. Y = MR_Y(FA + sf / 2, L, MRR)
  799.  
  800. RS1 = T_RECT2(H - HSP - M12 - M10 / 2, Y, M10, M8)
  801.  
  802. RS2 = T_SLOT(H - HSP - M15 - M1, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M15 - M3 - M1, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M15 - M3 - M5 - M1, Y, 18, 6.5, 90)
  803.  
  804. RS3 = T_CIRC(H - HSP, Y - M13, M7) & T_CIRC(H - HSP, Y - M13 + M14, M7) & T_CIRC(H - HSP - M11, Y - M9 / 2, M7) & T_CIRC(H - HSP - M11, Y + M9 / 2, M7) & T_CIRC(H - HSP - M15 - M1, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15, Y + M2 / 2, M7)
  805. RS3 = RS3 & T_CIRC(H - HSP - M15 - M1 - M3, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15 - M3, Y + M2 / 2, M7)
  806. RS3 = RS3 & T_CIRC(H - HSP - M15 - M1 - M3 - M5, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15 - M3 - M5, Y + M2 / 2, M7)
  807.  
  808. SPCp_CODIFY = RS1 & RS2 & RS3
  809. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  810.  
  811. Case "50999"
  812. Y = MR_Y(FA + sf / 2, L, MRR)
  813.  
  814. RS1 = T_RECT2(H - HSP - M12 - M10 / 2, Y, M10, M8)
  815.  
  816. RS2 = T_SLOT(H - HSP - M15 - M1, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M15 - M3 - M1, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M15 - M3 - M5 - M1, Y, 18, 6.5, 90) & T_SLOT(H - HSP - M15 - M3 - M5 - M6 - M1, Y, 18, 6.5, 90)
  817.  
  818. RS3 = T_CIRC(H - HSP, Y - M13, M7) & T_CIRC(H - HSP, Y - M13 + M14, M7) & T_CIRC(H - HSP - M11, Y - M9 / 2, M7) & T_CIRC(H - HSP - M11, Y + M9 / 2, M7) & T_CIRC(H - HSP - M15 - M1, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15, Y + M2 / 2, M7)
  819. RS3 = RS3 & T_CIRC(H - HSP - M15 - M1 - M3, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15 - M3, Y + M2 / 2, M7)
  820. RS3 = RS3 & T_CIRC(H - HSP - M15 - M1 - M3 - M5, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15 - M3 - M5, Y + M2 / 2, M7)
  821. RS3 = RS3 & T_CIRC(H - HSP - M15 - M1 - M3 - M5 - M6, Y - M2 / 2, M7) & T_CIRC(H - HSP - M15 - M3 - M5 - M6, Y + M2 / 2, M7)
  822.  
  823. SPCp_CODIFY = RS1 & RS2 & RS3
  824. MsgBox ("CONTROLLARE SPACCO " & COD_SPC & " SU CODICE " & ACT_MOD)
  825.  
  826. 'END NUOVI SPACCHI OTIS
  827.  
  828.  
  829. Case "9932", "9933", "9934"     'SPACCO WITTUR ZOO
  830.  
  831.  
  832. 'DS = 14
  833. 'Y = MR_Y(L - (FA + DS), L, MRR)
  834.  
  835. If MRR = 2 Then Y = 70.2 'LEFT
  836. If MRR = 1 Then Y = 74.2 'RIGHT
  837.  
  838. RS1 = T_CIRC(H - 950 - 2.5, Y + 0.5, 3) & T_CIRC(H - 950, Y + 0.5 + 27.5, 3) & T_CIRC(H - 950 - 2.5, Y + 0.5 + 55, 3)
  839. RS2 = T_CIRC(H - 950 + 2.5 - 230, Y + 0.5, 3) & T_CIRC(H - 950 - 230, Y + 0.5 + 27.5, 3) & T_CIRC(H - 950 + 2.5 - 230, Y + 0.5 + 55, 3)
  840.  
  841. RS3 = T_RECT1(H - 950 - 230 + 115 - 8, H - 950 - 230 + 115 + 8, Y + 56 - 3, Y + 3)
  842. RS4 = T_RECT1(H - 950 - 230 + 115, H - 950 - 230 + 115 + 20, Y + 10.5 + 3, Y + 10.5 + 35 - 3)
  843. RS5 = T_CIRC(H - 950 - 230 + 115 - 5, Y + 56 - 3, 6) & T_CIRC(H - 950 - 230 + 115 + 5, Y + 56 - 3, 6) & T_CIRC(H - 950 - 230 + 115 - 5, Y + 3, 6) & T_CIRC(H - 950 - 230 + 115 + 5, Y + 3, 6)
  844. RS6 = T_CIRC(H - 950 - 230 + 115 - 8 + 28 - 3, Y + 10.5 + 3, 6) & T_CIRC(H - 950 - 230 + 115 - 8 + 28 - 3, Y + 56 - 10.5 - 3, 6)
  845. RS7 = T_RECT1(H - 950 - 230 + 115 - 5, H - 950 - 230 + 115 + 5, Y, Y + 10) & T_RECT1(H - 950 - 230 + 115 - 5, H - 950 - 230 + 115 + 5, Y + 56, Y + 56 - 10)
  846. RS8 = T_RECT1(H - 950 - 230 + 115 + 17, H - 950 - 230 + 115 + 7, Y + 10.5, Y + 10.5 + 10) & T_RECT1(H - 950 - 230 + 115 + 17, H - 950 - 230 + 115 + 7, Y + 10.5 + 35, Y + 10.5 + 35 - 10)
  847. RS9 = T_RAD(H - 950 - 230 + 115 + 8, Y + 10.5, 2) & T_RAD(H - 950 - 230 + 115 + 8, Y + 10.5 + 35, 3)
  848. If COD_SPC = "9933" Then
  849. If MRR = 1 Then Y2 = 25 + 40 + 45 - 4.8 'LEFT
  850. If MRR = 2 Then Y2 = 15 + 40 + 45 - 4.8 'RIGHT
  851. RS10 = T_CIRC(H - 150, Y2, 19)
  852. Else
  853. RS10 = ""
  854. End If
  855. If COD_SPC = "9934" Then
  856. If MRR = 1 Then Y2 = 25 + 40 + 45 - 4.8 'LEFT
  857. If MRR = 2 Then Y2 = 15 + 40 + 45 - 4.8 'RIGHT
  858. RS10 = T_CIRC(H - 150, Y2, 19) & T_CIRC(H - 230, Y2, 19)
  859. Else
  860. RS10 = ""
  861. End If
  862.  
  863. SPCp_CODIFY = RS1 & RS2 & RS3 & RS4 & RS5 & RS6 & RS7 & RS8 & RS9 & RS10
  864. QCSP = H - (950 + 230 / 2)
  865.  
  866. Case "9999"
  867. SPCp_CODIFY = ""
  868.  
  869. Case Else
  870. MsgBox ("CODICE SPACCO " & COD_SPC & " NON CODIFICATO SU " & ACT_MOD)
  871. End Select
  872.  
  873.  
  874.  
  875.  
  876. End Function
  877.  
  878.  
  879. Function SPCi_CODIFY(ByVal NND As Integer, ByVal CD_IN As String, ByVal FA As Double, ByVal H As Double, ByVal L As Double, ByVal HTRV As Double) As String
  880.  
  881.  
  882.  
  883. If CD_IN = "50033" Then CD_IN = "2704"
  884. If CD_IN = "50102" Then CD_IN = "2706"
  885.  
  886.  
  887. M1 = INPUT_NUM(NND, "M1_SPC", M1_SPC, ACT_MOD)
  888. If M1 = 0 Or M1 = -1 Then Exit Function
  889. HSP = INPUT_NUM(NND, "H_SPC", H_SPC, ACT_MOD)
  890. M2 = INPUT_NUM(NND, "M2_SPC", M2_SPC, ACT_MOD)
  891. M3 = INPUT_NUM(NND, "M3_SPC", M3_SPC, ACT_MOD)
  892. M4 = INPUT_NUM(NND, "M4_SPC", M4_SPC, ACT_MOD)
  893. M5 = INPUT_NUM(NND, "M5_SPC", M5_SPC, ACT_MOD)
  894. M6 = INPUT_NUM(NND, "M6_SPC", M6_SPC, ACT_MOD)
  895. M7 = INPUT_NUM(NND, "M7_SPC", M7_SPC, ACT_MOD)
  896.  
  897. RT1 = ""
  898. RT2 = ""
  899. RT3 = ""
  900. RT4 = ""
  901. SPCi_CODIFY = ""
  902.  
  903.  
  904. 'If LSX <> LDX Then MsgBox "ATTENZIONE ALLA CENTRATURA DELLO SPACCO SU TRAVERSA"
  905. XX = H / 2 '- (LSX - LDX) / 2
  906.  
  907.  
  908. Select Case CD_IN
  909. Case "1702", "1750", "2700", "2702", "2704", "2706", "9270"
  910. RT1 = T_RECT2(XX, FA - M4 - M2 / 2, M1, M2)
  911. If M3 > 0 Then
  912. RT2 = T_RECT1(XX - M5 / 2, XX + M5 / 2, FA - M4 - 10, FA - M4 + M3)
  913. Else
  914. RT2 = ""
  915. End If
  916. SPCi_CODIFY = RT1 & RT2
  917. MsgBox ("CONTROLLARE SPACCO INDICATORE SU TRAVERSA " & ACT_MOD)
  918.  
  919. Case "2500", "2560", "9250"
  920. RT1 = T_RECT2(XX, FA - M4 - M2 / 2, M1, M2)
  921. RT2 = T_CIRC(XX - M3 / 2, FA - M4 - M2 / 2, M5) & T_CIRC(XX + M3 / 2, FA - M4 - M2 / 2, M5)
  922. If M6 > 0 Then
  923. RT3 = T_CIRC(XX - M3 / 2, FA - M4 + M6 - M2 / 2, M5) & T_CIRC(XX + M3 / 2, FA - M4 + M6 - M2 / 2, M5)
  924. Else
  925. RT3 = ""
  926. End If
  927. SPCi_CODIFY = RT1 & RT2 & RT3
  928. MsgBox ("CONTROLLARE SPACCO INDICATORE SU TRAVERSA " & ACT_MOD)
  929.  
  930. Case "2600", "9260"
  931. RT1 = T_RECT2(XX, FA - M5, M1, M2)
  932. RT2 = T_RECT1(XX - M3 / 2, XX - M3 / 2 + ((M3 - M1) / 2), FA - M5 - M4 / 2, FA - M5 + M4 / 2)
  933. RT3 = T_RECT1(XX + M3 / 2 - ((M3 - M1) / 2), XX + M3 / 2, FA - M5 - M4 / 2, FA - M5 + M4 / 2)
  934. SPCi_CODIFY = RT1 & RT2 & RT3
  935. MsgBox ("CONTROLLARE SPACCO INDICATORE SU TRAVERSA " & ACT_MOD)
  936.  
  937. Case "2100", "9210"
  938. RT1 = T_RECT2(XX, FA - M5, M1, M2)
  939. RT2 = T_RECT1(XX - M3 / 2, XX - M3 / 2 + ((M3 - M1) / 2), FA - M5 - M4 / 2, FA - M5 + M4 / 2)
  940. RT3 = T_RECT1(XX + M3 / 2 - ((M3 - M1) / 2), XX + M3 / 2, FA - M5 - M4 / 2, FA - M5 + M4 / 2)
  941. RT4 = T_CIRC(XX - M6 / 2, FA - M5, M7) & T_CIRC(XX + M6 / 2, FA - M5, M7)
  942. SPCi_CODIFY = RT1 & RT2 & RT3 & RT4
  943. MsgBox ("CONTROLLARE SPACCO INDICATORE SU TRAVERSA " & ACT_MOD)
  944.  
  945. Case "9999"
  946. SPCi_CODIFY = ""
  947.  
  948. Case Else
  949. MsgBox ("CODICE SPACCO INDICATORE " & CD_IN & " NON CODIFICATO SU " & ACT_MOD)
  950. End Select
  951.  
  952.  
  953.  
  954. End Function
  955.  
  956.  
  957.  
  958.  
  959. Function SPC_PULS(ByVal CMM As String, ByVal COD_SP As Single, ByVal FA As Double, ByVal H As Double, ByVal SVIL As Double, ByVal SDX As Byte, ByVal LM As Double, ByVal OFST As Single) As String
  960.  
  961. If OFST <> 0 Then MsgBox ("ATTENZIONE OFFSET SULLO SPACCO SBAGLIATO SUL CODICE " & ACT_MOD)
  962. '*********************************************************
  963. SPC_PULS = SPCp_CODIFY(CMM, COD_SP, FA, H, SVIL, SDX, LM)
  964. If SPC_PULS <> "" Then Exit Function
  965. '*********************************************************
  966.  
  967.  
  968.  
  969. QCSP = 0
  970. SPC_PULS = Empty
  971. Spclist = FILELIST(SPC_FOLD, True, "*")
  972.  
  973. SPC_FOUND = 0
  974. TYCK = ""
  975. For i = 1 To UBound(Spclist)
  976.  
  977. CDCK = Right(Spclist(i), InStr(1, StrReverse(Spclist(i)), "\", vbBinaryCompare) - 1)
  978. CDCK = Left(CDCK, InStr(1, CDCK, ".", vbBinaryCompare) - 1)
  979.  
  980. If CDCK = COD_SP Then
  981. Select Case SPC_FOUND
  982. Case 0
  983. SPC_FOUND = 1
  984. NF_SP = Spclist(i)
  985. TYCK = Left(Spclist(i), Len(Spclist(i)) - InStr(1, StrReverse(Spclist(i)), "\", vbBinaryCompare))
  986. TYCK = Right(TYCK, InStr(1, StrReverse(TYCK), "\", vbBinaryCompare) - 1)
  987. Case 1
  988. MsgBox "ERRORE SU MODULO SPACCHI"
  989. Case Else
  990. MsgBox "ERRORE SU MODULO SPACCHI"
  991. End Select
  992. End If
  993. Next i
  994.  
  995.  
  996. If SPC_FOUND = 0 And COD_SP <> "9999" Then MsgBox "SPACCO " & COD_SP & " NON TROVATO", vbExclamation
  997.  
  998. Select Case TYCK
  999.  
  1000. Case "T01"                 'SPACCO RETTANGOLARE SINGOLO O MULTIPLO
  1001. NFDATA = FreeFile
  1002. Open NF_SP For Input As #NFDATA
  1003. Line Input #NFDATA, ST_COD
  1004. Line Input #NFDATA, VOID_ROW
  1005. Line Input #NFDATA, lS
  1006. MLTSPC:
  1007. Line Input #NFDATA, HS
  1008. Line Input #NFDATA, QS
  1009. lS = Val(lS)
  1010. HS = Val(HS)
  1011. QS = Val(QS) + OFST
  1012. If LM > 300 Then RCC = 60 Else RCC = LM / 2
  1013. Y = MR_Y(FA + RCC, SVIL, SDX)
  1014. RS1 = T_RECT2(H - QS - HS / 2, Y, HS, lS)
  1015. SPC_PULS = SPC_PULS & RS1
  1016. lS = ""
  1017. If QCSP = 0 Then QCSP = H - QS - HS / 2
  1018. If Not EOF(NFDATA) Then Line Input #NFDATA, lS
  1019. If lS <> "" Then
  1020. SPC_PULS = SPC_PULS
  1021. GoTo MLTSPC
  1022. End If
  1023. Close #NFDATA
  1024. GoTo END_SPC
  1025.  
  1026.  
  1027. Case "T02"
  1028. NFDATA = FreeFile
  1029. Open NF_SP For Input As #NFDATA
  1030. Line Input #NFDATA, ST_COD
  1031. Line Input #NFDATA, VOID_ROW
  1032. Line Input #NFDATA, lS
  1033. Line Input #NFDATA, HS
  1034. Line Input #NFDATA, QS
  1035. Line Input #NFDATA, DIAM
  1036. Line Input #NFDATA, DISTF
  1037. Close #NFDATA
  1038. lS = Val(lS)
  1039. HS = Val(HS)
  1040. QS = Val(QS) + OFST
  1041. DIAM = Val(DIAM)
  1042. DISTF = Val(DISTF)
  1043. If LM > 300 Then RCC = 60 Else RCC = LM / 2
  1044. Y = MR_Y(FA + RCC, SVIL, SDX)
  1045. RS1 = T_RECT2(H - QS - HS / 2, Y, HS, lS)
  1046. RS2 = T_CIRC(H - QS - HS / 2 + DISTF / 2, Y, DIAM)
  1047. RS3 = T_CIRC(H - QS - HS / 2 - DISTF / 2, Y, DIAM)
  1048. SPC_PULS = RS1 & RS2 & RS3
  1049. QCSP = H - QS - HS / 2
  1050. GoTo END_SPC
  1051.  
  1052.  
  1053.  
  1054. Case "T03"
  1055. NFDATA = FreeFile
  1056. Open NF_SP For Input As #NFDATA
  1057. Line Input #NFDATA, ST_COD
  1058. Line Input #NFDATA, VOID_ROW
  1059. Line Input #NFDATA, lS
  1060. Line Input #NFDATA, HS
  1061. Line Input #NFDATA, QS
  1062. Line Input #NFDATA, AI
  1063. Line Input #NFDATA, LI
  1064. Close #NFDATA
  1065. lS = Val(lS)
  1066. HS = Val(HS)
  1067. QS = Val(QS) + OFST
  1068. AI = Val(AI)
  1069. LI = Val(LI)
  1070. If LM > 300 Then RCC = 60 Else RCC = LM / 2
  1071. Y = MR_Y(FA + RCC, SVIL, SDX)
  1072. SVP = 4 'SOVRAPPOSIZIONE SPACCHI LATERALI
  1073. RS1 = T_RECT2(H - QS - HS / 2, Y, HS, lS)
  1074. RS2 = T_RECT2(H - QS + (AI - SVP) / 2, Y, AI + SVP, LI)
  1075. RS3 = T_RECT2(H - QS - HS - (AI - SVP) / 2, Y, AI + SVP, LI)
  1076. SPC_PULS = RS1 & RS2 & RS3
  1077. QCSP = H - QS - HS / 2
  1078. GoTo END_SPC
  1079.  
  1080.  
  1081. Case "T04"
  1082. NFDATA = FreeFile
  1083. Open NF_SP For Input As #NFDATA
  1084. Line Input #NFDATA, ST_COD
  1085. Line Input #NFDATA, VOID_ROW
  1086. Line Input #NFDATA, QS
  1087. Line Input #NFDATA, DIAM
  1088. Close #NFDATA
  1089. QS = Val(QS) + OFST
  1090. DIAM = Val(DIAM)
  1091. If LM > 300 Then RCC = 60 Else RCC = LM / 2
  1092. Y = MR_Y(FA + RCC, SVIL, SDX)
  1093. RS1 = T_CIRC(H - QS, Y, DIAM)
  1094. SPC_PULS = RS1
  1095. QCSP = H - QS
  1096. GoTo END_SPC
  1097.  
  1098.  
  1099.  
  1100. Case "T05"
  1101. NFDATA = FreeFile
  1102. Open NF_SP For Input As #NFDATA
  1103. Line Input #NFDATA, ST_COD
  1104. Line Input #NFDATA, VOID_ROW
  1105. Line Input #NFDATA, NS   'NUMERO SPACCHI
  1106. NS = Val(NS)
  1107. For KT = 1 To NS
  1108. Line Input #NFDATA, lS
  1109. Line Input #NFDATA, HS
  1110. Line Input #NFDATA, RR
  1111. Line Input #NFDATA, QS
  1112. lS = Val(lS)
  1113. HS = Val(HS)
  1114. RR = Val(RR)
  1115. QS = Val(QS) + OFST
  1116. If LM > 300 Then DS = 60 - lS / 2 Else DS = LM / 2 - lS / 2
  1117. DD = RR * 2
  1118. LSR = lS - DD
  1119. HSR = HS - DD
  1120. LL = HSR
  1121. HH = lS
  1122. LUT = 10
  1123. Y = MR_Y(FA + DS + lS / 2, SVIL, SDX)
  1124. RS1 = T_RECT2(H - QS - HS / 2, Y, HSR, lS)
  1125. RS2 = T_RECT2(H - QS - LUT / 2, Y, LUT, LSR)
  1126. RS3 = T_RECT2(H - QS - HS + LUT / 2, Y, LUT, LSR)
  1127. RS4 = T_CIRC(H - QS - RR, Y + lS / 2 - RR, DD)
  1128. RS5 = T_CIRC(H - QS - RR, Y - lS / 2 + RR, DD)
  1129. RS6 = T_CIRC(H - QS - HS + RR, Y + lS / 2 - RR, DD)
  1130. RS7 = T_CIRC(H - QS - HS + RR, Y - lS / 2 + RR, DD)
  1131. SPC_PULS = SPC_PULS & RS2 & RS3 & RS1 & RS4 & RS5 & RS6 & RS7
  1132. If QCSP = 0 Then QCSP = H - QS - HS / 2
  1133. Next KT
  1134. Close #NFDATA
  1135. GoTo END_SPC
  1136.  
  1137.  
  1138. Case "T06"                     'SPACCHI OTIS
  1139. NFDATA = FreeFile
  1140. Open NF_SP For Input As #NFDATA
  1141. Line Input #NFDATA, ST_COD
  1142. Line Input #NFDATA, VOID_ROW
  1143. Line Input #NFDATA, NS   'NUMERO SPACCHI
  1144. Line Input #NFDATA, TPS  'TIPO SPACCHI
  1145. NS = Val(NS)
  1146. For KT = 1 To NS
  1147. Line Input #NFDATA, lS
  1148. Line Input #NFDATA, HS
  1149. Line Input #NFDATA, DMF  'DIAMETRO FORI
  1150. Line Input #NFDATA, IX   'INTERASSE ORIZZONTALE FRA LA COPPIA DI FORI INF
  1151. Line Input #NFDATA, QS   'QUOTA CENTRO SPACCO RETTANGOLARE
  1152. Line Input #NFDATA, DYI  'DISTANZA VERTICALE DA CENTRO SPACCO RETTANGOLARE A COPPIA FORI INFERIORI
  1153. Line Input #NFDATA, DYS  'DISTANZA VERTICALE DA CENTRO SPACCO RETTANGOLARE FORO SUPERIORE
  1154. lS = Val(lS)
  1155. HS = Val(HS)
  1156. IX = Val(IX)
  1157. QS = Val(QS) + OFST
  1158. DYI = Val(DYI)
  1159. DYS = Val(DYS)
  1160. DMF = Val(DMF)
  1161. If LM > 300 Then RCC = 60 Else RCC = LM / 2
  1162. Y = MR_Y(FA + RCC, SVIL, SDX)
  1163. 'RS1 = T_RECT2(H - QS, Y, HS, lS)
  1164. RS1 = T_SLOT(H - QS, Y, lS, HS, 90)
  1165. RS2 = T_CIRC(H - QS + DYI, Y - IX / 2, DMF)
  1166. RS3 = T_CIRC(H - QS + DYI, Y + IX / 2, DMF)
  1167. RS4 = T_CIRC(H - QS - DYS, Y, DMF)
  1168. SPC_PULS = SPC_PULS & RS1 & RS2 & RS3 & RS4
  1169. QCSP = H - QS - HS
  1170. Next KT
  1171. GoTo END_SPC
  1172.  
  1173.  
  1174.  
  1175. Case "T07"                       'SPACCO RETTANGOLO CON 3+3 FORI SIMM. DIAM4.5
  1176. NFDATA = FreeFile
  1177. Open NF_SP For Input As #NFDATA
  1178. Line Input #NFDATA, ST_COD
  1179. Line Input #NFDATA, VOID_ROW
  1180. Line Input #NFDATA, lS
  1181. Line Input #NFDATA, HS
  1182. Line Input #NFDATA, QS
  1183. Line Input #NFDATA, M4
  1184. Line Input #NFDATA, DISTF
  1185. Close #NFDATA
  1186. DIAM = 4.5
  1187. lS = Val(lS)
  1188. HS = Val(HS)
  1189. QS = Val(QS) + OFST
  1190. DIAM = Val(DIAM)
  1191. DISTF = Val(DISTF)
  1192. If LM > 300 Then RCC = 60 Else RCC = LM / 2
  1193. Y = MR_Y(FA + RCC, SVIL, SDX)
  1194. RS1 = T_RECT2(H - QS - HS / 2, Y, HS, lS)
  1195. RS2 = T_CIRC(H - QS - HS / 2 + DISTF / 2, Y, DIAM)
  1196. RS3 = T_CIRC(H - QS - HS / 2 + DISTF / 2, Y + M4 / 2, DIAM)
  1197. RS4 = T_CIRC(H - QS - HS / 2 + DISTF / 2, Y - M4 / 2, DIAM)
  1198. RS5 = T_CIRC(H - QS - HS / 2 - DISTF / 2, Y, DIAM)
  1199. RS6 = T_CIRC(H - QS - HS / 2 - DISTF / 2, Y + M4 / 2, DIAM)
  1200. RS7 = T_CIRC(H - QS - HS / 2 - DISTF / 2, Y - M4 / 2, DIAM)
  1201. SPC_PULS = RS1 & RS2 & RS3 & RS4 & RS5 & RS6 & RS7
  1202. QCSP = H - QS - HS / 2
  1203. GoTo END_SPC
  1204.  
  1205.  
  1206. Case "T08"                       'SPACCO SPAGNA OTIS COPPIA FORI + ASOLA + FORO SINGOLO
  1207. NFDATA = FreeFile
  1208. Open NF_SP For Input As #NFDATA
  1209. Line Input #NFDATA, ST_COD
  1210. MsgBox "CONTROLLARE SPACCO " & ST_COD
  1211. If COD_SP <> "50390" Then MsgBox "ATTENZIONE POSSIBILE CHE IL PEZZO CON SPACCO " & COD_SP & " DEBBA PASSARE PCA, CONTROLLARE!"
  1212. Line Input #NFDATA, VOID_ROW
  1213. Line Input #NFDATA, NS   'NUMERO SPACCHI
  1214. NS = Val(NS)
  1215. For KT = 1 To NS
  1216. Line Input #NFDATA, Q_AS
  1217. Line Input #NFDATA, LAR_AS
  1218. Line Input #NFDATA, ALT_AS
  1219. Line Input #NFDATA, q_cf
  1220. Line Input #NFDATA, INT_FOR
  1221. Line Input #NFDATA, DIM_FORI
  1222. Line Input #NFDATA, q_f
  1223. Line Input #NFDATA, DIM_FORO
  1224.  
  1225. Q_AS = Val(Q_AS)
  1226. LAR_AS = Val(LAR_AS)
  1227. ALT_AS = Val(ALT_AS)
  1228. q_cf = Val(q_cf)
  1229. DIM_FORI = Val(DIM_FORI)
  1230. q_f = Val(q_f)
  1231. DIM_FORO = Val(DIM_FORO)
  1232.  
  1233. Y = MR_Y(FA + LM / 2, SVIL, SDX)
  1234. RS1 = T_CIRC(H - q_f, Y, DIM_FORO)
  1235. RS2 = T_CIRC(H - Q_AS, Y - LAR_AS / 2 + 3.5, ALT_AS)
  1236. RS3 = T_CIRC(H - Q_AS, Y + LAR_AS / 2 - 3.5, ALT_AS)
  1237. RS4 = T_RECT2(H - Q_AS, Y, ALT_AS, LAR_AS - ALT_AS)
  1238. RS5 = T_CIRC(H - q_cf, Y - INT_FOR / 2, DIM_FORI)
  1239. If KT = NS Then RS6 = T_CIRC(H - q_cf, Y + INT_FOR / 2, DIM_FORI) Else RS6 = T_CIRC(H - q_cf, Y + INT_FOR / 2, DIM_FORI)
  1240. SPC_PULS = SPC_PULS & RS1 & RS2 & RS3 & RS4 & RS5 & RS6
  1241. QCSP = H - (q_cf + (q_f - q_cf) / 2)
  1242.  
  1243. Next KT
  1244. Close #NFDATA
  1245. GoTo END_SPC
  1246.  
  1247.  
  1248.  
  1249.  
  1250. End Select
  1251.  
  1252.  
  1253. SPC_INSERT:
  1254.  
  1255. '******************************************************
  1256. If InStr(1, COD_SP, "999") > 0 And SPC_R_OLD <> "" Then 'RIPETERE LO SPACCO PRECEDENTE
  1257. SPC_OLD = MsgBox("VUOI INSERIRE LO SPACCO PRECEDENTE?", vbYesNo)
  1258. If SPC_OLD = vbYes Then
  1259. SPC_R = SPC_R_OLD
  1260. QCSP = QCSP_OLD
  1261. SPC_PULS = SPC_R
  1262. GoTo END_SPC
  1263. End If
  1264. End If
  1265. '******************************************************
  1266.  
  1267. CUR_COM = CMM
  1268. UserForm2.Show
  1269.  
  1270. If PULS_TYPE = 0 Then Exit Function
  1271. CNTR = Empty
  1272. RSN = MsgBox("SPACCO CENTRATO SU MONTANTE?", vbYesNo)
  1273. Select Case RSN
  1274. Case vbYes
  1275. CNTR = 1
  1276. Case vbNo
  1277. CNTR = 0
  1278. End Select
  1279.  
  1280.  
  1281.  
  1282. '*****************************************PER REPORT SPACCHI
  1283. RP = RP + 1
  1284. RPT_SPC(RP, 1, 1) = INFO_DAT(CMM, 0, 2)
  1285. RPT_SPC(RP, 1, 2) = "COMMESSA"
  1286. If CNTR = 1 Then RPT_SPC(RP, 2, 1) = "SI" Else RPT_SPC(RP, 2, 1) = "NO"
  1287. RPT_SPC(RP, 2, 2) = "SPACCO CENTRATO SU MONTANTE?"
  1288. RP2 = 2
  1289. '***********************************************************
  1290.  
  1291.  
  1292.  
  1293.  
  1294. Select Case PULS_TYPE
  1295.  
  1296. Case 1       'SPACCO RETTANGOLARE SINGOLO
  1297. QS = Val(INPUT_VAL(1, "QUOTA PARTENZA SPACCO", QS, "")) + OFST
  1298. HS = INPUT_VAL(1, "ALTEZZA SPACCO", HS, "")
  1299. lS = INPUT_VAL(1, "LARGHEZZA SPACCO", lS, "")
  1300. Select Case CNTR
  1301. Case 0
  1302. DS = INPUT_VAL(1, "DISTANZA SPACCO DA APERTURA", DS, "")
  1303. Case 1
  1304. DS = (LM - lS) / 2
  1305. Case Else
  1306. MsgBox "ERRORE COORDINATA ORIZZONTALE SPACCO", vbCritical
  1307. Exit Function
  1308. End Select
  1309.  
  1310. Y = MR_Y(FA + DS + lS / 2, SVIL, SDX)
  1311. RS1 = T_RECT2(H - QS - HS / 2, Y, HS, lS)
  1312. SPC_R = RS1
  1313. QCSP = H - QS - HS / 2
  1314.  
  1315. Case 2      'SPACCO RETTANGOLARE SINGOLO CON COPPIA DI FORI CENTRATI
  1316. QS = Val(INPUT_VAL(1, "QUOTA PARTENZA SPACCO", QS, "")) + OFST
  1317. HS = INPUT_VAL(1, "ALTEZZA SPACCO", HS, "")
  1318. lS = INPUT_VAL(1, "LARGHEZZA SPACCO", lS, "")
  1319.  
  1320. Select Case CNTR
  1321. Case 0
  1322. DS = INPUT_VAL(1, "DISTANZA SPACCO DA APERTURA", DS, "")
  1323. Case 1
  1324. DS = (LM - lS) / 2
  1325. Case Else
  1326. MsgBox "ERRORE COORDINATA ORIZZONTALE SPACCO", vbCritical
  1327. Exit Function
  1328. End Select
  1329.  
  1330.  
  1331. KF = INPUT_VAL(1, "INTERASSE VERTICALE FORI", KF, "")
  1332. DF = INPUT_VAL(1, "DIAMETRO FORI", DF, "")
  1333.  
  1334. Y = MR_Y(FA + DS + lS / 2, SVIL, SDX)
  1335.  
  1336. RS1 = T_RECT2(H - QS - HS / 2, Y, HS, lS)
  1337. RS2 = T_CIRC(H - QS - HS / 2 - KF / 2, Y, DF)
  1338. RS3 = T_CIRC(H - QS - HS / 2 + KF / 2, Y, DF)
  1339. SPC_R = RS1 & RS2 & RS3
  1340. QCSP = H - QS - HS / 2
  1341.  
  1342. Case 3
  1343. QS = Val(INPUT_VAL(1, "QUOTA PARTENZA SPACCO", QS, "")) + OFST
  1344. HS = INPUT_VAL(1, "ALTEZZA SPACCO", HS, "")
  1345. lS = INPUT_VAL(1, "LARGHEZZA SPACCO", lS, "")
  1346. LI = INPUT_VAL(1, "LARGHEZZA INCAVO", LI, "")
  1347.  
  1348. Select Case CNTR
  1349. Case 0
  1350. DS = INPUT_VAL(1, "DISTANZA SPACCO DA APERTURA", DS, "")
  1351. Case 1
  1352. DS = (LM - lS) / 2
  1353. Case Else
  1354. MsgBox "ERRORE COORDINATA ORIZZONTALE SPACCO", vbCritical
  1355. Exit Function
  1356. End Select
  1357.  
  1358. Y = MR_Y(FA + DS + lS / 2, SVIL, SDX)
  1359. RS1 = T_RECT2(H - QS - HS - 1, Y, 10, LI)
  1360. RS2 = T_RECT2(H - QS + 1, Y, 10, LI)
  1361. RS3 = T_RECT2(H - QS - HS / 2, Y, HS, lS)
  1362. SPC_R = RS1 & RS2 & RS3
  1363. QCSP = H - QS - HS / 2
  1364.  
  1365.  
  1366. Case 4      'SPACCO RETTANGOLO RACCORDATO
  1367. QS = Val(INPUT_VAL(1, "QUOTA PARTENZA SPACCO", QS, "")) + OFST
  1368. HS = INPUT_VAL(1, "ALTEZZA SPACCO", lS, "")
  1369. lS = INPUT_VAL(1, "LARGHEZZA SPACCO", lS, "")
  1370.  
  1371. Select Case CNTR
  1372. Case 0
  1373. DS = INPUT_VAL(1, "DISTANZA SPACCO DA APERTURA", DS, "")
  1374. Case 1
  1375. DS = (LM - lS) / 2
  1376. Case Else
  1377. MsgBox "ERRORE COORDINATA ORIZZONTALE SPACCO", vbCritical
  1378. Exit Function
  1379. End Select
  1380.  
  1381. RR = INPUT_VAL(1, "RAGGIO RACCORDI", RR, "")
  1382.  
  1383. DD = 2 * RR
  1384. LSR = lS - DD
  1385. HSR = HS - DD
  1386.  
  1387. Select Case HSR - LSR
  1388. Case Is > 0
  1389. LL = HS
  1390. HH = LSR
  1391. Case Is <= 0
  1392. LL = HSR
  1393. HH = lS
  1394. End Select
  1395.  
  1396. RS1 = T_RECT2(H - QS - HS / 2, MR_Y(FA + DS + lS / 2, SVIL, SDX), HH, LL)
  1397. LUT = 10
  1398.  
  1399. Y = MR_Y(FA + DS + lS / 2, SVIL, SDX)
  1400. Select Case HSR - LSR
  1401.  
  1402. Case Is > 0
  1403. RS1 = T_RECT2(H - QS - HS / 2, Y, HS, LSR)
  1404. RS2 = T_RECT2(H - QS - HS / 2, Y + lS / 2 - LUT / 2, HSR, LUT)
  1405. RS3 = T_RECT2(H - QS - HS / 2, Y - lS / 2 + LUT / 2, HSR, LUT)
  1406. Case Is <= 0
  1407. RS1 = T_RECT2(H - QS - HS / 2, Y, HSR, lS)
  1408. RS2 = T_RECT2(H - QS - LUT / 2, Y, LUT, LSR)
  1409. RS3 = T_RECT2(H - QS - HS + LUT / 2, Y, LUT, LSR)
  1410. End Select
  1411.  
  1412. RS4 = T_CIRC(H - QS - RR, Y + lS / 2 - RR, DD)
  1413. RS5 = T_CIRC(H - QS - RR, Y - lS / 2 + RR, DD)
  1414. RS6 = T_CIRC(H - QS - HS + RR, Y + lS / 2 - RR, DD)
  1415. RS7 = T_CIRC(H - QS - HS + RR, Y - lS / 2 + RR, DD)
  1416. SPC_R = RS4 & RS5 & RS6 & RS7 & RS1 & RS2 & RS3
  1417. QCSP = H - QS - HS / 2
  1418.  
  1419. SSPP = MsgBox("VUOI INSERIRE TONDI IN ALTO E IN BASSO?", vbYesNo)
  1420. If SSPP = 6 Then
  1421. DDM = INPUT_VAL(1, "DISTANZA FORO DA CENTRO SPACCO", DDM, "")
  1422. DDM2 = INPUT_VAL(1, "DIAMTERO FORI", DDM2, "")
  1423.  
  1424. RS8 = T_CIRC(H - QS - HS / 2 + DDM, Y, DDM2)
  1425. RS9 = T_CIRC(H - QS - HS / 2 - DDM, Y, DDM2)
  1426. SPC_R = SPC_R & RS8 & RS9
  1427.  
  1428. End If
  1429.  
  1430. Case 5      'SPACCO STAR 30_5
  1431.  
  1432. QS = 1000
  1433. QS = Val(INPUT_VAL(1, "QUOTA CENTRO SPACCO DA TERRA", QS, "")) + OFST
  1434. DD = InputBox("DIAMETRO FORO")
  1435. DD = Val(DD)
  1436. '**********************REPORT SPACCHI
  1437. RP2 = RP2 + 1
  1438. RPT_SPC(RP, RP2, 1) = DD
  1439. RPT_SPC(RP, RP2, 2) = "DIAMETRO FORO"
  1440. '************************************
  1441. Select Case CNTR
  1442. Case 0
  1443. dc = INPUT_VAL(1, "DISTANZA CENTRO SPACCO DA APERTURA", dc, "")
  1444. Case 1
  1445. dc = LM / 2
  1446. Case Else
  1447. MsgBox "ERRORE COORDINATA ORIZZONTALE SPACCO", vbCritical
  1448. Exit Function
  1449. End Select
  1450.  
  1451. X = H - QS
  1452. Y = MR_Y(FA + dc, SVIL, SDX)
  1453.  
  1454. 'SPC_R = T_CIRC(X, Y, DD)
  1455. SSPP = MsgBox("VUOI LE SPIZZE SULLO SPACCO TONDO?", vbYesNo)
  1456. If SSPP = 6 Then
  1457. 'MsgBox ("CONTROLLARE SPACCO STAR")
  1458. SPC1 = T_CIRC(X, Y, DD)
  1459. RDR = DD / 2 - 4 + 1.9 - 0.5
  1460. SPC2 = T_SPECIAL(X + RDR, Y, "RAG-3", 0) & T_SPECIAL(X - RDR, Y, "RAG-3", 0) & T_SPECIAL(X, Y + RDR, "RAG-3", 0) & T_SPECIAL(X, Y - RDR, "RAG-3", 0)
  1461. SPC_R = SPC1 & SPC2
  1462. Else
  1463. SPC_R = T_CIRC(X, Y, DD)
  1464. End If
  1465.  
  1466. QCSP = X
  1467.  
  1468.  
  1469. Case 6      'SPACCO RETTANGOLARE SINGOLO CON 2 COPPIE DI FORI SIMMETRICI
  1470. QS = INPUT_VAL(1, "QUOTA PARTENZA SPACCO", QS, "")
  1471. QS = QS '+ 2.5
  1472. HS = INPUT_VAL(1, "ALTEZZA SPACCO", HS, "")
  1473. lS = INPUT_VAL(1, "LARGHEZZA SPACCO", lS, "")
  1474.  
  1475. Select Case CNTR
  1476. Case 0
  1477. DS = INPUT_VAL(1, "DISTANZA SPACCO DA APERTURA", DS, "")
  1478. Case 1
  1479. DS = (LM - lS) / 2
  1480. Case Else
  1481. MsgBox "ERRORE COORDINATA ORIZZONTALE SPACCO", vbCritical
  1482. Exit Function
  1483. End Select
  1484.  
  1485. KF = INPUT_VAL(1, "INTERASSE VERTICALE FORI", KF, "")
  1486. ORF = INPUT_VAL(1, "INTERASSE ORIZZONTALE FORI", ORF, "")
  1487. DF = INPUT_VAL(1, "DIAMETRO FORI", DF, "")
  1488.  
  1489. Y = MR_Y(FA + DS + lS / 2, SVIL, SDX)
  1490. YOR1 = Y - ORF / 2
  1491. YOR2 = Y + ORF / 2
  1492.  
  1493. RS1 = T_RECT2(H - QS - HS / 2, Y, HS, lS)
  1494. RS2 = T_CIRC(H - QS - HS / 2 - KF / 2, YOR1, DF)
  1495. RS3 = T_CIRC(H - QS - HS / 2 - KF / 2, YOR2, DF)
  1496. RS4 = T_CIRC(H - QS - HS / 2 + KF / 2, YOR1, DF)
  1497. RS5 = T_CIRC(H - QS - HS / 2 + KF / 2, YOR2, DF)
  1498. SPC_R = RS1 & RS2 & RS3 & RS4 & RS5
  1499. QCSP = H - QS - HS / 2
  1500. MsgBox ("CONTROLLARE SPACCO RETTANGOLARE SINGOLO CON 2 COPPIE DI FORI SIMMETRICI")
  1501.  
  1502.  
  1503. Case Else
  1504. MsgBox "ERRORE SU DATI SPACCO, NESSUNO SPACCO SARA' LAVORATO SUL PEZZO", vbCritical
  1505. SPC_R = ""
  1506. End Select
  1507.  
  1508. SPC_PULS = SPC_PULS & SPC_R
  1509.  
  1510. RSN = MsgBox("INSERIRE ALTRO SPACCO?", vbYesNo Or vbDefaultButton2)
  1511. Select Case RSN
  1512. Case vbYes
  1513. SPC_PULS = SPC_PULS
  1514. GoTo SPC_INSERT
  1515. Case vbNo
  1516. End Select
  1517. END_SPC:
  1518. PULS_TYPE = Empty
  1519.  
  1520.  
  1521. '***********************************
  1522. If InStr(1, COD_SP, "999") > 0 Then  'RIPETERE LO SPACCO PRECEDENTE
  1523. SPC_R_OLD = SPC_R
  1524. QCSP_OLD = QCSP
  1525. End If
  1526. '***********************************
  1527.  
  1528.  
  1529. If QCSP <> 0 Then
  1530. MsgBox QCSP
  1531. Else
  1532. MsgBox "ATTENZIONE QUOTA CENTRO SPACCO NON DEFINITA", vbCritical
  1533. End If
  1534.  
  1535. End Function
  1536.  
  1537. Function SPC_INDIC(ByVal CMM As String, ByVal CD_IN As Single, ByVal FA As Double, ByVal H As Double, ByVal SVIL As Double, ByVal HT As Double) As String
  1538.  
  1539.  
  1540. '**************************************************************
  1541. SPC_INDIC = SPCi_CODIFY(CMM, CD_IN, FA, H, SVIL, HT)
  1542. If SPC_INDIC <> "" Then Exit Function
  1543. '**************************************************************
  1544.  
  1545.  
  1546.  
  1547. SPC_INDIC = Empty
  1548. Spclist = FILELIST(SPC_FOLD, True, "*")
  1549.  
  1550. IND_FOUND = 0
  1551. TYCK = ""
  1552. For i = 1 To UBound(Spclist)
  1553. CDCK = Right(Spclist(i), InStr(1, StrReverse(Spclist(i)), "\", vbBinaryCompare) - 1)
  1554. CDCK = Left(CDCK, InStr(1, CDCK, ".", vbBinaryCompare) - 1)
  1555.  
  1556. If CDCK = CD_IN Then
  1557.  
  1558. Select Case IND_FOUND
  1559. Case 0
  1560. IND_FOUND = 1
  1561. NF_IN = Spclist(i)
  1562. TYCK = Left(Spclist(i), Len(Spclist(i)) - InStr(1, StrReverse(Spclist(i)), "\", vbBinaryCompare))
  1563. TYCK = Right(TYCK, InStr(1, StrReverse(TYCK), "\", vbBinaryCompare) - 1)
  1564.  
  1565. Case 1
  1566. MsgBox "ERRORE SU MODULO INDICATORE"
  1567. Case Else
  1568. MsgBox "ERRORE SU MODULO INDICATORE"
  1569. End Select
  1570. End If
  1571. Next i
  1572.  
  1573.  
  1574. If IND_FOUND = 0 And CD_IN <> "9999" Then MsgBox "SPACCO " & CD_IN & " NON TROVATO", vbExclamation
  1575.  
  1576. Select Case TYCK
  1577.  
  1578. Case "I02"
  1579. NFDATA = FreeFile
  1580. Open NF_IN For Input As #NFDATA
  1581. Line Input #NFDATA, ST_COD
  1582. Line Input #NFDATA, VOID_ROW
  1583. Line Input #NFDATA, lS
  1584. Line Input #NFDATA, HS
  1585. Line Input #NFDATA, QS
  1586. Line Input #NFDATA, DIAM
  1587. Line Input #NFDATA, DISTF
  1588. Close #NFDATA
  1589.  
  1590. If QS = "C" Then QS = HT / 2 - Val(HS) / 2
  1591.  
  1592. lS = Val(lS)
  1593. HS = Val(HS)
  1594. QS = Val(QS)
  1595. DIAM = Val(DIAM)
  1596. DISTF = Val(DISTF)
  1597.  
  1598. Y = FA + QS + HS / 2
  1599.  
  1600. RS1 = T_RECT2(Y, H / 2, HS, lS)
  1601. RS2 = T_CIRC(Y, H / 2 + DISTF / 2, DIAM)
  1602. RS3 = T_CIRC(Y, H / 2 - DISTF / 2, DIAM)
  1603. SPC_R = RS1 & RS2 & RS3
  1604.  
  1605. GoTo END_IND
  1606.  
  1607.  
  1608.  
  1609.  
  1610. Case "I03"
  1611. NFDATA = FreeFile
  1612. Open NF_IN For Input As #NFDATA
  1613. Line Input #NFDATA, ST_COD
  1614. Line Input #NFDATA, VOID_ROW
  1615. Line Input #NFDATA, lS
  1616. Line Input #NFDATA, HS
  1617. Line Input #NFDATA, QS
  1618. Line Input #NFDATA, LS2
  1619. Line Input #NFDATA, HS2
  1620. Close #NFDATA
  1621.  
  1622. If QS = "C" Then QS = HT / 2 - Val(HS) / 2
  1623.  
  1624. lS = Val(lS)
  1625. HS = Val(HS)
  1626. QS = Val(QS)
  1627. DIAM = Val(DIAM)
  1628. DISTF = Val(DISTF)
  1629.  
  1630. Y = FA + QS + HS / 2
  1631. Y2 = FA + QS - HS2 + (HS2 + 5.5) / 2
  1632. HS3 = HS2 + 5.5
  1633.  
  1634. RS1 = T_RECT2(Y, H / 2, HS, lS)
  1635. If LS2 * HS2 > 0 Then RS2 = T_RECT2(Y, H / 2, HS3, LS2) Else RS2 = ""
  1636.  
  1637. SPC_R = RS1 & RS2
  1638.  
  1639. GoTo END_IND
  1640.  
  1641.  
  1642. End Select
  1643.  
  1644.  
  1645. SPC_INDIC = Empty
  1646. CUR_COM = CMM
  1647. UserForm3.Show
  1648.  
  1649. If INDIC_TYPE = 0 Then Exit Function
  1650.  
  1651.  
  1652.  
  1653. '*****************************************PER REPORT SPACHI
  1654. RP = RP + 1
  1655. RPT_SPC(RP, 1, 1) = INFO_DAT(CMM, 0, 2)
  1656. RPT_SPC(RP, 1, 2) = "COMMESSA"
  1657. RP2 = 1
  1658. '**********************************************************
  1659.  
  1660.  
  1661.  
  1662. Select Case INDIC_TYPE
  1663.  
  1664.  
  1665. Case 1       'SPACCO RETTANGOLARE SINGOLO
  1666. QS = INPUT_VAL(1, "QUOTA PARTENZA SPACCO", QS, "")
  1667. HS = INPUT_VAL(1, "ALTEZZA SPACCO", HS, "")
  1668. lS = INPUT_VAL(1, "LARGHEZZA SPACCO", lS, "")
  1669.  
  1670. Y = FA + QS + HS / 2
  1671. RS1 = T_RECT2(Y, H / 2, HS, lS)
  1672. SPC_R = RS1
  1673.  
  1674.  
  1675. Case 2      'SPACCO RETTANGOLARE SINGOLO CON COPPIA DI FORI CENTRATI
  1676. QS = INPUT_VAL(1, "QUOTA PARTENZA SPACCO", QS, "")
  1677. HS = INPUT_VAL(1, "ALTEZZA SPACCO", HS, "")
  1678. lS = INPUT_VAL(1, "LARGHEZZA SPACCO", lS, "")
  1679. KF = INPUT_VAL(1, "INTERASSE ORIZZONTALE FORI", KF, "")
  1680. DF = INPUT_VAL(1, "DIAMETRO FORI", DF, "")
  1681. Y = FA + QS + HS / 2
  1682. RS1 = T_RECT2(Y, H / 2, HS, lS)
  1683. RS2 = T_CIRC(Y, H / 2 - KF / 2, DF)
  1684. RS3 = T_CIRC(Y, H / 2 + KF / 2, DF)
  1685. SPC_R = RS1 & RS2 & RS3
  1686.  
  1687.  
  1688. Case 3      'SPACCO STAR 30_5
  1689. QS = INPUT_VAL(1, "QUOTA CENTRO SPACCO DA FILO LUCE", QS, "")
  1690. DF = INPUT_VAL(1, "DIAMETRO FORO: 9,10.5,32.5,6.5,5.5,25,20.2,3.3,4.2,5,7.2,8.5,14,10", DF, "")
  1691. 'Y = FA - QS
  1692. Y = FA + QS
  1693. 'DIAM = 30
  1694. 'LAT = 5
  1695. 'R = DIAM / 2 - 2.5
  1696. 'X1 = XX + R
  1697. 'Y1 = Y
  1698. 'X2 = XX
  1699. 'Y2 = Y - R
  1700. 'X3 = XX - R
  1701. 'Y3 = Y
  1702. 'X4 = XX
  1703. 'Y4 = Y + R
  1704.  
  1705. 'G901 = "G90/X" & X1 & "/Y" & Y1 & "/T339/>"
  1706. 'G902 = "G90/X" & X2 & "/Y" & Y2 & "/T339/>"
  1707. 'G903 = "G90/X" & X3 & "/Y" & Y3 & "/T339/>"
  1708. 'G904 = "G90/X" & X4 & "/Y" & Y4 & "/T339/>"
  1709. 'SPC_R = G901 & G902 & G903 & G904 & G900
  1710.  
  1711. 'SPC_R = T_CIRC(H / 2, Y, DF)
  1712. SSPP = MsgBox("VUOI LE SPIZZE SULLO SPACCO TONDO?", vbYesNo)
  1713. MsgBox ("CONTROLLARE SPACCO STAR")
  1714. If SSPP = 6 Then
  1715. SPC1 = T_CIRC(Y, H / 2, DF)
  1716. RDR = DF / 2 - 4 + 1.9
  1717. SPC2 = T_SPECIAL(Y + RDR, H / 2, "RAG-3", 0) & T_SPECIAL(Y - RDR, H / 2, "RAG-3", 0) & T_SPECIAL(Y, H / 2 + RDR, "RAG-3", 0) & T_SPECIAL(Y, H / 2 - RDR, "RAG-3", 0)
  1718. SPC_R = SPC1 & SPC2
  1719. Else
  1720. SPC_R = T_CIRC(Y, H / 2, DF)
  1721. End If
  1722.  
  1723.  
  1724. Case 4       'SPACCO RETTANGOLARE SINGOLO CON INCAVI
  1725. QS = INPUT_VAL(1, "QUOTA PARTENZA SPACCO", QS, "")
  1726. HS = INPUT_VAL(1, "ALTEZZA SPACCO", HS, "")
  1727. lS = INPUT_VAL(1, "LARGHEZZA SPACCO", lS, "")
  1728. AI = INPUT_VAL(1, "ALTEZZA INCAVO", LI, "")
  1729. LI = INPUT_VAL(1, "LARGHEZZA INCAVO", LI, "")
  1730. Y = FA + QS + HS / 2
  1731. SVP = 4 'SOVRAPPOSIZIONE SPACCHI LATERALI
  1732. RS1 = T_RECT2(Y, H / 2, HS, lS)
  1733. RS2 = T_RECT2(Y, H / 2 - lS / 2 - LI / 2 + SVP / 2, AI, LI + SVP)
  1734. RS3 = T_RECT2(Y, H / 2 + lS / 2 + LI / 2 - SVP / 2, AI, LI + SVP)
  1735. SPC_R = RS1 & RS2 & RS3
  1736.  
  1737. End Select
  1738.  
  1739. END_IND:
  1740.  
  1741. PULS_TYPE = Empty
  1742. SPC_INDIC = SPC_R
  1743.  
  1744. End Function
  1745.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement