Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  API Befehlsreferenz

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
Autor Thema:  API Befehlsreferenz (1358 mal gelesen)
blechtiger
Mitglied


Sehen Sie sich das Profil von blechtiger an!   Senden Sie eine Private Message an blechtiger  Schreiben Sie einen Gästebucheintrag für blechtiger

Beiträge: 6
Registriert: 30.07.2019

CATIA V5 R2016 SP3

erstellt am: 23. Sep. 2020 10:23    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo zusammen,

ich hätte mal ein paar Anfängerfragen. Mir ist aufgefallen, dass bei der Makro-Aufzeichnung nicht alle Befehle aufgezeichnet werden, über die ich via Lizenz verfüge.

a) Sehe ich es richtig, dass nur eine begrenzte Auswahl der CATIA-Befehle über ein Makro (VB, CATScript) ansprechbar ist?

b) Bedeutet die Tatsache, dass die Makro-Aufnahme einen Befehl nicht erfasst, automatisch auch, dass dieser Befehl nicht verfügbar ist? Oder gibt es Befehle, welche zwar verfügbar sind, aber nicht aufgezeichnet werden können? Wenn ja, wie finde ich heraus, welche das sind?

c) Gehe ich richtig in der Annahme, dass die V5Automation.chm aus dem Installationsverzeichnis eine vollständige(!) Befehlsreferenz darstellt? Teilweise tauchen hier Copyright-Hinweise auf, die 20 Jahre alt sind... Wenn wir uns z.B. die Kategorie "Shape Design and Styling" in der V5Automation anschauen, dann gibt es Befehle aus dem "Generative Shape Design" (GSD), aber nicht aus dem "Realistic Shape Optimizer" (RSO). Die entsprechenden Befehle sind also nicht verfügbar?

d) Ist die CAA C++ API in irgendeiner Weise vollständiger als die VB API? Hierfür ist, glaube ich, eine teure eigene Lizenz erforderlich. Kann ich die Befehlsliste irgendwo einsehen, ohne über die CAA-Lizenz zu verfügen?

VG Florian

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

RSchulz
Moderator²
Head of CAD, Content & Collaboration / IT-Manager



Sehen Sie sich das Profil von RSchulz an!   Senden Sie eine Private Message an RSchulz  Schreiben Sie einen Gästebucheintrag für RSchulz

Beiträge: 5541
Registriert: 12.04.2007

@Work
Lenovo P510
Xeon E5-1630v4
64GB DDR4
Quadro P2000
256GB PCIe SSD
512GB SSD
SmarTeam V5-6 R2016 Sp04
CATIA V5-6 R2016 Sp05
E3.Series V2019
Altium Designer/Concord 19
Win 10 Pro x64

erstellt am: 23. Sep. 2020 11:11    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für blechtiger 10 Unities + Antwort hilfreich

Hallo Florian,

ich versuche mal alle soweit zu beantworten...

a) Sehe ich es richtig, dass nur eine begrenzte Auswahl der CATIA-Befehle über ein Makro (VB, CATScript) ansprechbar ist?
> Ja.

b) Bedeutet die Tatsache, dass die Makro-Aufnahme einen Befehl nicht erfasst, automatisch auch, dass dieser Befehl nicht verfügbar ist? Oder gibt es Befehle, welche zwar verfügbar sind, aber nicht aufgezeichnet werden können? Wenn ja, wie finde ich heraus, welche das sind?
> Nein. Es gibt ganz viele Befehle, die möglich sind, wenn auch zum Teil deutlich umfangreichere Programmieraufwände bedeuten. Jedoch gibt es immer auch Dinge, die man zumindest in der CATSCript\VBA Umgebung kaum bis garnicht möglich sind. Desweiteren ist man natürlich darauf angewiesen, das Befehle und Funktionen auch Bestandteil der API sind. Hier ist es nämlich mit nichten der Fall, dass alles im CATIA auch via API verfügbar ist. Übrigens in keinem Programm.

c) Gehe ich richtig in der Annahme, dass die V5Automation.chm aus dem Installationsverzeichnis eine vollständige(!) Befehlsreferenz darstellt? Teilweise tauchen hier Copyright-Hinweise auf, die 20 Jahre alt sind... Wenn wir uns z.B. die Kategorie "Shape Design and Styling" in der V5Automation anschauen, dann gibt es Befehle aus dem "Generative Shape Design" (GSD), aber nicht aus dem "Realistic Shape Optimizer" (RSO). Die entsprechenden Befehle sind also nicht verfügbar?
> Die V5Automation.chm ist eine mehr oder weniger vollständige Auflistung aller Objekte und deren Funktionen. Im .Net ergeben sich hieraus dann aber noch deutlich mehr Möglichkeiten.

d) Ist die CAA C++ API in irgendeiner Weise vollständiger als die VB API? Hierfür ist, glaube ich, eine teure eigene Lizenz erforderlich. Kann ich die Befehlsliste irgendwo einsehen, ohne über die CAA-Lizenz zu verfügen?
> Ich nutze kein CAA, aber sehr wohl die komplette API im .Net. CAA ist meines erachtens eine eigene Umgebung im CATIA, die viel mehr ermöglicht, vor allem was integrierte Einbindung und Konfiguration angeht.

HTH

------------------
MFG
Rick Schulz

Nettiquette (CAD.de)  -  Was ist die Systeminfo?  -  Wie man Fragen richtig stellt.  -  Unities

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

blechtiger
Mitglied


Sehen Sie sich das Profil von blechtiger an!   Senden Sie eine Private Message an blechtiger  Schreiben Sie einen Gästebucheintrag für blechtiger

Beiträge: 6
Registriert: 30.07.2019

