01.03.2013 Aufrufe

Diplomarbeit (*.pdf - 5,3MB) - Faculty of Computer Science ...

Diplomarbeit (*.pdf - 5,3MB) - Faculty of Computer Science ...

Diplomarbeit (*.pdf - 5,3MB) - Faculty of Computer Science ...

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

4.2.3 Entwicklung eigener CNC-Interpreter<br />

Im folgenden soll das Entwickeln eigener spezifischer CNC- Interpreter näher<br />

erläutert werden. Dazu sei im folgenden das nun etwas modifizierte Klassendiagramm<br />

dargestellt.<br />

Joints<br />

CNCSource<br />

+getLine(line:int):void<br />

+getLineCount():int<br />

CNCSourceLine<br />

-model:Joints<br />

><br />

CNCInterpreter<br />

CNCInterpreterImpl<br />

-model:Joints<br />

+run():void<br />

+pause():void<br />

+stop():void<br />

+parse(source:CNCSource[]):CNCProgram<br />

CNCEmulator<br />

erstellt<br />

CNCProgram<br />

+step(stepTime:int):void<br />

-model:Joints<br />

Abb. 4-20 Klassendiagramm CNC-Interpreter<br />

><br />

CNCCommand<br />

+create(soureLine:CNCSourceLine):void<br />

+getTotalTime():int<br />

+execute(t0:int,t1:int):void<br />

CNCCommandImpl<br />

Im Vergleich zu Abschnitt 3.2 ergeben sich folgende Änderungen: Das Modell<br />

(Model) wird durch die Klasse Joints repräsentiert, welche der Menge der<br />

Gelenkverbindungen entspricht. Die CNC-Quellen sind zeilenweise strukturiert<br />

und werden während des Parsens als CNCSourceLine-Objekt an die abstrakte<br />

Methode create der CNCCommand-Klasse übergeben. Deren abstrakte<br />

Methode execute wurde entsprechend den Ausführungen in Abschnitt 3.2 um<br />

zwei Parameter (t0 und t1 erweitert).<br />

Für die Entwicklung eines eigenen CNC-Interpreters muss nun die abstrakte<br />

Klasse CNCInterpreter überschrieben werden. Abbildung 4-21 zeigt die<br />

Implementierung des DefaultCNCInterpreter, welcher standardmäßig als<br />

Interpreter ausgewählt ist.<br />

Dieser überschreibt lediglich die abstrakte Methode parse und erstellt aus den<br />

CNC-Quelltexten CNCProgram- Objekte, welche wiederum eine Liste von<br />

*<br />

*<br />

83

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!