151 lines
7.5 KiB
XML
151 lines
7.5 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
|
|
|
<!--======================================================================-->
|
|
<!--= Copyright 2000, 2002 World Wide Web Consortium, (Massachusetts =-->
|
|
<!--= Institute of Technology, Institut National de Recherche en =-->
|
|
<!--= Informatique et en Automatique, Keio University). All Rights =-->
|
|
<!--= Reserved. See http://www.w3.org/Consortium/Legal/. =-->
|
|
<!--======================================================================-->
|
|
<!-- =====================================================================-->
|
|
<!-- -->
|
|
<!-- filters-dispMap-BE-16.svg -->
|
|
<!-- renamed for 1.1 suite to filters-displace-01-f.svg -->
|
|
<!-- -->
|
|
<!-- Test which verifies the basic facilities of feDisplacementMap. -->
|
|
<!-- -->
|
|
<!-- Author: Peter Graffagnino 15-Aug-2000 -->
|
|
<!-- 1.1 revision by Thomas DeWeese 5-Feb-2002 -->
|
|
<!-- -->
|
|
<!-- History: -->
|
|
<!-- 15-Aug-2000, pgraff created. -->
|
|
<!-- 29-Aug-2000, LH=" corrected DOCTYPE" fix BE number. -->
|
|
<!-- 29-Aug-2000, pgraff fixed another occurance of BE-00 -->
|
|
<!-- -->
|
|
<!--======================================================================-->
|
|
<!--======================================================================-->
|
|
<!--= Note. After October 2000, revision history is kept as CVS 'commit' =-->
|
|
<!--= log messages, and therefore is no longer in the preceding preamble.=-->
|
|
<!--======================================================================-->
|
|
|
|
<svg version="1.1" baseProfile="full" id="svg-root" width="100%" height="100%"
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
xmlns:xlink="http://www.w3.org/1999/xlink" >
|
|
|
|
<SVGTestCase xmlns="http://www.w3.org/2000/02/svg/testsuite/description/">
|
|
<OperatorScript version="$Revision: 1.6 $" testname="filters-displace-01-f.svg">
|
|
<Paragraph>
|
|
Verify the basic capability to handle the feDisplacementMap filter
|
|
node. Six images should appear in 2 rows of 3. On the left in each
|
|
row a test image of a checker board is displayed. In the middle
|
|
column is the displacement map. In the right-hand column is the
|
|
result. All displacement maps are generated as png files with gamma
|
|
1.0 and must be interpreted linearly for the proper geometric
|
|
displacement to occur.
|
|
</Paragraph>
|
|
<Paragraph>
|
|
The top row tests a displacement map which displaces each pixel by an
|
|
amount equivalent to a rotation of 20 degrees around the center of the
|
|
image. A blue reference rectangle is drawn on the result using an svg
|
|
transform attribute to mimick the same 20 degree rotation. The edges
|
|
of the blue rectangle should be parallel to the grid lines in the
|
|
displaced image. Distortion of the grid pattern such that the grid
|
|
lines are slightly curved is indicative of improper gamma handling in
|
|
the viewer.
|
|
</Paragraph>
|
|
<Paragraph>
|
|
The bottom row tests a displacement map which distorts the image
|
|
spherically. The rendered image should match the reference image. In
|
|
particular the center of the distorted image should be on a gridpoint.
|
|
</Paragraph>
|
|
<Paragraph>
|
|
In addition to feDisplacementMap, this test uses the 'feImage' and
|
|
'rect' elements. Figure labeling uses the text element. The
|
|
reference blue rectangle uses fill, fill-opacity, and transform.
|
|
</Paragraph>
|
|
</OperatorScript>
|
|
</SVGTestCase>
|
|
|
|
<title id="test-title">filters-displace-01-f</title>
|
|
<desc id="test-desc">Test which verifies the basic facilities of feDisplacementMap.</desc>
|
|
<!--===============================================================-->
|
|
<!--Content of Test Case follows... ==============-->
|
|
<!--===============================================================-->
|
|
<g id="test-body-content">
|
|
<defs>
|
|
<filter id="DispMapChecker" filterUnits="objectBoundingBox"
|
|
x="0" y="0" width="1" height="1">
|
|
<feImage xlink:href="resources/DisplaceChecker.png"/>
|
|
</filter>
|
|
<filter id="RotateMap" filterUnits="objectBoundingBox"
|
|
x="0" y="0" width="1" height="1">
|
|
<feImage xlink:href="resources/rotate20.png"/>
|
|
</filter>
|
|
<filter id="SphereMap" filterUnits="objectBoundingBox"
|
|
x="0" y="0" width="1" height="1">
|
|
<feImage xlink:href="resources/sphere.png"/>
|
|
</filter>
|
|
<filter id="RotateMapTest" filterUnits="objectBoundingBox"
|
|
x="0" y="0" width="1" height="1">
|
|
<feImage result="Map" xlink:href="resources/rotate20.png"/>
|
|
<feImage result="Texture" xlink:href="resources/DisplaceChecker.png"/>
|
|
<feDisplacementMap in="Texture" in2="Map" scale="64"
|
|
xChannelSelector="R" yChannelSelector="G"/>
|
|
</filter>
|
|
<filter id="SphereMapTest" filterUnits="objectBoundingBox"
|
|
x="0" y="0" width="1" height="1">
|
|
<feImage result="Map" xlink:href="resources/sphere.png"/>
|
|
<feImage result="Texture" xlink:href="resources/DisplaceChecker.png"/>
|
|
<feDisplacementMap in="Texture" in2="Map" scale="64"
|
|
xChannelSelector="R" yChannelSelector="G"/>
|
|
</filter>
|
|
</defs>
|
|
|
|
<g font-family="Arial" font-size="12" text-anchor="middle">
|
|
<rect x="15" y="15" width="128" height="128"
|
|
filter="url(#DispMapChecker)" />
|
|
<rect x="20" y="115" width="118" height="20" fill="#DDD"/>
|
|
<text x="79" y="130">Checkerboard Image</text>
|
|
|
|
<rect x="158" y="15" width="128" height="128"
|
|
filter="url(#RotateMap)" />
|
|
<rect x="163" y="112" width="118" height="30" fill="#DDD"/>
|
|
<text><tspan x="222" y="125">Displacement Map</tspan>
|
|
<tspan x="222" y="138">(20 deg. rotation)</tspan></text>
|
|
|
|
|
|
|
|
<rect x="301" y="15" width="128" height="128"
|
|
filter="url(#RotateMapTest)" />
|
|
<rect x="-1" y="-1" width="2" height="2"
|
|
transform="translate(365,79) rotate(20) scale(32)"
|
|
fill="blue" fill-opacity="0.5" />
|
|
<text><tspan x="365" y="160">Result</tspan>
|
|
<tspan x="365" y="172">(overlayed with 20 deg.</tspan>
|
|
<tspan x="365" y="184">rotated blue rectangle)</tspan></text>
|
|
|
|
|
|
<rect x="15" y="158" width="128" height="128"
|
|
filter="url(#DispMapChecker)" />
|
|
<rect x="20" y="258" width="118" height="20" fill="#DDD"/>
|
|
<text x="79" y="273">Checkerboard Image</text>
|
|
|
|
|
|
<rect x="158" y="158" width="128" height="128"
|
|
filter="url(#SphereMap)" />
|
|
<rect x="163" y="255" width="118" height="30" fill="#DDD"/>
|
|
<text><tspan x="222" y="268">Displacement Map</tspan>
|
|
<tspan x="222" y="283">(spherical distortion)</tspan></text>
|
|
|
|
|
|
<rect x="301" y="200" width="128" height="128"
|
|
filter="url(#SphereMapTest)" />
|
|
<text x="365" y="345">Result</text>
|
|
</g>
|
|
</g>
|
|
|
|
<text id="revision" x="10" y="340" font-size="40" stroke="none" fill="black">$Revision: 1.6 $</text>
|
|
<rect id="test-frame" x="1" y="1" width="478" height="358" fill="none" stroke="#000000"/>
|
|
</svg>
|
|
|