CATIA V5 R2016 SP3

erstellt am: 24. Sep. 2020 18:03    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Rick,

danke für deine Klarstellungen   
Nehmen wir mal an, ich möchte in Catia folgenden iterativen Prozess umsetzen:

(1) Fläche importieren
(2) Parameterset P definieren
(3) Fläche manipulieren mit einer GSD-Funktion und für diese GSD-Funktion die Parameter P verwenden
(4) Flächenanalyse durchführen
(5) Auf der Basis von (4) das Parameterset P ändern
(6) Gehe zu (3)

Dabei bestehen mehrere Probleme.
(a) Die Funktion für (3) ist nicht in der V5Automation.chm vermerkt, d.h. also, es gibt keine API-Schnittstelle. Gibt es andere Möglichkeiten, z.B. über die Knowledgeware-Workbench eine derartige Schleife zu programmieren?
(b) Kann ich überhaupt beim Setzen eines Funktionsparameters in (3) (z.B. Glättungsparameter für eine Flächenfunktion) einen zuvor definierten Parameter wählen, anstatt einfach eine Zahl einzutippen?
(c) Kann ich für (5) beispielsweise die Maximalwerte einer Abstandsanalyse in einen Parameter hineinschreiben, auf den ich dann eine Regel anwenden kann? Meines Wissens nach hat man keinen Zugriff auf die Ergebnisdaten der Analyse.

Zugegeben, das sind viele Fragen auf einmal 
Mich interessiert aber im Wesentlichen, ob sich überhaupt ein derartiger iterativer Prozess automatisieren lässt unter den genannten Umständen.

VG Florian

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bgrittmann
Moderator
Konstrukteur


Sehen Sie sich das Profil von bgrittmann an!   Senden Sie eine Private Message an bgrittmann  Schreiben Sie einen Gästebucheintrag für bgrittmann

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 24. Sep. 2020 18:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für blechtiger 10 Unities + Antwort hilfreich

Servus

Welche GSD-Funktion willst du für die Flächenmanipulation nutzen?
Manche Funktionen sind nicht in der V5Automation aufgeführt aber per Objektbrowser (im Makroeditor/VBA-Editor) ersichtlich.
Hast du mal ein Bild wie du das "manuell" aussieht?

Gruß
Bernd

PS: Welche Abstandanalyse meinst du (Distance-Object?)?

------------------
Warum einfach, wenn es auch kompliziert geht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

blechtiger
Mitglied


Sehen Sie sich das Profil von blechtiger an!   Senden Sie eine Private Message an blechtiger  Schreiben Sie einen Gästebucheintrag für blechtiger

Beiträge: 6
Registriert: 30.07.2019

CATIA V5 R2016 SP3

erstellt am: 02. Okt. 2020 10:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Bernd,

danke für deinen Beitrag. Leider bin ich gerade erst dazu gekommen, das Problem weiter zu verfolgen.

Also für die Flächenmanipulation würde ich gerne z.B. das Shape Morphing aus GSD anwenden: Hier muss eine Startfläche angegeben werden, sowie eine Menge von Kantentupeln (unverformt - verformt), anhand derer die Transformation der Fläche spezifiziert wird. In meinem Fall wären das mehrere hundert Kantentupel, die bestenfalls aus einer Liste eingespielt werden.

Alternativ zu GSD Shape Morphing fällt mir das Digitized Shape Morphing aus RSO ein. Hierbei werden eine Startfläche und ein Verschiebungsvektorfeld angegeben, um eine transformierte Fläche zu erhalten. Es können zahlreiche Parameter (Toleranz, Glättungsfaktor, Points to ignore etc.) manuell angegeben werden, die ich gerne aus einer Variable "herausholen würde".

Kann man eine dieser beiden Funktionen (oder eventuell alternative Funktionen) über ein Makro ansprechen und die benötigten Parameter / Kantenlisten aus verfügbaren (bzw. zuvor berechneten) Variablen ziehen?

Mit Abstandsanalyse meinte ich "Abweichungsanalyse", dieses rot-gelb-grüne Icon zur Messung von Abständen zwischen zwei Flächen. Ich nehme an, dass es möglich ist, die Funktion: [Rechtsklick auf "Abweichungsanalyse" -> Objekt -> Daten exportieren] zu automatisieren, so dass ich Zugriff habe auf die Daten (x, y, z, Wert) habe, um z.B. das betragliche Abstandsmaximum zu ermitteln. Wenn ich auf diese Weise die "gemorphte" Fläche mit einer gegebenen Referenz vergleiche, kann ich das Resultat verwenden, um die Morphing-Parameter anzupassen.

VG Florian

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bgrittmann
Moderator
Konstrukteur


Sehen Sie sich das Profil von bgrittmann an!   Senden Sie eine Private Message an bgrittmann  Schreiben Sie einen Gästebucheintrag für bgrittmann

Beiträge: 11780
Registriert: 30.11.2006

CATIA V5R19

erstellt am: 02. Okt. 2020 10:51    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für blechtiger 10 Unities + Antwort hilfreich

Servus Florian

Ich glaub nicht dass du bei den drei Objekten mit einem Makro ran kommst.
Wenn du wirklich diese Objekte per Makro ansprechen willst geht es vermutlich nur über erheblichen Aufwand/Umweg: a) per WinAPI Mausklicks und Eingaben nachbilden (sehr komplex) b) per CAA (sehr teuer und hoher Einarbeitungsaufwand)
Wenn du so viele "Zielkanten" hast: kannst du nicht auf diesen direkt eine neuen Fläche aufbauen?

Gruß
Bernd

------------------
Warum einfach, wenn es auch kompliziert geht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz