Path: blob/main/files/en-us/web/svg/element/fedisplacementmap/index.md
6567 views
------{{SVGRef}}
The <feDisplacementMap> SVG filter primitive uses the pixel values from the image from {{SVGAttr("in2")}} to spatially displace the image from {{SVGAttr("in")}}.
The formula for the transformation looks like this:
P'(x,y) ← P(x + scale * (XC(x,y) - 0.5), y + scale * (YC(x,y) - 0.5))
where P(x,y) is the input image, {{SVGAttr("in")}}, and P'(x,y) is the destination. XC(x,y) and YC(x,y) are the component values of the channel designated by {{SVGAttr("xChannelSelector")}} and {{SVGAttr("yChannelSelector")}}.
Usage context
{{svginfo}}
Attributes
Global attributes
{{SVGAttr("class")}}
{{SVGAttr("style")}}
Specific attributes
{{SVGAttr("in")}}
{{SVGAttr("in2")}}
{{SVGAttr("scale")}}
{{SVGAttr("xChannelSelector")}}
{{SVGAttr("yChannelSelector")}}
DOM Interface
This element implements the {{domxref("SVGFEDisplacementMapElement")}} interface.
Example
{{EmbedLiveSample('Example', 220, 220)}}
Specifications
{{Specifications}}
Browser compatibility
{{Compat}}
See also
{{SVGElement("filter")}}
{{SVGElement("animate")}}
{{SVGElement("set")}}
{{SVGElement("feBlend")}}
{{SVGElement("feColorMatrix")}}
{{SVGElement("feComponentTransfer")}}
{{SVGElement("feComposite")}}
{{SVGElement("feConvolveMatrix")}}
{{SVGElement("feDiffuseLighting")}}
{{SVGElement("feFlood")}}
{{SVGElement("feGaussianBlur")}}
{{SVGElement("feImage")}}
{{SVGElement("feMerge")}}
{{SVGElement("feMorphology")}}
{{SVGElement("feOffset")}}
{{SVGElement("feSpecularLighting")}}
{{SVGElement("feTile")}}
{{SVGElement("feTurbulence")}}