Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Material Copy/ Paste

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:  Material Copy/ Paste (816 mal gelesen)
FRZ
Mitglied
Maschinenbauer


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

Beiträge: 13
Registriert: 04.06.2020

Windows 10, CATIA V5R19

erstellt am: 15. Jul. 2020 10:58    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 möchte die Materialeigenschaften eines Körpers kopieren und in einem anderen Körper den Material einfügen. Könnt Ihr mir dabei helfen?

Ich bedanke mich im Voraus

Beste Grüße
Fariz

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: 15. Jul. 2020 11: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 Nur für FRZ 10 Unities + Antwort hilfreich

Servus

Probier mal mit GetMaterialOnBody das Material auslesen und per ApplyMaterialOnBody dem andern Körper zuzuweisen.
(siehe auch Applying or Retrieving a Material on a Product, a Part, or a Body in der Doku)

Gruß
Bernd

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

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

FRZ
Mitglied
Maschinenbauer


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

Beiträge: 13
Registriert: 04.06.2020

Windows 10, CATIA V5R19

erstellt am: 23. Jul. 2020 13:34    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 vielen Dank Bernd, dass du immer hilfsbereit bist,und entschuldige mich bitte für die späte Antwort!

Ich sende mal den Code, den ich geschrieben hab. Die Körper sollen zuerst as Result kopiert und danach gelöscht werden. Aber Ich möchte die Materialwerte erhalten.
Der Code funktioniert aber iwie nicht, kannst du mir bitte helfen, wo ich den Fehler mache?

Beste Grüße
Fariz

Sub CATMain()
        Dim arrlocMaterial(1 To 100) As Material

        Dim locMatManager As MaterialManager
       
        Set oDoc = CATIA.ActiveDocument
        Set oPart = oDoc.Part

 
For X = oPart.Bodies.Count To 1 Step -1

        Set oBody = oPart.Bodies.Item(X)
        locMatManager.GetMaterialOnBody(oBody, arrlocMaterial(X))
       
Next

...
''' hier findet copy and paste special statt

For X = oPart.Bodies.Count To 1 Step -1

Set oBody = oPart.Bodies.Item(X)
        locMatManager.ApplyMaterialOnBody(oBody, arrlocMaterial(X))
       
Next

End Sub

   

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: 23. Jul. 2020 13: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 FRZ 10 Unities + Antwort hilfreich

Servus

Kommt eine Fehlermeldung?
Wird der Array mit den Materialien gefüllt?
Wo ist dein Zugriff auf den Material-Manager?  (zB oPart.GetItem("CATMatManagerVBExt"))
ApplyMaterialOnBody erwartet noch einen dritten Parameter für den Linkmode (bei dir vermutlich 0)

Gruß
Bernd

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

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

FRZ
Mitglied
Maschinenbauer


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

Beiträge: 13
Registriert: 04.06.2020

Windows 10, CATIA V5R19

erstellt am: 23. Jul. 2020 13: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

in den Zeilen

locMatManager.GetMaterialOnBody oBody, arrlocMaterial(X)

locMatManager.ApplyMaterialOnBody oBody, arrlocMaterial(X)

bekomme ich den Fehler "Argument not optional ". Der Array ist komplett leer. Ich entschuldige mich aber ich weiß eigentlich gar nicht wieso ich  " (zB oPart.GetItem("CATMatManagerVBExt"))" und den dritten Parameter für den Linkmode brauche oder was die machen... (mein erster Monat mit VBA)

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: 23. Jul. 2020 13:57    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 FRZ 10 Unities + Antwort hilfreich

Servus

Die Doku (V5Automation.chm) ist dein Freund 
Kurzes Beispiel:

Code:
Sub CATMain()

  Dim oPartDocument As Document
  Dim oRootPart As Part
  Dim oManager
  Dim sLinkMode as Short
  Dim oSecondBody As Body
  Dim oFirstBody As Body
  Dim oAppliedMaterial as Material

  Set oPartDocument = CATIA.ActiveDocument
  Set oRootPart = oPartDocument.Part
  Set oManager = oRootPart.GetItem("CATMatManagerVBExt")

  Set oFirstBody = oRootPart.Bodies.Item(1)
  Set oSecondBody = oRootPart.Bodies.Item(2)

  oManager.GetMaterialOnBody oFirstBody, oAppliedMaterial

  sLinkMode = 0 '0 = ohne Link
   
  oManager.ApplyMaterialOnBody oSecondBody, oAppliedMaterial, sLinkMode 

End Sub


Gruß
Bernd

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

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

FRZ
Mitglied
Maschinenbauer


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

Beiträge: 13
Registriert: 04.06.2020

Windows 10, CATIA V5R19

erstellt am: 23. Jul. 2020 14:08    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 Vielen Dank Bernd

Hervorragend!!! es Funktioniert einwandfrei ich werde es nur meinem Code anpassen, dann ist es fertig...

Und die Doku werde ich mir auf jeden Fall anschauen, Vielen Dank für die Empfehlung

Beste Grüße
Fariz

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