Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Makro über Reaktion ausführen

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:  Makro über Reaktion ausführen (2932 mal gelesen)
BettinaRauch
Mitglied
BA-Studentin, Fahrzeug-System-Engineering


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

Beiträge: 65
Registriert: 06.07.2009

Catia V5 R19

erstellt am: 08. Jul. 2009 11:02    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


Versuche.pdf

 
Ich würde gern ein Makro über eine Reaktion ausführen, damit es in einer PowerCopy verwendet werden kann.

Ich hab für meine Versuche ein einfaches Beispiel erfunden:
Neues Teil erstellen und darin einen Punkt auf einer der Hauptebenen generieren.
Nun soll mit einem Makro senkrecht auf eine Ebene durch den generierten Punkt eine Linie erstellt werden.

Ich hab drei Versuche gemacht:

1. Makro erstellen und über Funktion ‚LaunchMacroFromDoc’ ausführen
2. VB-Makro mit Argumenten erstellen und über Reaktion ausführen
3. VB action direkt in Reaktion schreiben

Die Ergebnisse hab ich versucht in der angehängten Doku aufzuführen. Ich hoffe, es ist gut erklärt, wo die Probleme stecken.

Falls irgendjemand eine Idee hat (auch neue Möglichkeiten sind natürlich gern willkommen) wär ich sehr dankbar.

Viele Grüße von einem Neuling auf diesem Gebiet

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

Randle
Mitglied
CAD/PLM Consultant


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

Beiträge: 695
Registriert: 12.04.2003

Win10 x64
CATIA V5 R18, R19, R21, R27-29

erstellt am: 08. Jul. 2009 15:38    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 BettinaRauch 10 Unities + Antwort hilfreich

Hallo,

dein zweiter Versuch ist ganz nahe dran.
Füge unbedingt hinter dem Run ein Klammerpaar ein, also Run()
Dann sollte es gehen.

------------------
MfG
Randle

! It's not a bug, it's a feature !

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

Randle
Mitglied
CAD/PLM Consultant


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

Beiträge: 695
Registriert: 12.04.2003

Win10 x64
CATIA V5 R18, R19, R21, R27-29

erstellt am: 08. Jul. 2009 22:41    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 BettinaRauch 10 Unities + Antwort hilfreich

Nabend,

habe mir gerade dein angehängtes Dokument nochmal genauer angeschaut. Dabei sind mir folgende Dinge auf/eingefallen.

1.Versuch
Du müsstest es so in die Reaction schreiben LaunchMacroFromDoc("Macro1.catvbs") 

2.Versuch
hatte ich schon geschrieben im vorherigen Beitrag.

Beide Lösungen bringen dich aber in deinem Fall nicht weiter.

3.Versuch
Offenbart dein eigentliches Problem, da hier von der Anwendung der Tools/Funktionen alles einwandfrei ist.
Du arbeitest offenbar mit HybridDesign, da du in deinem PartBody einen Punkt anlegen kannst.
Die Reaction überwacht den PartBody auf Update.
In diesem Körper hast du einen Punkt der von dem VBScript als Basis für eine Linie genutzt werden soll.
Die Linie wird auch wieder in dem PartBody angelegt.
Wenn du jetzt die Koordinaten von dem Punkt änderst, muss der PartBody upgedatet werden.
Jetzt startet die Reaction das VBScript. Die Linie wird erstellt und im VBScript machst du am Ende ein Update (part1.Update – letzte Zeile).
Jetzt wird wieder die Reaction gestartet.
Du hast also einen Updatezyklus. Mit den richtigen Einstellungen unter Tools/Options macht man noch eine Menge mehr Linien :-)

Du hast jetzt folgende Möglichkeiten:
1. Die Reaction überwacht den Körper nicht auf Update.
2. Die Reaction überwacht nicht den Körper (vielleicht nur den Punkt?) auf Update.
3. Du legst die Elemente nicht im PartBody an, sondern in einem GeoSet.
4. Du deaktivierst HybridDesign unter Tools/Options – Infrastructure/ Part Infrastructure

Da gibt es sicher noch andere Möglichkeiten.
Vielleicht verrätst du uns ja was dein Ziel ist. Dann kann man sicher mehr sagen.


------------------
MfG
Randle

! It's not a bug, it's a feature !

[Diese Nachricht wurde von Randle am 08. Jul. 2009 editiert.]

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

BettinaRauch
Mitglied
BA-Studentin, Fahrzeug-System-Engineering


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

Beiträge: 65
Registriert: 06.07.2009

Catia V5 R19

erstellt am: 09. Jul. 2009 08:47    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

Danke erstmal für deine schnellen Antworten.

Mit deinen Tipps hab ich inzwischen meine drei Versuche alle zum Laufen bekommen. Allerdings werden in jedem Fall zwei Linien generiert. Die "update-Zeile" im Script kann daran nicht schuld sein, da Catia beim Updaten immer einen Fehler im Script gebracht hat, wenn diese da war. Hab sie deswegen rausgelöscht und es werden immer noch zwei Linien generiert.

Ich werde jetzt mal deine angesprochenen Möglichkeiten ausprobieren. Vielleicht bringt mich davon ja irgendwas weiter.
Mein ursprüngliches Ziel ist eigentlich nur, ein Makro in irgendeiner Form über ne Reaktion zum Laufen zu bringen, damit ich es später in einer PowerCopy verwenden kann. Ich würde eigentlich auch behaupten, dass das mit meinen drei Möglichkeiten im Prinzip funktioniert.
Jetzt hätte ich nur noch gern meinen Fehler in meinem Script gewusst. Denn als Programmier-Anfänger ist es schon sinnvoll, zu wissen, warum es nicht so funktioniert, wie man sich das vorgestellt hat. In diesem Fall handelt es sich übrigens nur um ein willkürliches Beispiel, mit dem ich mich ein bißchen in die Programmiererei einarbeiten wollte. Will mit den realen, komplizierteren Fällen anfangen, sobald ich das "einfache" verstanden hab. "Ein Makro in einer PowerCopy verwenden" brauch ich für meinen komplizierteren Fall aber auf jeden Fall auch.

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

BettinaRauch
Mitglied
BA-Studentin, Fahrzeug-System-Engineering


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

Beiträge: 65
Registriert: 06.07.2009

Catia V5 R19

erstellt am: 09. Jul. 2009 09:46    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

Hallöchen nochmal,

hab den Fehler gefunden! Das Script ist absolut richtig. Es lag wirklich an der Einstellung der Reaktion. Hab es durch das Ausprobieren der Möglichkeiten, die Randle aufgezählt hat gesehen und kapiert.
Vielen Dank nochmal für die Tipps.

MfG

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