Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Part / Assembly
  Automatisches einfärben von Parts in Products

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:  Automatisches einfärben von Parts in Products (3698 mal gelesen)
rsx
Mitglied


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

Beiträge: 5
Registriert: 12.11.2004

erstellt am: 22. Sep. 2006 20:48    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 CADler,

ist es irgendwie möglich Parts in Products automatisch Farben zuzuweisen? Manche Konstrukteure machen halt alle Teile grau so dass man die Teile schlecht unterscheiden kann. Gibts eine Funktion mit der jedes Part eine andere Farbe bekommt?

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

David Pichler
Mitglied



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

Beiträge: 70
Registriert: 16.12.2005

...immer mal ne andere Maschine - aber ihr würdet ohnehin nur lachen...

erstellt am: 25. Sep. 2006 09:25    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 rsx 10 Unities + Antwort hilfreich

Moin rsx,

jo, mit den "Graphic Properties".
Klick mit RMT in die graue Symbolleiste, Graphic Properties auswählen und ähnlich wie unter anderen Windows Programmen Farbe zuweisen.
Als Besonderheit sollte man wissen, dass die Oberflächen, die man direkt mit der Maus am Objekt selektiert, denen im Baum vorgezogen werden.
Einfach mal probieren.

Dave

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

Augustiner
Mitglied
Konstrukteur


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

Beiträge: 188
Registriert: 02.12.2005

erstellt am: 25. Sep. 2006 13: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 rsx 10 Unities + Antwort hilfreich

Mit einem Makro gehts,das folgende ist aus der Doku.
Viel Spass damit

Code:
' COPYRIGHT DASSAULT SYSTEMES 2002
Option Explicit

' ***********************************************************************
'  Purpose    : Change the color of products using a color randomly selected in a table.
'  Assumptions : A CATProduct document should be active.
'  Author      :
'  Languages  : VBScript
'  Locales    : English
'  CATIA Level : V5R6
' ***********************************************************************
Dim iMax ' Number of colors in the table minus one
iMax = 19

' ***********************************************************************
'
' Purpose:  Add a product in a group.
'
' Inputs :  oNode    Product    the product
'          oGroup  Product    the array of group
'          iIndex  Integer    the index of the product
'
' ***********************************************************************
Sub TreatANode(ByRef oNode, ByRef oGroup, ByRef iIndex)

    Dim iNumberOfSubComponent As Integer
    iNumberOfSubComponent = oNode.Products.Count

    If (iNumberOfSubComponent = 0) Then
        ' Add the leaf to the group
        oGroup(iIndex).AddExplicit oNode
        ' Prepare the next index
        iIndex = iIndex + 1
        If (iIndex > iMax) Then
            iIndex = 0
        End If
    Else
      ' Treat the subcomponents
      Dim I As Integer
      For I = 1 to iNumberOfSubComponent
          Call TreatANode(oNode.Products.Item(I), oGroup, iIndex)
      Next
    End If

End Sub

