Elementfarben von RGB auf Indexfarben abändern


  
 Bezieht sich auf 
  
 Produkt(e):MicroStation
 Version(en):08.11.09.578
 Umgebung: Windows 7 32 bit,Windows 7 64 bit
 Produktbereich: Programmierung
 Produktunterbereich: VBA
 Ursprünglicher Autor:Artur Goldsweer, Bentley Technical Support Group
  

 Ähnlich wie bei den Ebenen (siehe: <<hier>>) kann auch den jeweiligen Elementen als Farbe entweder ein Index aus der Farbtabelle oder ein beliebiger RGB Wert zugewiesen werden. Um diese RGB Werte auf einen Farbindex zu setzen, kann man folgenden Ansatz verwenden, dies modifiziert jedoch ausschließlich nicht komplexe Strukturen, es werden also keine Zellen oder andere verschachtelte Elemente verändert:

Dim eE As ElementEnumerator
Set eE = ActiveModelReference.GraphicalElementCache.Scan
Do While eE.MoveNext
    With eE.Current
    If (.Color > 255) And (.Type <> 2) Then
        .Color = ActiveModelReference.InternalColorToIndexedColor(.Color)
        .Rewrite
    End If
    End With
Loop