Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  VB-Script oder CATScript für rename, past special und replace.

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:  VB-Script oder CATScript für rename, past special und replace. (5628 mal gelesen)
mrgod
Mitglied



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

Beiträge: 28
Registriert: 22.01.2010

erstellt am: 22. Jan. 2010 19:32    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

Also, Freunde, nicht böse sein wenn ich das frage, was schon beantwortet wurde. Leider habe ich im Forum nicht die Antwort auf meine Frage gefunden.

Ich bin totaler Anfänger in Macroserstellung und kenne mich mit VB-Scripten nur wenig aus. Ich hoffe, dass Sie mir zu mindest mal den Weg zeigen, wie ich mein Problem lösen kann:

Ich habe ein Part: "XXX-1", in diesem Part ist in einem Geometrischem Set - "AAA" ein Element enthalten:

Fläche_1 - Fläche als Ergebnis von Extrapolate

In einem anderen Fenster gibt es ein anderes Part "YYY-2" mit einem geometrischen Set "BBB" in dem ein Element "Fläche_B" als Result liegt.

Ich versuche folgendes als Script zu implementieren:

Fläche_1 soll innerhalb des Sets "AAA" in "Fläche_A" umbenannt werden (also rename).
Fläche_A soll als Result in Part "YYY-2" in den Set "BBB" kopiert werden (also als "past special as result")
Fläche_B soll durch die Fläche_A ersetzt werden (also replace)

Ich habe mein Problem natürlich abstrahiert. Im Grunde muss ich ein element aus einem Part in ein anderes Part kopieren als Result, dann umbenennen und dann ein Element ersetzen. Aber wenn ich alle Zwischenschritte als getrennte Scripts nachvollziehe, dann kann ich ein Gesamtscript schreiben.

Ich weiß nicht, ob ich zu viel oder zu wenig Info für mein Problem gegeben habe. Aber ich hoffe Sie lassen mich nicht im Stich.
Danke für alle im Voraus.
 

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

V5Playaz
Mitglied
Dipl.-Ing (BA)


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

Beiträge: 447
Registriert: 12.07.2005

DELL PRECISION 390
3,25 GB RAM
WIN XP PRO SP2
CATIA V5 R16-19
Delmia V5 R19
VB6, VB2008
Adobe Acrobat 9 Pro Extended

erstellt am: 22. Jan. 2010 19:53    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 mrgod 10 Unities + Antwort hilfreich

Hallo und Willkommen im Forum,

es geht bei deiner Problemstellung nicht um catscript oder VB-script, da das Ergebnis das selbe ist.

Du solltest dich zuerst einmal allgemein mit der Makroprogrammierung auseinander setzten. Hierzu hilft dir z.B. die Foren-Suche, die CATIA-Hilfe und einige Bücher.

Dann wirst du z.B. auch den Makrorekorder kennen lernen, mit dem das ganz einfach zu lösen ist.

Grüsse Dominik

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

mrgod
Mitglied



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

Beiträge: 28
Registriert: 22.01.2010

erstellt am: 22. Jan. 2010 20:05    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

Zitat:
Original erstellt von V5Playaz:
Hallo und Willkommen im Forum,

es geht bei deiner Problemstellung nicht um catscript oder VB-script, da das Ergebnis das selbe ist.

Du solltest dich zuerst einmal allgemein mit der Makroprogrammierung auseinander setzten. Hierzu hilft dir z.B. die Foren-Suche, die CATIA-Hilfe und einige Bücher.

Dann wirst du z.B. auch den Makrorekorder kennen lernen, mit dem das ganz einfach zu lösen ist.

Grüsse Dominik


Ich grüße dich auch 
Den Macro-Recorder habe ich versucht, der erfasst aber keine Rename-Befehle, außerdem kann er "past special as result" auch nicht erfassen.
Wenn du "einige Bühcher" erwähnst, könntest du etwas präzise sein ? Was für Bücher ? In Forum habe ich nach meinen Befehlen gesucht aber nichts gefunden, was ich einigermassen übernehmen könnte. Ich sag' ja, dass ich in Sachen Scripting ein noob bin. 