' ***********************************************************************
'
' Purpose:  Main.
'
' ***********************************************************************
Sub CATMain()

    ' Build the color table (oColor(i,0) = Red, oColor(i,1) = Green, oColor(i,2) = Blue)
    Dim oColor(19,2)
   
    'Red
    ocolor(0,0)=255
    ocolor(0,1)=0
    ocolor(0,2)=0
    'Dark Red
    ocolor(1,0)=220
    ocolor(1,1)=90
    ocolor(1,2)=90
    'Light Red
    ocolor(2,0)=255
    ocolor(2,1)=150
    ocolor(2,2)=150
    'Fushia
    ocolor(3,0)=255
    ocolor(3,1)=150
    ocolor(3,2)=230
    'Green
    ocolor(4,0)=60
    ocolor(4,1)=255
    ocolor(4,2)=30
    'Dark Green
    ocolor(5,0)=30
    ocolor(5,1)=190
    ocolor(5,2)=30
    'Light Green
    ocolor(6,0)=190
    ocolor(6,1)=255
    ocolor(6,2)=130
    'Green-blue
    ocolor(7,0)=80
    ocolor(7,1)=255
    ocolor(7,2)=160
    'Blue
    ocolor(8,0)=80
    ocolor(8,1)=225
    ocolor(8,2)=255
    'Dark Blue
    ocolor(9,0)=90
    ocolor(9,1)=140
    ocolor(9,2)=255
    'Light Blue
    ocolor(10,0)=180
    ocolor(10,1)=255
    ocolor(10,2)=255
    'Yellow
    ocolor(11,0)=255
    ocolor(11,1)=255
    ocolor(11,2)=30
    'Dark Yellow
    ocolor(12,0)=128
    ocolor(12,1)=128
    ocolor(12,2)=30
    'Yellow-orange
    ocolor(13,0)=255
    ocolor(13,1)=190
    ocolor(13,2)=70
    'Brown
    ocolor(14,0)=160
    ocolor(14,1)=90
    ocolor(14,2)=60
    'Light Brown
    ocolor(15,0)=200
    ocolor(15,1)=170
    ocolor(15,2)=140
    'Pink
    ocolor(16,0)=220
    ocolor(16,1)=0
    ocolor(16,2)=220
    'Mauve
    ocolor(17,0)=190
    ocolor(17,1)=90
    ocolor(17,2)=255
    'Grey
    ocolor(18,0)=128
    ocolor(18,1)=128
    ocolor(18,2)=128
    'White
    ocolor(19,0)=200
    ocolor(19,1)=200
    oColor(19,2)=200

    ' Retrieve the root product
    Dim oRoot_Product As AnyObject
    Set oRoot_Product = CATIA.ActiveDocument.Product

    ' Retrieve the selection object
    Dim oSelection As Selection
    Set oSelection = CATIA.ActiveDocument.Selection
   
    ' Build the groups of products which will share the same color
    Dim oGroup(20)
    Dim cGroups As Groups
    Set cGroups = oRoot_Product.GetTechnologicalObject("Groups")
    Dim I as integer
    For I = 0 to 19
        Set oGroup(I) = cGroups.Add
    Next

    ' Build the groups by exploring recursively all nodes in the product structure
    Dim iIndex
    iIndex = 0
    Call TreatANode(oRoot_Product, oGroup, iIndex)

    ' Set the colors
    For I = 0 to 19
        oGroup(I).FillSelWithExtract
        oSelection.VisProperties.SetRealColor oColor(I,0), oColor(I,1), oColor(I,2), 1
        cGroups.Remove oGroup(I).Name
        Set oGroup(I) = Nothing
    Next
    oSelection.Clear
   
    Set oSelection = Nothing
    Set oRoot_Product = Nothing

MsgBox "Teile einfaerben abgeschlossen ! Sie koennen weiterarbeiten ...."


End Sub


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

rsx
Mitglied


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

Beiträge: 5
Registriert: 12.11.2004

erstellt am: 03. Okt. 2006 11:04    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 Augustiner, genau sowas hab ich gemeint. Dafür wäre eigentlich schon lange ein Button in Catia fällig.

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

leipziger
Mitglied
Dipl.-Ing. Maschinenbau (FH)


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

Beiträge: 171
Registriert: 05.09.2005

CatiaV5 R14 SP8
CatiaV5 R16 SP5

erstellt am: 05. Okt. 2006 08: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 rsx 10 Unities + Antwort hilfreich

Hallo

wenn wir einmal dabei sind!

Kennt einer den Programmcode wie man die Farbe wieder zurücksetzt.
Also wieder auf automatic setzt, sodass das übergeordnete Feature die Farbe vorgibt?

Danke

------------------
----------
mich kann man mieten - ein Hoch auf die CatiaV5-Leiharbeiter

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

Lusilnie
Mitglied



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

Beiträge: 1486
Registriert: 13.07.2005

erstellt am: 07. Okt. 2006 20: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 rsx 10 Unities + Antwort hilfreich

Hallo leipziger,

dafür ist (,soviel ich weiß, kann es gerade nicht prüfen,) der letzte Parameter verantwortlich, also bei "...SetRealColor" die ",1". Wenn dort ein ",0" steht, sollte die übergeordnete Farbe wieder übernommen werden. Ich hoffe, das wolltest Du wissen!


mfg,
Lusilnie

------------------

Alle Aussagen zu DassaultSystemes-Produkten sind sehr optimistisch, selbst diese!!!

frei nach größeren Geistern

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

STEMEH
Mitglied
konstrukteur

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

Beiträge: 1
Registriert: 08.11.2007

erstellt am: 08. Nov. 2007 14: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 Nur für rsx 10 Unities + Antwort hilfreich

Hallo,

ich habe gerade versucht das oben aufgeführte Makro laufen zu lassen.

Leider ohne Erfolg.

Ist dieses Makro nicht mehr "up to date" oder ist es einfach nur Fehlerhaft.
Bin leider Leie im Bereich Makro.

Ich hoffe es kann mir einer von Euch helfen.

Vielen Dank im vorraus

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