Qualcuno che conosce il software CNC USB Controller (ver 2.10), mi sa spiegare perchè in questo programma qui sotto, quando la condizione dell'if è non verificata, le istruzioni dopo l'endif non vengono eseguite, mentre se la condizione è vera vengono eseguite? Trovandosi dopo l'endif non dovrebbero essere condizionate, è come se tutto il resto del programma dopo l'endif venisse considerato come parte integrante del codice da eseguire in caso di condizione verificata, ovvero come se l'endif non ci fosse proprio.
Codice: Seleziona tutto
%
#1=0 (x CENTRO)
#2=0 (y CENTRO)
#3=20 (RAGGIO)
#4=5 (FINITURA)
#5=0 (profondita iniziale)
#6=-10 (profondita finale)
#7=5(profondita passata)
#8=#5 (profondita attuale)
G00 Z5
G00 X#1 Y#2
G00 Z#5
O140 do
#8=[#8-#7]
G01 x#1 Y#2 Z#8
G17 G02 X[#1+#3-#4] Y#2 R[[#3-#4]/2]
G02 X[#1-#3] Y#2 I[[#4/2]-#3]
G01 X[#1-#3] Y#2
G02 X[#1-#3] Y#2 I#3
O140 while [[#8-#6] GE #7]
O5 if[#8 NE #6]
G01 x#1 Y#2 Z#6
G17 G02 X[#1+#3-#4] Y#2 R[[#3-#4]/2]
G02 X[#1-#3] Y#2 I[[#4/2]-#3]
G01 X[#1-#3] Y#2
G02 X[#1-#3] Y#2 I#3
O5 endif
G01 X#1 Y#2
G00 Z#10
%