159 lines
4.6 KiB
HTML
159 lines
4.6 KiB
HTML
<!DOCTYPE html>
|
|
<html lang='en'>
|
|
<head>
|
|
<title>struct-dom-13-f-manual.svg</title>
|
|
<meta charset='utf-8'>
|
|
</head>
|
|
<body>
|
|
<h1>Source SVG: struct-dom-13-f-manual.svg</h1>
|
|
<svg id="svg-root" width="100%" height="100%"
|
|
viewBox="0 0 480 360" xmlns="http://www.w3.org/2000/svg"
|
|
xmlns:xlink="http://www.w3.org/1999/xlink" onload="test()">
|
|
<!--======================================================================-->
|
|
<!--= Copyright 2008 World Wide Web Consortium, (Massachusetts =-->
|
|
<!--= Institute of Technology, European Research Consortium for =-->
|
|
<!--= Informatics and Mathematics (ERCIM), Keio University). =-->
|
|
<!--= All Rights Reserved. =-->
|
|
<!--= See http://www.w3.org/Consortium/Legal/. =-->
|
|
<!--======================================================================-->
|
|
|
|
<title id="test-title">$RCSfile: struct-dom-13-f.svg,v $</title>
|
|
<defs>
|
|
<font-face
|
|
font-family="SVGFreeSansASCII"
|
|
unicode-range="U+0-7F">
|
|
<font-face-src>
|
|
<font-face-uri xlink:href="../resources/SVGFreeSans.svg#ascii"/>
|
|
</font-face-src>
|
|
</font-face>
|
|
</defs>
|
|
<g id="test-body-content" font-family="SVGFreeSansASCII,sans-serif" font-size="18">
|
|
<defs>
|
|
<style>
|
|
.passed { fill: lime }
|
|
.failed { fill: red }
|
|
.result { font: 9px monospace; fill: black }
|
|
</style>
|
|
</defs>
|
|
|
|
<g visibility="hidden">
|
|
<circle id="c1" cx="40" cy="40" r="10" fill="blue" stroke="lime"/>
|
|
<circle id="c2" cx="10" cy="50" r="10" fill="red" stroke="lime"/>
|
|
<circle id="c3" cx="20" cy="20" r="20" fill="green" stroke="lime"/>
|
|
<line id="l1" x1="5" y1="5" x2="40" y2="20" stroke="black"/>
|
|
<line id="l2" x1="20" y1="20" x2="40" y2="30" stroke="red"/>
|
|
|
|
<rect id="r1" x="10" y="10" width="50" height="50" fill="none" stroke="red"/>
|
|
|
|
<circle id="c4" cx="80" cy="50" r="10" fill="yellow"/>
|
|
</g>
|
|
|
|
<script><![CDATA[
|
|
var ypos = 100;
|
|
|
|
function verify(str, result)
|
|
{
|
|
var g = document.createElementNS("http://www.w3.org/2000/svg", "g");
|
|
var r = document.createElementNS("http://www.w3.org/2000/svg", "rect");
|
|
var t = document.createElementNS("http://www.w3.org/2000/svg", "text");
|
|
t.textContent = str + ": " + (result ? "PASSED" : "FAILED");
|
|
t.setAttribute("class", "result");
|
|
t.setAttribute("x", "10");
|
|
t.setAttribute("y", "7");
|
|
r.setAttribute("y", "1");
|
|
r.setAttribute("width", "5");
|
|
r.setAttribute("height", "5");
|
|
g.setAttribute("class", result ? "passed" : "failed");
|
|
g.appendChild(r);
|
|
g.appendChild(t);
|
|
g.setAttribute("transform", "translate(280 " + ypos + ")");
|
|
ypos += 10;
|
|
document.getElementById("test-body-content").appendChild(g);
|
|
}
|
|
|
|
function test()
|
|
{
|
|
var root = document.documentElement; //document.getElementById("test-root");
|
|
var rect = root.createSVGRect();
|
|
rect.x = 10;
|
|
rect.y = 10;
|
|
rect.width = 50;
|
|
rect.height = 50;
|
|
|
|
var tests = { "c1" : true, "c2" : true, "c3" : true, "l1" : true, "l2" : true, "r1" : true, "c4" : false };
|
|
|
|
verify("checkIntersection", root.checkIntersection);
|
|
|
|
if(root.checkIntersection)
|
|
{
|
|
for(var test in tests)
|
|
{
|
|
try
|
|
{
|
|
var elm = document.getElementById(test);
|
|
var result = root.checkIntersection(elm, rect);
|
|
|
|
verify(test, result == tests[test]);
|
|
}
|
|
catch(e)
|
|
{
|
|
verify(test, false);
|
|
}
|
|
}
|
|
}
|
|
|
|
verify("getIntersectionList", root.getIntersectionList);
|
|
|
|
if(root.getIntersectionList)
|
|
{
|
|
var expected = [ "c1", "c2", "c3", "l1", "l2", "r1" ];
|
|
try
|
|
{
|
|
var list = root.getIntersectionList(rect, null);
|
|
verify("call", true);
|
|
}
|
|
catch(e)
|
|
{
|
|
verify("call", false);
|
|
}
|
|
|
|
try
|
|
{
|
|
verify("length", expected.length == list.length);
|
|
}
|
|
catch(e)
|
|
{
|
|
verify("length", false);
|
|
}
|
|
|
|
for(var i = 0; i < expected.length; i++)
|
|
{
|
|
var elm = document.getElementById(expected[i]);
|
|
try
|
|
{
|
|
verify("has " + expected[i], elm === list.item(i))
|
|
}
|
|
catch(e)
|
|
{
|
|
verify("has " + expected[i], false);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
]]></script>
|
|
</g>
|
|
<g font-family="SVGFreeSansASCII,sans-serif" font-size="32">
|
|
<text id="revision" x="10" y="340" stroke="none"
|
|
fill="black">$Revision: 1.4 $</text>
|
|
</g>
|
|
<rect id="test-frame" x="1" y="1" width="478" height="358" fill="none" stroke="#000"/>
|
|
<!-- comment out this watermark once the test is approved -->
|
|
<g id="draft-watermark">
|
|
<rect x="1" y="1" width="478" height="20" fill="red" stroke="black" stroke-width="1"/>
|
|
<text font-family="SVGFreeSansASCII,sans-serif" font-weight="bold" font-size="20" x="240"
|
|
text-anchor="middle" y="18" stroke-width="0.5" stroke="black" fill="white">DRAFT</text>
|
|
</g>
|
|
</svg>
|
|
</body>
|
|
</html>
|