SetLayerFilter(layer, table)
Name
SetLayerFilter()
den Filter kennt, welcher die Untertabellen adressiert. Bitte
sehen Sie unten für eine Liste der unterstützten Filtertypen.
Args
Name
festgelegt wurde. Je nach Filter werden hier die
entsprechenden Werte angegeben. Einige Filter wie XFlip
oder
Gray
benötigen überhaupt keine Argumente. In diesen Fällen
müssen Sie nicht die Tabelle Args
übergeben. Bitte siehe
unten, welche Argumente von den einzelnen Filter erforderlich
sind. Beachten Sie auch, dass SetLayerFilter()
Standartwerte
für jeden Filter hat. So können Sie auch Argumente weglassen.
In diesem Fall wird SetLayerFilter()
die Voreinstellungen für
den jeweiligen Filter verwenden.
Disable
False
, um den Filter
zu aktivieren oder True
, um ihn zu deaktivieren. Dieser Tag
ist optional. Wenn nichts angegeben ist, wird der Filter
standardmäßig aktiviert.
Priority
SetLayerFilter()
verwendet
wird um herauszufinden, in welcher Reihenfolge die Filter
angewendet werden sollen. Die Prioritätsstufe muss zwischen 0
(=niedrigste Priorität) und 255 (=höchste Priorität) liegen. Als
Beispiel wird vor dem Farbtonfilter der Unschärfefilter angewendet
werden, wenn Sie dem Filter Blur
eine Priorität von 10 und dem
Filter Tint
eine Priorität von 9 zuweisen. Dieser Tag ist auf 0
voreingestellt, falls nichts angegeben wird.
Eine Liste der unterstützten Ebenenfilter folgt weiter unten.
Bitte beachten Sie, dass die Argumente nicht dem Filter als
Namentabellen-Tag, sondern der Reihe nach in dem Args
-Feld
übergeben werden. Das heißt, für den Filter Modulate
, würden
Sie die Helligkeitseinstellung im Feld-Element 0 setzten,
im Feld-Element 1 die Sättigung und die Farbtoneinstellung
im Element 2 die Reihenfolge, in der die einzelnen Argumente
unten aufgeführt werden, entspricht der Reihenfolge, wie sie
in der Args
-Tabelle zu erwarten sind. Hier ist die Liste:
Radius:
Radius:
Inc:
Inc
auf True
gesetzt ist, wird der Kontrast
erhöht. bei False
hingegen verringert.
Repeat:
Radius:
Radius:
Red:
Green:
Blue:
Für jeden Farbkanal müssen Sie einen Fließkommawert übergeben, der die gewünschte Gammakorrektur angibt. Ein Wert von 1.0 bedeutet keine Veränderung, ein Wert kleiner als 1.0 dunkelt den Kanal ab und ein Wert von mehr als 1.0 wird den Kanal aufhellen. Siehe GammaBrush für Details.
Brightness:
Saturation:
Hue:
Für jede Einstellung übergeben Sie einen Fließkommawert, der die gewünschte Änderung beschreibt. Ein Wert von 1.0 bedeutet keine Veränderung, ein Wert kleiner als 1.0 verringert die Helligkeit/Sättigung/Farbton, während ein Wert von mehr als 1.0 sie erhöht. Siehe Pinsel modulieren für Details.
Dither:
Dither
auf True
gesetzt ist, wird Dithering angewendet,
mit False
nicht. Dithering ist langsamer, aber erzeugt besser
aussehende Grafiken.
Radius:
CellSize:
Siehe Pixelierter Pinsel für Details.
Standardmäßig wird dieser Befehl die Farben auf 256 reduzieren
und das Dithering ist aktiviert. Sie können dies ändern, indem
Sie die optionalen Parameter angeben. Beachten Sie, dass der
colors
Parameter einen Wert zwischen 1 und 256 haben muss.
Colors:
Dither:
Dither
auf True
gesetzt ist, wird Dithering angewendet,
mit False
nicht. Dithering ist langsamer, aber erzeugt besser
aussehende Bilder.
Siehe Pinsel Quantisieren für Details. (V6.0)
Der SepiaTone
-Befehl versucht das Aussehen von alten Fotografien
zu simulieren. Das zweite Argument level
steuert die Intensität der Sepiatönung
und kann sich von 0 bis 255 bewegen. Sie können auch einen
Prozentsatz als Zeichenkette angeben ("50%"). Üblicherweise
wird ein Wert von etwa 204 verwendet (= 80%), der am besten
aussieht.
Level:
Siehe SepiaTone Pinsel für Details.
Radius:
Level:
Siehe Pinsel solarisieren für Details.
Degrees:
Color:
Ratio:
Wavelength:
Ampltiude:
Phase:
CX:
CY:
Siehe Wasserregenpinsel für Details.
Um alle Ebenenfilter zu deaktivieren, können Sie im zweiten
Argument den besonderen Wert 0 an Stelle einer Tabelle übergeben.
SetLayerFilter()
hebt dann alle Filter auf, die derzeit aktiv
auf der angegebenen Ebene sind.
Bitte beachten Sie, dass SetLayerFilter()
keine vorhandenen
Filtereinstellungen zurücksetzen wird, wenn der Befehl aufgerufen
wird. Stattdessen werden alle vorhandenen Filtereinstellungen
behalten und die neuen Einstellungen werden mit den alten
zusammengeführt werden. Wenn Sie also eine Ebene haben, auf die
mehrere Filter wirken und Sie wollen nur die Konfiguration eines
dieser Filter ändern, reicht es aus, nur eine untergeordnete
Tabelle für diesen einzelnen Filter in SetLayerFilter()
anzugeben.
Es ist nicht notwendig, alle anderen Filter erneut an
SetLayerFilter()
zu übergeben.
Beachten Sie auch, dass die Ebenenfilter die CPU intensiv belasten können, vor allem dann, wenn für eine Ebene Übergangseffekte gebraucht werden, auf welche einige Filter angewendet wurden. In diesem Fall müssen die Filter für jedes neue Einzelbild des Übergangseffekts neu berechnet werden. Je nach Komplexität des Filters kann dies einige Zeit dauern.
Sie können auch den SetLayerStyle() Befehl verwenden, um die Konfiguration eines oder mehrerer Ebenenfilter zu ändern.
Ab Hollywood 10.0 kann dieser Befehl auch mit Ebenengruppen arbeiten, so dass Sie auch den Namen einer Ebenengruppe übergeben können.
table = { {Name = "YFlip"}, {Name = "Modulate", Args = {1.0, 2.0, 1.0}, Priority = 10}, {Name = "Swirl", Args = {128}, Priority = 9} } SetLayerFilter(1, table)Der obige Code erhöht die Sättigung der Ebene 1 um 200%, wirbelt die Ebene um 180 Grad und spiegelt sie dann auf der y-Achse.
SetLayerFilter(1, {{Name = "YFlip", Disable = True}})Dieser Code entfernt den Filter
YFlip
von der Ebene 1, jedoch
werden die beiden anderen Filter (Modulieren und Wirbel) behalten.