Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  CATIA selection

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:  CATIA selection (1304 mal gelesen)
MrAnnonymos4
Mitglied


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

Beiträge: 3
Registriert: 07.12.2015

erstellt am: 07. Dez. 2015 11:14    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 liebes Forum,

ich habe vor kurzem begonnen die Wirtschaftsinformatik Dual ( 3 Monate Uni, 3 Monate Unternehmen) zu studieren.

Meine erste richtige Aufgabe ist es nun, ein CATIA Macro zu programmieren, wobei ich seit 3 Tagen immer mit dem gleichen Problemen zu kämpfen habe - deswegen dieser Beitrag.

Das Macro soll aus einer relativ grossen Baugruppe alle Parts kopieren, die aus einem bestimmten Material "ABC" besteht. Wenn ich "von Hand" eine Suche mit dem Parameter:

Code:

Name in Graph="*ABC*,all"


starte und diese mir Ctrl+c / Ctrl+v in einem anderen Produkt einfüge, funktioniert alles wunderbar.

Wie erziehle ich aber das gleiche Ergebnis mit einem Macro? Bei allen Versuchen die ich bis jetzt gestartet habe, kamen im anderen Produkt nur einzelne Parameter, nicht aber Parts an...

Ich denke das Problem liegt darin, dass die Suche wirklich NUR das Material auswählt, und nicht wie von Hand den ganzen dazugehörigen Part.

Code:

theSearch.Search "NameInGraph=*ABC*,all"

Ihr habt bestimmt Ideen wie man das machen kann - ich wäre euch wirklich dankbar.

Viele Grüsse,
MrAnnonymos

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: 07. Dez. 2015 12: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 MrAnnonymos4 10 Unities + Antwort hilfreich

Hallo,

also von Hand durchgeführt und mit dem Makrorekorder aufgenommen, kommt folgendes bei raus:

Language="VBSCRIPT"

Sub CATMain()

Dim partDocument1 As Document
Set partDocument1 = CATIA.ActiveDocument

Dim selection1 As Selection
Set selection1 = partDocument1.Selection

selection1.Search "CATProductSearch.MatMaterialType.Name=*16' 'Mn*,all"

End Sub

Daran denken das die Suche Sprachabhängig ist.

Gruß
Randle

[Diese Nachricht wurde von Randle am 07. Dez. 2015 editiert.]

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

MrAnnonymos4
Mitglied


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

Beiträge: 3
Registriert: 07.12.2015

erstellt am: 07. Dez. 2015 13:07    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


Capture.PNG

 
Danke für die Antwort.
Mit dem Recorder habe ich auch schon rumprobiert, allerdings hat er mir nicht helfen können, weil er zum kopieren einfach direkt die Namen der gefundenen Parts verwendet hat, und sie sich nicht irgendwie aus der Selection nachvollziehbar rausgesuchte.

Wenn ich deinen Code benutze, dann habe ich ein ähnliches Ergebnis wie zuvor. Mit Copy/Paste wird aus 39 entsprechenden Parts das kopiert, was ich hier als Foto angehängt habe.

Was mache ich noch falsch ?


Grüsse,
MrAnnonymos4

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

joehz
Moderator
Freiberuflicher Konstrukteur


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

Beiträge: 1057
Registriert: 25.11.2006

Win7 Pro 64 + Ubuntu + Irix6.5.20
Dell Precision M6600 i7-2960XM 2.7GHz 16GB
NVidia Quadro M5010
Catia V5R19
VB6Pro.SP6/VBA 6.5.1053

erstellt am: 07. Dez. 2015 13: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 MrAnnonymos4 10 Unities + Antwort hilfreich

mehr hast ja auch nicht ausgewählt.

Du müsstest nach der Auswahl von jedem selektierten Item(Material) das dazugehörige Part/Product kopieren.

Mit osel.Item2(n).LeafProduct.Name o.ä. kommst an die Instanz ran. Hierbei steht osel für die Selektion und n für den Index innerhalb der Selektion.

Kleine Gemeinheit dabei: Du musst die erste Selektion zwischenbunkern, etwa in einem Array.
Danach über die Array-Elemente einzeln die Parts rausfinden und zu einer neuen Selektion addieren.
Dann kopieren u pasten.

Tschau,
Joe

------------------
Inoffizielle Catia Hilfeseite

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: 07. Dez. 2015 13:49    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 MrAnnonymos4 10 Unities + Antwort hilfreich

Hallo,

Also die vom Makrorekorder genutzten Namen müsstest du dann natürlich noch "neutralisieren", es ging mir hier eher erst mal um das generelle Vorgehen.

Zum Kopieren der Parts müsstest du das Suchergebnis (enthält ja nur Materialeinträge) innerhalb des Makros noch mal einzeln durchgehen und das jeweilige Elternobjekt (das Part) des Materialparameters zwischenspeichern (z.B. in einer Collection).

Abschließend dann das Suchergebnis leeren (selection.clear) und die Objekte aus der Zwischenspeicherung der Selection hinzufügen, diese dann kopieren und wieder einfügen.

Gruß
Randle

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

MrAnnonymos4
Mitglied


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

Beiträge: 3
Registriert: 07.12.2015

erstellt am: 08. Dez. 2015 15: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

Vielen Dank, Ihr habt mir weitergeholfen.
Ich habe jetzt alle Parts in einer Liste abgelegt und versuche sie erneut zur Selection hinzuzufügen.


Viele Grüsse,
MrAnnonymos4

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