Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Farbe mit Parameter steuern

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:  Farbe mit Parameter steuern (3714 mal gelesen)
Dede
Mitglied



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

Beiträge: 29
Registriert: 20.04.2004

erstellt am: 07. Mrz. 2012 14:45    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,

gibt es die Möglichkeit, einen Body mit Hilfe eines Parameters einzufärben? Ich habe Parameter vom Typ Integer und möchte bei dem Wert 1, meinen Body in Gelb haben. Bei dem Wert 2 in beispielweise Grün.
Hat vielleicht jemand so ein Makro, welches diese Aufgabe übernehmen kann? Die Farben sind dabei egal, hauptsache es sind jeweils andere. Der jeweilige Parameter (es gibt 79 Stück/ Parameter.1, Parameter.2 bis Parameter.79) kann einen Wert zwischen 1 und 30 annehmen. Es sind also 30 verschiedene Farben notwendig. Dazu gibt es 79 Bodies, die einfach der Reihe nach durchnummeriert sind. Also Body.1, Body.2 bis Body.79.

Danke

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

moppesle
Ehrenmitglied V.I.P. h.c.
Konstrukteur


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

Beiträge: 3418
Registriert: 28.05.2009

CATIA V5 R19 SP9
WIN 7 64bit

erstellt am: 07. Mrz. 2012 14:59    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 Dede 10 Unities + Antwort hilfreich

Hallo Dede,

das kannst du mit einer Regel abdecken.

Sinngemäß:

if Parameter =="1"
{Körper .Color ="#FFFF66"} 

if Parameter =="2"
{Körper .Color ="#CC0033"}

if Parameter =="2"
{Körper .Color ="#FFFFFF"}


#FFFF6 == hexadezimalcode für Farbe gelb
#CC0033  == hexadezimalcode für Farbe rot
usw.

------------------
Gruß Uwe

Auch Catia ist nur ein Mensch!    

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

tberger
Mitglied
Application Manager CATIA V5 / V6


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

Beiträge: 1385
Registriert: 13.01.2007

WIN 7 64bit
V5R21SP3HF49
3DX/V6 R2016x

erstellt am: 07. Mrz. 2012 16:01    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 Dede 10 Unities + Antwort hilfreich

Mit einem Makro könnte es in etwa so aussehen:

Sub CATMain()

Dim MyDocument As document

Set MyDocument = CATIA.ActiveDocument

Dim MyPart As Part

Set MyPart = MyDocument.Part


Dim MyMainBody As Body

Set MyMainBody = MyPart.Bodies.Item(1)


Dim r, g, b As Long

' ----------------------------


' hier muesste also der Parameter aus deinem Part geholt werden
' z.B.
' Dim MyColorparameter As RealParam
' Set MyColorparameter = MyPart.Parameters.Item("Mein Farbparameter")

' Hier Beispielhaft zugewiesen

MyColorparameter = 1  ' wieder auskommentieren wenn Parameter wie oben benannt im Part vorkommt

' ----------------------------

If MyColorparameter.Value = 1 Then

    r = 255
    g = 128
    b = 255
   
End If

' etc. etc.
If MyColorparameter.Value = 2 Then

    r = 128
    g = 255
    b = 255
   
End If


Dim MySelection As Selection
Set MySelection = MyDocument.Selection

MySelection.Clear

MySelection.Add MyMainBody
MySelection.VisProperties.SetRealColor r, g, b, 1


End Sub

------------------
Grüße aus dem Thurgau
Thomas

+++++++++++++++++++++++++++++++++

CATIA - eine Laune der Natur ...

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

Rosie
Mitglied


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

Beiträge: 2
Registriert: 28.08.2018

erstellt am: 28. Aug. 2018 10: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 Dede 10 Unities + Antwort hilfreich

Hallo zusammen,

ich habe eine Regel für das einfärben eines Körpers erstellt.
Folgende Fehlermeldung erhalte ich.

Syntaxwarnung:
Eine regel darf nur einen formalen Parameter berechnen

Regel:

if Ergebnis\Material =="Aluminium"
{Ergebnis .Color ="#FFFF66"}
else
{Ergebnis .Color ="#ff80ff"}

Habe schon hier im Forum hier gesucht, aber alle bisherigen Antworten waren für mich nicht verständlich.

Gruß

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

moppesle
Ehrenmitglied V.I.P. h.c.
Konstrukteur


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

Beiträge: 3418
Registriert: 28.05.2009

CATIA V5 R19 SP9
WIN 7 64bit

erstellt am: 28. Aug. 2018 13:22    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 Dede 10 Unities + Antwort hilfreich

Hallo Rosie,

mit welchem Editor hast die Regel erstellt?

Über Fog oder Rule.?

Über Fog funktioniert der Syntax nicht.
Kenne aber im Moment diesen für eine Fog nicht.

Versuche es über Knowledge Advisor die Regel zu erstellen. Wenn Lizenz vorhanden.

------------------
Gruß Uwe

Auch Catia ist nur ein Mensch!    

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

Rosie
Mitglied


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

Beiträge: 2
Registriert: 28.08.2018

erstellt am: 28. Aug. 2018 15:40    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 Dede 10 Unities + Antwort hilfreich

Über fog.

Ich dachte mir schon das es damit zusamenhängen könnte.

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

Diesaster
Mitglied
Student


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

Beiträge: 61
Registriert: 05.11.2015

erstellt am: 04. Sep. 2018 09:03    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 Dede 10 Unities + Antwort hilfreich

Hallo Rosie,

ich weiß nicht, ob deine Frage noch aktuell ist, aber in einer Fog funktioniert das mit If und else nicht.

Über eine Fog kannst du die Farbe schon steuern, jedoch musst du das so gestalten, wie das moppesle getan hat.

Folglich müsste es bei dir dann so aussehen:

if Ergebnis\Material =="Aluminium"
{Ergebnis .Color ="#FFFF66"}
if Ergebnis\Material <>"Aluminium"
{Ergebnis .Color ="#ff80ff"}

Hierbei wird dann die Unterscheidung gemacht, ist es Aluminium oder etwas anderes.
Das einzige, was du jedoch beachten musst, ist, dass du die Regel bei Änderung des Materials evaluieren musst. Erst damit wird sich dein PartBody farblich automatisch anpassen können.

Hoffe ich konnte helfen.

Gruß
Diesaster

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