Komplexere Filter
<< < > >> > Hauptteil > Elemente > zur Darstellung > Filter > komplexe

Hinter den folgenden zwei Filtern stehen schon komplexere Algorithmen. Sie bieten mehr Manipulationsmöglichkeiten und damit vielfältigere Resultate.

Der Filter <feTurbulence> hält, was der Name verspricht: er erzeugt (Farb-) Störungen. Dabei ist egal, welche Füllung oder Kontur das Element, das den Filter benutzt, bereits hat, das Ergebnis kann mit einem Störungsbild beim Fernseher verglichen werden. Aber wie genau diese Störung aussieht, kann über diverse Attribute geregelt werden: type kann entweder den Wert "turbulence" oder "fractalNoise" besitzen, wobei ersteres stärkere Konturen aufweist und einen Marmoreffekt hervorruft, zweites ein weiches Farbwolkengemisch erzeugt. baseFrequency beinhaltet die Frequenzen der Störung in X- und Y-Richtung. Ist nur ein Wert angegeben, gilt dieser für beide Richtungen. Sinnvolle Werte bewegen sich hier zwischen 0 und 1, default-Wert ist 0 (und bewirkt keine sichtbare Störung). Über numOctave kann ebenfalls der Grad der Störung beeinflusst werden. Je größer der Wert ist, desto gestörter das Bild. Das Beispiel 31 zeigt den Einfluss, den verschiedene Werte dieser Attribute haben.

Der Filter <feDisplacementMap> erfordert zwei Inputgrafiken: einmal die eigentliche Input-Grafik, die gefiltert werden soll (im Attribut in), und die Grafik, die als Displacementmap dienen soll, im Attribut in2. Der Effekt kann dann so beschrieben werden: es wird eine Farbkanal (R, G, B oder A für Alpha) ausgewählt und alle Pixel der Grafik in2, die diese Farbe haben, werden in der Grafik in verschoben. Dabei wird der Farbkanal für die X-Richtung (xChannelSelector) und Y-Richtung (yChannelSelector) gesondert angegeben. Über scale wird angegeben, wie sehr die Pixel verschoben werden sollen. Das Beispiel 32 zeigt, wie ein Foto über den Filter feImage eingelesen wird und dann mit einem Schwarz-Weiss-SVG als Displacementmap behandelt wird. Beide Original-Input-Grafiken sind ebenfalls zu sehen.