Welche tutorials und wo könnte ich zur Hilfe ziehen. Die jenige, die ich im Netz gefunden habe, waren als Kurse gedacht...also keine Bücher...

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

DanielFr.
Moderator
Manager


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

Beiträge: 2506
Registriert: 10.08.2005

HP Compaq 8710w, Intel Core Duo T7700, 2,40 Ghz, 3GB RAM, Windows XP Professionel @32bit, Quadro FX 1600M, CATIA V5 R19 SP3

erstellt am: 23. Jan. 2010 07:16    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 mrgod 10 Unities + Antwort hilfreich

mrgod
Mitglied



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

Beiträge: 28
Registriert: 22.01.2010

erstellt am: 02. Feb. 2010 10:10    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

Also, hab doch alleine die Lösung gefunden:

'---RENAME:---
'-- Aufpassen, dass keine Doppelnamen auftretten ! ---
Dim NEW_NAME As Parameter
Set NEW_NAME = parameters1.Item("Alter Name")
NEW_NAME.Name = "Neuer Name"
'-------------

Für Paste Special muss man mit MacroRecorder ein Script für COPY-PAST aufnehmen wie üblich und dann mit EDIT in neuem Script die Zeile finden mit

selection2.Paste und die ändern in

selection2.PasteSpecial "CATPrtResultWithOutLink"

***

Für Elemente ersetzen kann man einen Trick machen.

Statt Element macht man einen Join und dann ersetzt man die Referenz im Join auf ein neues Element:

'--- REPLACE ---
Dim a As AnyObject
Set a = GEO_SET.HybridShapes.Item ("Name des neuen Elements")

Dim Ref1 As Reference
Set Ref1 =  PART_X.CreateReferenceFromObject (a)

Dim JOIN As HybridShapeAssemble
Set JOIN = GEO_SET.HybridShapes.Item ("Name des Joins")
JOIN.AddElement Ref1
JOIN.RemoveElement 1
'---------------

[Diese Nachricht wurde von mrgod am 02. Feb. 2010 editiert.]

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

Kiki K.
Mitglied
Student


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

Beiträge: 11
Registriert: 27.05.2014

CATIA V5 R19, mit zusätzlichen speziell Angepassten Varianten für BMW, Audi & VW sowie Mercedes

erstellt am: 27. Mai. 2014 11: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 Nur für mrgod 10 Unities + Antwort hilfreich

Hallo,

ich hänge ebenfalls an dem Problem per Makro ein "Replace" durchzuführen. Ich habe auch bereis hier im Forum die bestehenden Beiträge gelesen. Das Buch von Dieter Ziethen kenne ich auch bereits. Jedoch sehe ich bei den veröffentlichten Codeabschnitten nicht ganz durch. Kann mir jemand helfen? am besten mit etwas Code und Kommentaren dazu die sich besser erklären.
Vielen Dank schonmal.

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: 27. Mai. 2014 11:52    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 mrgod 10 Unities + Antwort hilfreich

Servus
Willkommen im Forum. Bitte Sytseminfo ausfüllen.
Kannst du bitte näher beschreiben was du mit "replace" meinst? (Nur Teil der PartNumber, in der Baugruppe ein Part, einen Geometrie im PartDesign, ...)

Gruß
Bernd

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

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

Kiki K.
Mitglied
Student


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

Beiträge: 11
Registriert: 27.05.2014

CATIA V5 R19, mit zusätzlichen speziell Angepassten Varianten für BMW, Audi & VW sowie Mercedes

erstellt am: 27. Mai. 2014 15:42    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 mrgod 10 Unities + Antwort hilfreich

