El filtro SVG <feTurbulence> genera ruido que es útil para simular varios fenómenos naturales como nubes, fuego y humo, y para generar texturas complejas como mármol o granito.
El ruido se puede utilizar para distorsionar imágenes y texto. La función de turbulencia Perlin se utiliza para generar ruido Perlin.
Sintaxis:
<feTurbulence type = "" baseFrequency = "" numOctaves = "" seed = "" slitchTiles = "" />
Atributos:
- tipo: Tiene dos valores, es decir, turbulencia/ruidofractal. El valor predeterminado es turbulencia.
- baseFrequency: Afecta al tamaño (o escala) y al grano del ruido generado. El valor predeterminado es 0 .
- numOctaves: Define la frecuencia o detalle del ruido. El valor predeterminado es 1.
- semilla: proporciona un número inicial diferente para la función aleatoria.
- StitchTiles: se utiliza para crear un efecto de costura cuando tiene dos áreas adyacentes de ruido. Define el comportamiento del ruido perlin en el borde y las esquinas.
Ejemplo 1:
<!DOCTYPE html> <html> <body> <svg width="400" height="400" viewBox="0 0 250 250"> <filter id="FillPaint"> <feTurbulence type="fractalNoise" baseFrequency="2" numOctaves="2" seed="1" stitchTiles="nostitch" result="turbulence" /> <feDisplacementMap in2="turbulence" in="SourceGraphic" scale="50" xChannelSelector="B" yChannelSelector="B" /> </filter> <ellipse cx="100" cy="60" rx="100" ry="50" style=" fill: green; filter: url(#FillPaint);" /> </svg> </body> </html>
Producción:
Ejemplo 2:
<!DOCTYPE html> <html> <body> <svg width="200" height="200" viewBox="0 0 220 220"> <filter id="FillPaint"> <feTurbulence type="Turbulence" baseFrequency="0.5" numOctaves="2" seed="5" stitchTiles="stitch" /> <feDisplacementMap in2="turbulence" in="SourceGraphic" scale="50" xChannelSelector="B" yChannelSelector="B" /> </filter> <rect width="200" height="200" style=" fill:green; filter: url(#FillPaint);" /> </svg> </body> </html>
Producción:
Publicación traducida automáticamente
Artículo escrito por epistler_999 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA