20 LBL 10
21 CYCL DEF 7.0 NULPUNT
22 CYCL DEF 7.1 X+Q1
23 CYCL DEF 7.2 Y+Q2
24 CYCL DEF 10.0 ROTATIE
25 CYCL DEF 10.1 ROT+Q8
26 Q35 = (Q6 - Q5) / Q7
27 Q36 = Q5
28 Q37 = 0
29 Q21 = Q3 * COS Q36
30 Q22 = Q4 * SIN Q36
31 L X+Q21 Y+Q22 R0 FMAX M3
32 L Z+Q12 R0 FMAX
33 L Z-Q9 R0 FQ10
34 LBL 1
35 Q36 = Q36 + Q35
36 Q37 = Q37 + 1
37 Q21 = Q3 * COS Q36
38 Q22 = Q4 * SIN Q36
39 L X+Q21 Y+Q22 R0 FQ11
40 FN 12:
IF +Q37 LT +Q7 GOTO LBL 1
41 CYCL DEF 10.0 ROTATIE
42 CYCL DEF 10.1 ROT+0
43 CYCL DEF 7.0 NULPUNT
44 CYCL DEF 7.1 X+0
45 CYCL DEF 7.2 Y+0
46 L Z+Q12 F0 FMAX
47 LBL 0
48 END PGM ELLIPS MM
HEIDENHAIN iTNC 530
Subprogramma 10: bewerking
Nulpunt naar het centrum van de ellips verschuiven
Rotatiepositie in het vlak verrekenen
Hoekstap berekenen
Starthoek kopiëren
Teller voor het aantal sneden vastleggen
X-coördinaat van het startpunt berekenen
Y-coördinaat van het startpunt berekenen
Startpunt benaderen in het vlak
Voorpositioneren naar veiligheidsafstand in de spilas
Naar bewerkingsdiepte verplaatsen
Hoek actualiseren
Teller voor het aantal sneden actualiseren
Actuele X-coördinaat berekenen
Actuele Y-coördinaat berekenen
Volgende punt benaderen
Niet klaar? Indien niet klaar, dan terugspringen naar LBL 1
Rotatie terugzetten
Nulpuntverschuiving terugzetten
Naar veiligheidsafstand verplaatsen
Einde subprogramma
577