Ich habe ein übergeordnetes Product in dem mehrere weitere Products sind. Im ersten untergeordneten Product befindet sich ein Part mit einigen Punkten in einem Geo Set. Diese Punkte sind veröffentlicht(publiziert). Danach kommen in meiner Struktur einige weitere Products, in jedem Product ist dann ein Part in dem die Geometrie zu finden ist. Diese Products enthalten bereits einen Punkt in einem Geo Set. Diesen Punkt möchte ich per Makro durch einen von den veröffentlichten Punkten ersetzen(replacen). Per Mausklicks kann ich das. Nur das bekannte Problem ist das der Makrorecorder in diesem Fall keine Hilfe ist.
Ich hoffe das war jetzt verständlich. Ich kann aber auch nochmal gern einen Screenshot meiner CATIA Struktur veröffentlichen.

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: 27. Mai. 2014 17:37    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 mrgod 10 Unities + Antwort hilfreich

Servus
Leider kann man diese Funktion "Replace" nicht mit einem Makro verwrklichen. Deshalb gibt es den Workarond de Geometrie nicht direkt auf ein Element zu beziehen, sondern zB auf einen Join oder ein Extract (oder ach auf eine Veröffentlichung?). Bei diesen Geometrien kann man die Referenzen austauschen.

Gruß
Bernd

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

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

Kiki K.
Mitglied
Student


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

Beiträge: 11
Registriert: 27.05.2014

CATIA V5 R19, mit zusätzlichen speziell Angepassten Varianten für BMW, Audi & VW sowie Mercedes

erstellt am: 02. Jun. 2014 10:13    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 mrgod 10 Unities + Antwort hilfreich


Ubersicht.JPG

 
Hallo ich habe meine Ausgangssituation etwas angepasst. Innerhalb meines Parts "1234567__0103__DRUCKSTUECK" möchte ich den vorhandenen Punkt "MusterSPP001" durch den Punkt "SPP_0010" ersetzen / ein replace durchführen (siehe kleine Übersicht). Kann mir jemand sagen wie ich das programmieren kann? Oder kann mir jemand vielleicht auch etwas Code zur Verfügung stellen?
Vielen Dank schonmal.

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. Jun. 2014 10:18    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 mrgod 10 Unities + Antwort hilfreich

Servus
IMHO kann man dies nicht mit VBA oder CATScript verwirklichen.

Gruß
Bernd

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

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

Kiki K.
Mitglied
Student


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

Beiträge: 11
Registriert: 27.05.2014

CATIA V5 R19, mit zusätzlichen speziell Angepassten Varianten für BMW, Audi & VW sowie Mercedes

erstellt am: 02. Jun. 2014 10:33    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 mrgod 10 Unities + Antwort hilfreich

Vielen Dank für die schnelle Antwort. Auch wenn mir das nicht weiterhilft.

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

Kiki K.
Mitglied
Student


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

Beiträge: 11
Registriert: 27.05.2014

CATIA V5 R19, mit zusätzlichen speziell Angepassten Varianten für BMW, Audi & VW sowie Mercedes

erstellt am: 02. Jun. 2014 15:39    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 mrgod 10 Unities + Antwort hilfreich


Ubersicht.JPG

 
Hab jetzt selbst eine Lösung gefunden.
Für alle die vielleicht einmal vor der selben Aufgabe stehen:
Mein Achsensystem.3 ist auf den Punkt "MusterSPP001" referenziert. "per Hand" kann man den durch den "SPP_0010" ersetzen. Jedoch nicht per Makro. Hier muss man die Referenz des "Achsensystem.3" ändern. -> einfach Doppelklick auf das Symbol des Achsensystem.3 und dann die Referenz ändern. (siehe Übersicht)
Der Vorteil für alle: der Makrorecorder liefert hier ein recht verständlichen Code, den man mit etwasErfahrung und Übung recht leicht verallgemeinern kann.

mfg Kiki

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