--- title: slug: Web/SVG/Element/feDisplacementMap tags: - Element - SVG - SVG Filter translation_of: Web/SVG/Element/feDisplacementMap ---
{{SVGRef}}

La primitive de filtre SVG <feDisplacementMap> utilise les valeurs de pixel de l'image de {{SVGAttr("in2")}} pour déplacer spatialement l'image de {{SVGAttr("in")}}.

La formule utilisée pour la transformation est comme suit:

P'(x,y) ← P( x + scale * (XC(x,y) - 0.5), y + scale * (YC(x,y) - 0.5))

P(x,y) est l'image en entrée, {{SVGAttr("in")}}, et P'(x,y) est la destination. XC(x,y) et YC(x,y) sont les valeurs des composants du canal désigné par {{SVGAttr("xChannelSelector")}} et {{SVGAttr("yChannelSelector")}}.

Contexte d'utilisation

{{svginfo}}

Attributs

Attributs globaux

Attributs spécifiques

Interface DOM

Cet élément implémente l'interface {{domxref("SVGFEDisplacementMapElement")}}.

Exemple

<svg width="200" height="200" viewBox="0 0 220 220"
     xmlns="http://www.w3.org/2000/svg">
  <filter id="displacementFilter">
    <feTurbulence type="turbulence" baseFrequency="0.05"
        numOctaves="2" result="turbulence"/>
    <feDisplacementMap in2="turbulence" in="SourceGraphic"
        scale="50" xChannelSelector="R" yChannelSelector="G"/>
  </filter>

  <circle cx="100" cy="100" r="100"
      style="filter: url(#displacementFilter)"/>
</svg>

{{EmbedLiveSample('Exemple', 220, 220)}}

Spécifications

Spécification Statut Commentaire
{{SpecName('Filters 1.0', '#feDisplacementMapElement', '<feDisplacementMap>')}} {{Spec2('Filters 1.0')}} Aucun changement
{{SpecName('SVG1.1', 'filters.html#feDisplacementMapElement', '<feDisplacementMap>')}} {{Spec2('SVG1.1')}} Définition initiale

Compatibilité des navigateurs

{{Compat("svg.elements.feDisplacementMap")}}

Voir aussi