Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  CATIA V5 Programmierung
  Farbe von Flächen ändern

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 von Flächen ändern (3183 mal gelesen)
Berges
Mitglied
Techniker


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

Beiträge: 119
Registriert: 16.08.2001

Catia V5 R24/ Sp1 unter WIN 7

erstellt am: 07. Okt. 2014 14: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


FLAECHENFARBE.zip

 
Hallo zusammen

habe mir aus einigen Programmen von hier ein Programm gebastelt wo man die Farbe von Flächen ändern kann.

Das auswählen der alte Farbe und das Auswählen der neuen Farbe Funktioniert.

Leider ändert er mir die Farbe nicht.

Könnt Ihr mir helfen?

Gruß

Ralf

------------------
KOBUE

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: 07. Okt. 2014 14: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 Berges 10 Unities + Antwort hilfreich

Servus
Probier mal nach dem "oSelection.Search ("Topology.CGMFace,sel")" direkt die Farbe über die Visproperties zu ändern.
IMHO brauchst du den extra Array nicht.

Gruß
Bernd

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

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

Berges
Mitglied
Techniker


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

Beiträge: 119
Registriert: 16.08.2001

Catia V5 R24/ Sp1 unter WIN 7

erstellt am: 07. Okt. 2014 15: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

Hallo Bernd

Danke für die schnelle Antwort.
Leider weiß ich nicht was Du meinst.

Ich habe nicht so viel Ahnung vom Programmieren.

Kannst Du mir konkret sagen was Du meinst?

Gruß

Ralf

------------------
KOBUE

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: 07. Okt. 2014 15: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 Berges 10 Unities + Antwort hilfreich

Servus
(ungetestet) Zeilen:
Code:
oSelection.Search ("Topology.CGMFace,sel")
Dim aSurf()
ReDim aSurf(oSelection.Count)
For i = 1 To oSelection.Count
  Set aSurf(i) = oSelection.Item(i)
Next
oSelection.Clear
Dim R As Long, _
    G As Long, _
    B As Long, _
    iCount As Integer
    iCount = 0
For i = 1 To UBound(aSurf)
  oSelection.Clear
  oSelection.Add (aSurf(i).Reference)
  oVisPropertySet.GetRealColor R, G, B
  If R = CLng(aRGB_Old(0)) And G = CLng(aRGB_Old(1)) And B = CLng(aRGB_Old(2)) Then
      oVisPropertySet.SetRealColor CLng(aRGB_New(0)), CLng(aRGB_New(1)), CLng(aRGB_New(0)), 0

      oVisPropertySet.SetRealOpacity 255, 0

      iCount = iCount + 1
  End If
Next


ersetzen durch:
Code:
oSelection.Search ("Topology.CGMFace,sel")
oVisPropertySet.GetRealColor R, G, B
  If R = CLng(aRGB_Old(0)) And G = CLng(aRGB_Old(1)) And B = CLng(aRGB_Old(2)) Then
      oVisPropertySet.SetRealColor CLng(aRGB_New(0)), CLng(aRGB_New(1)), CLng(aRGB_New(0)), 0

      oVisPropertySet.SetRealOpacity 255, 0
  End If


oder mal Testweise die Zeile:

Code:
oSelection.Add (aSurf(i).Reference)
ändern.

Gruß
Bernd

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

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

Berges
Mitglied
Techniker


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

Beiträge: 119
Registriert: 16.08.2001

Catia V5 R24/ Sp1 unter WIN 7

erstellt am: 07. Okt. 2014 15: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

Hallo Bernd,

hat leider beides nicht funktioniert.

Noch einer eine Idee?

Das einzelne Script von tomtom1972
(http://ww3.cad.de/foren/ubb/Forum137/HTML/002024.shtml#000007)
was ich dafür zweckentfremdet habe Funktioniert.

Gruß
Ralf

------------------
KOBUE

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: 07. Okt. 2014 15: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 Berges 10 Unities + Antwort hilfreich

Servus
Wird die entsprechende Zeile zu umfärben aufgerufen (If-Bedigung).
Bitte mal mit Haltemarken/Schrittweises ablaufen lassen prüfen.

Gruß
Bernd

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

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

Berges
Mitglied
Techniker


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

Beiträge: 119
Registriert: 16.08.2001

Catia V5 R24/ Sp1 unter WIN 7

erstellt am: 07. Okt. 2014 17: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


Flaechenfarbe_aendern.zip

 
Hallo Bernd

Schrittweise ablaufen Funktioniert nicht.
Warum weiß ich nicht.

Das ganze hängt wohl an der Abfrage der Farbe.

Wenn ich die Farbe einzeln übergebe Funktionierst (siehe Anhang).

Gruß
Ralf

Ralf

------------------
KOBUE

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: 07. Okt. 2014 17: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 Berges 10 Unities + Antwort hilfreich

Servus
Die Suche "oSelection.Search ("Topology.CGMFace,sel")" selektiert nichts.
Was willst du suchen? Wo willst du überall suchen (nur in der Selektion)?

Gruß
Bernd

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

[Diese Nachricht wurde von bgrittmann am 07. Okt. 2014 editiert.]

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

Thomas Harmening
Ehrenmitglied V.I.P. h.c.
Arbeiter ツ



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

Beiträge: 2897
Registriert: 06.07.2001

NX 10
Win 7

erstellt am: 07. Okt. 2014 18: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 Berges 10 Unities + Antwort hilfreich

Wenn oSelection.Search ("Topology.CGMFace,sel") nichts weiss was für Flächen es zum umfärben hat, ist der Zähler immer bei 0

Snipp, der Code sollte funktionieren

-Farbenelement der zu ändernden Fläche Picken,
-neue Farbe per Dialog auswählen,
-die Surface im Baum auswählen

Code:
Private Sub CommandButton3_Click()

sRGB_Old = TextBox1.Value
sRGB_New = TextBox2.Value

' Unload FLAECHENFARBE

Set oDoc = CATIA.ActiveDocument
Set oProd = oDoc.Product

    ' What do you want to select
    Dim EnableSelectionFor(0)
    EnableSelectionFor(0) = "AnyObject"

    ' Reset the Selection
    Set oSelection = oDoc.Selection
    oSelection.Clear
   
    Me.Hide
    UserSelection = oSelection.SelectElement2(EnableSelectionFor, "Fläche auswählen die fablich geändert werden sollen", False)
    Me.Hide

Set oSelection = oDoc.Selection
Set oVisPropertySet = oSelection.VisProperties


[Diese Nachricht wurde von Thomas Harmening am 07. Okt. 2014 editiert.]

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

Berges
Mitglied
Techniker


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

Beiträge: 119
Registriert: 16.08.2001

Catia V5 R24/ Sp1 unter WIN 7

erstellt am: 08. Okt. 2014 13:17    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

Danke an Euch beiden.

JETZT FUNKTIONIERS 


Gruß

Ralf

------------------
KOBUE

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

Berges
Mitglied
Techniker


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

Beiträge: 119
Registriert: 16.08.2001

Catia V5 R24/ Sp1 unter WIN 7

erstellt am: 26. Okt. 2015 14:02    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


farbe.zip

 
Hallo zusammen,

leider funktioniert das Programm nicht unter R24.
Es stopt schon bei dieser Zeile

Private Declare Function ChooseColor_Dlg Lib "comdlg32.dll" Alias "ChooseColorA"

Was ist Falsch?

------------------
KOBUE

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: 26. Okt. 2015 14:29    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 Berges 10 Unities + Antwort hilfreich

Hallo Berges,

kann es sein, dass Du mit VBA7 programmierst?

Dann musst Du die Deklarationen anpassen für 'ChooseColor' und eventuell noch für Variable.

Zu finden hier:
http://catia2.cad.de/index.php/de/tipps-tricks/programmierung/67-winapi-txt-vba7?highlight=WyJ2YmE3Il0=

Tschau,
Joe

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

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

Berges
Mitglied
Techniker


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

Beiträge: 119
Registriert: 16.08.2001

Catia V5 R24/ Sp1 unter WIN 7

erstellt am: 26. Okt. 2015 14:55    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


Unbenannt.png

 
Hallo Joe

VBA7 ist richtig.

Leider habe ich immer noch eine Fehlermeldung (siehe Anhang).

Gruß

Ralf

------------------
KOBUE

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: 26. Okt. 2015 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 Berges 10 Unities + Antwort hilfreich

Hallo Berges,

wie sehen die Deklarationen aus? Insbesondere von ChooseColor?

Tschau,
Joe

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

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



Projektmanager Anlagenbau (m/w/d)
Sie möchten Teil eines Unternehmens mit starkem Purpose sein? Aurubis ist ein führender internationaler Multimetallproduzent und einer der größten Kupferrecycler der Welt. Unsere Metalle sind die Grundlage für Energiewende, Digitalisierung und Technologien der Zukunft. Rock-solid & rolling. Hands-on & high-tech. Skilled & seriously sustainable. Das ist es, was unsere 7.200 Mitarbeiter jeden Tag zu Höchstleistungen antreibt....
Anzeige ansehenTeamleitung, Gruppenleitung
Berges
Mitglied
Techniker


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

Beiträge: 119
Registriert: 16.08.2001

Catia V5 R24/ Sp1 unter WIN 7

erstellt am: 26. Okt. 2015 15: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

Hallo Joe

Es läuft wieder.

Danke für die Hilfe.

Hier der geänderte Code.

Private Declare PtrSafe Function ChooseColor_Dlg Lib "comdlg32.dll" Alias "ChooseColorA" _
(lpcc As CHOOSECOLOR_TYPE) As Long

Private Type CHOOSECOLOR_TYPE
  lStructSize As Long
  hwndOwner As LongPtr
  hInstance As LongPtr
  rgbResult As Long
  lpCustColors As LongPtr
  flags As Long
  lCustData As LongPtr
  lpfnHook As LongPtr
  lpTemplateName As String
End Type

Guß

Ralf

------------------
KOBUE

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