Hallo Torsten,
zuerst einmal muss man erwähnen das es in CATIA 3 unterschiedliche Scriptsprachen gibt. Hier gibt es teilweise eklatante Unterschiede die vor allem beim deklarieren von Variablen zum tragen kommen.
1. Das CATScript
ist die wohl am weitesten verbreitete Sprache unter den CATIA Makros. Dies liegt vor allem daran, das sie auf Windows und auf UNIX lauffähig ist. Der Syntax der Sprache ist ähnlich dem Syntax von Visual Basic.
2. Das CATVbs
ist die wohl am wenigsten verbreitete Sprache. Das liegt vor allem daran das im Syntax keine Variablen deklariert werden können. Dies birgt aber einen großen Nachteil der vor allem die Performance bei großen Scripten stark nach unten senken kann
3. Das CATVba
ist eine Visual Basic Sprache und läuft nur unter Windows. Dennoch wird sie gerne bei komplexeren Makros eingesetzt da man hier den komfortablen Visual Basic Editor nutzen kann. Des weiten stehen dem Programmierung UserFormen zur Verfügung. Man kann also hiermit Applikationen mit eigenes Benutzeroberfläche erstellen.
Da es wie gesagt im Gegensatz zu CATScript und CATVbs einen komfortablen Editor bietet (mit Debuggmöglichkeiten, etc.) wird es auch oft verwendet um CATScripte und CATVbs zu entwickeln. Ein CATScript wird somit erstmal als CATVba entwickelt und später der Quellcode einfach in ein CATScript kopiert. Bei einem CATVbs wird es ein wenig komplizierter da hier alle Deklarationen von Variablen nach dem Kopieren (bzw. davor) auskommentiert werden müssen
Jetzt zu der Frage: WIE LERNT MAN DAS AM BESTEN?
Da alle Scriptsprachen ihre Wurzeln im Microsoft Visual Basic haben empfehle ich immer zuerst einmal die Grundlagen dieser Umgebung zu erlernen. Hierzu gehören...
> Deklaration von Variablen
> Unterschiede zwischen Objekten, Methoden und Klassen (und deren Syntax)
> Erstellung von Schleifen (natürlich auch verschachtelt da diese beim Makroprogrammieren in CATIA sehr häufig verwendet werden)
> Funktionen (Übergaben und Rückgabe)
> Collections (nur in CATVba verfügbar) und Array (ist eigentlich wichtiger)
Hierzu solltest du genügend Infos aus dem Netz ziehen können.
Da dir die Grundlagenschulung ohne Übung aber überhaupt nichts bringt empfehle ich auch immer sich komplett mit dem internen Visual Basic Editor auseinander zu setzen. Dieser kann weitaus mehr als man auf den ersten Blick vermuten würde. Hierzu gehören...
> Die Symbolleiste Debuggen
> Haltepunkte setzen und löschen
> Step-by-Step Debugging (extrem wichtig)
> Das Watch-Fenster (Mein letzter Beitrag
> Der Objekt-Browser
Auch hierzu findest du genügend Infos im Netz.
Wie du jetzt wahrscheinlich merkst hast du bis dato noch gar nichts mit CATIA gemacht. Das ist auch gut so den nur wer die Grundlagen auch wirklich beherrscht und anwenden kann wird auch in CATIA schnell Makro´s entwickeln können
Jetzt zur reinen CATIA Seite.
Ich lege dir auf jeden Fall das Buch von Jens Hansen (Kochbuch - CATIA V5 automatisieren) wärmstens an Herz. Ohne die Grundlagen gehts natürlich nicht aber wenn du die drauf hast sollten die Bespiele für sich einfach nachvollziehbar sein.
Aus dem Buch machst du die Übungen. Wenn du dich hier einigermaßen sicher fühlst denn geh einfach auf CAD.de und lade dir ein paar Beispielscripte runter (die sind hier überall zu finden). Such dir ein Thema das sich interessiert oder das du so und so schon mal machen wolltest, dann suche dir hier ein Beispiel und lade es runter. Jetzt nutzt du die Funktionen Step-by-Step Debugging und das Watch-Fenster aus dem VB-Editor um das Script nachzuvollziehen. Kennst du eine Funktion nicht dann steht dir die v5automation.chm und die Visual Basic Hilfe zur Verfügung (einfach F1 drücken).
Je mehr Script du in dieser Art durcharbeitest desto schneller wirst du ein neues Script entwickeln können. Die Objekte, Methoden und Klassen rutschen dir bald aus dem Ärmel so das du nicht erst nachschauen musst welche Methode du jetzt auf das ActiveDocument (z.B. als PartDocumnet deklariert) anwenden kannst.
Das alles sollte dann reichen um erstmal Makro´s in CATIA zu schreiben. Du wirst aber relativ bald merken das auch VB seine Grenzen hat (z.B. eine einfache FolderSelektionBox ist in CATIA VB nicht möglich ). Hier wirst du dich dann wohl oder übel mit API´s auseinandersetzen müssen (gibt es aber viele Erklärungen und Beispiele im Netz).
Wenn du dann komplexe Zusatzapplikationen entwickeln willst steigst du mit dem Wissen das du dir zuvor über die Makro´s angeeignet hast in die .NET Programmierung ein. Du wirst begeistert sein welche Möglichkeiten die hier hast
Ich hoffe ich kann dir hiermit ein bisschen helfen
------------------
MFG Daniel
Systeminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP