view docs/board_eng.svg @ 138:9eb791e2fa17

Optimize board updating logic, so that the old placed tiles need not to be redrawn from scratch on each screen update, as they do not change usually.
author Matti Hamalainen <ccr@tnsp.org>
date Fri, 25 Nov 2011 11:04:09 +0200
parents 53d153de5beb
children
line wrap: on
line source

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->

<svg
   xmlns:dc="http://purl.org/dc/elements/1.1/"
   xmlns:cc="http://creativecommons.org/ns#"
   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns:svg="http://www.w3.org/2000/svg"
   xmlns="http://www.w3.org/2000/svg"
   xmlns:xlink="http://www.w3.org/1999/xlink"
   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
   id="svg2"
   version="1.1"
   inkscape:version="0.47 r22583"
   width="1632"
   height="1224"
   sodipodi:docname="board_eng.svg"
   inkscape:export-filename="/home/ccr/ristipolku/graphics/board.png"
   inkscape:export-xdpi="56.470001"
   inkscape:export-ydpi="56.470001">
  <metadata
     id="metadata8">
    <rdf:RDF>
      <cc:Work
         rdf:about="">
        <dc:format>image/svg+xml</dc:format>
        <dc:type
           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
        <dc:title></dc:title>
      </cc:Work>
    </rdf:RDF>
  </metadata>
  <defs
     id="defs6">
    <linearGradient
       inkscape:collect="always"
       id="linearGradient3670">
      <stop
         style="stop-color:#ffffff;stop-opacity:1;"
         offset="0"
         id="stop3672" />
      <stop
         style="stop-color:#ffffff;stop-opacity:0;"
         offset="1"
         id="stop3674" />
    </linearGradient>
    <linearGradient
       inkscape:collect="always"
       id="linearGradient3652">
      <stop
         style="stop-color:#000000;stop-opacity:1;"
         offset="0"
         id="stop3654" />
      <stop
         style="stop-color:#000000;stop-opacity:0;"
         offset="1"
         id="stop3656" />
    </linearGradient>
    <filter
       inkscape:collect="always"
       id="filter3770"
       x="-0.02196579"
       width="1.0439316"
       y="-0.12428394"
       height="1.2485679">
      <feGaussianBlur
         inkscape:collect="always"
         stdDeviation="5.5284505"
         id="feGaussianBlur3772" />
    </filter>
    <filter
       id="filter4123"
       inkscape:label="Chrome dark"
       inkscape:menu-tooltip="Dark version of chrome shading with a ground reflection simulation"
       inkscape:menu="Non realistic 3D shaders"
       height="1.5"
       y="-0.25"
       width="1.5"
       x="-0.25"
       color-interpolation-filters="sRGB">
      <feGaussianBlur
         id="feGaussianBlur4125"
         stdDeviation="3.5"
         result="result8" />
      <feComposite
         id="feComposite4127"
         in2="result8"
         result="result6"
         operator="xor"
         in="result8" />
      <feDisplacementMap
         id="feDisplacementMap4129"
         in2="result6"
         in="result8"
         xChannelSelector="A"
         yChannelSelector="A"
         scale="75"
         result="result4" />
      <feComposite
         id="feComposite4131"
         in2="result4"
         result="result2"
         operator="arithmetic"
         in="result8"
         k1="3" />
      <feComposite
         id="feComposite4133"
         in2="result2"
         result="fbSourceGraphic"
         in="result2"
         operator="in" />
    </filter>
    <inkscape:perspective
       id="perspective5671"
       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
       inkscape:vp_z="1 : 0.5 : 1"
       inkscape:vp_y="0 : 1000 : 0"
       inkscape:vp_x="0 : 0.5 : 1"
       sodipodi:type="inkscape:persp3d" />
    <inkscape:perspective
       id="perspective5772"
       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
       inkscape:vp_z="1 : 0.5 : 1"
       inkscape:vp_y="0 : 1000 : 0"
       inkscape:vp_x="0 : 0.5 : 1"
       sodipodi:type="inkscape:persp3d" />
    <inkscape:perspective
       id="perspective5786"
       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
       inkscape:vp_z="1 : 0.5 : 1"
       inkscape:vp_y="0 : 1000 : 0"
       inkscape:vp_x="0 : 0.5 : 1"
       sodipodi:type="inkscape:persp3d" />
    <inkscape:perspective
       id="perspective5919"
       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
       inkscape:vp_z="1 : 0.5 : 1"
       inkscape:vp_y="0 : 1000 : 0"
       inkscape:vp_x="0 : 0.5 : 1"
       sodipodi:type="inkscape:persp3d" />
    <inkscape:perspective
       id="perspective5935"
       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
       inkscape:vp_z="1 : 0.5 : 1"
       inkscape:vp_y="0 : 1000 : 0"
       inkscape:vp_x="0 : 0.5 : 1"
       sodipodi:type="inkscape:persp3d" />
    <inkscape:perspective
       id="perspective5992"
       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
       inkscape:vp_z="1 : 0.5 : 1"
       inkscape:vp_y="0 : 1000 : 0"
       inkscape:vp_x="0 : 0.5 : 1"
       sodipodi:type="inkscape:persp3d" />
    <mask
       maskUnits="userSpaceOnUse"
       id="mask6012">
      <rect
         style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
         id="rect6014"
         width="1100"
         height="1000"
         x="-1814"
         y="184"
         rx="23.954704"
         ry="23.954702" />
    </mask>
    <inkscape:perspective
       id="perspective6024"
       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
       inkscape:vp_z="1 : 0.5 : 1"
       inkscape:vp_y="0 : 1000 : 0"
       inkscape:vp_x="0 : 0.5 : 1"
       sodipodi:type="inkscape:persp3d" />
    <filter
       inkscape:collect="always"
       id="filter6062">
      <feGaussianBlur
         inkscape:collect="always"
         stdDeviation="10.633636"
         id="feGaussianBlur6064" />
    </filter>
    <inkscape:perspective
       id="perspective6074"
       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
       inkscape:vp_z="1 : 0.5 : 1"
       inkscape:vp_y="0 : 1000 : 0"
       inkscape:vp_x="0 : 0.5 : 1"
       sodipodi:type="inkscape:persp3d" />
    <filter
       inkscape:collect="always"
       id="filter6088">
      <feGaussianBlur
         inkscape:collect="always"
         stdDeviation="1.7388"
         id="feGaussianBlur6090" />
    </filter>
    <inkscape:perspective
       id="perspective6307"
       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
       inkscape:vp_z="1 : 0.5 : 1"
       inkscape:vp_y="0 : 1000 : 0"
       inkscape:vp_x="0 : 0.5 : 1"
       sodipodi:type="inkscape:persp3d" />
    <inkscape:perspective
       id="perspective6417"
       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
       inkscape:vp_z="1 : 0.5 : 1"
       inkscape:vp_y="0 : 1000 : 0"
       inkscape:vp_x="0 : 0.5 : 1"
       sodipodi:type="inkscape:persp3d" />
    <filter
       inkscape:collect="always"
       id="filter6441"
       x="-0.11619417"
       width="1.2323883"
       y="-0.11849505"
       height="1.2369901">
      <feGaussianBlur
         inkscape:collect="always"
         stdDeviation="2.4933333"
         id="feGaussianBlur6443" />
    </filter>
    <inkscape:perspective
       id="perspective6520"
       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
       inkscape:vp_z="1 : 0.5 : 1"
       inkscape:vp_y="0 : 1000 : 0"
       inkscape:vp_x="0 : 0.5 : 1"
       sodipodi:type="inkscape:persp3d" />
    <filter
       color-interpolation-filters="sRGB"
       inkscape:collect="always"
       id="filter6441-1"
       x="-0.11619417"
       width="1.2323883"
       y="-0.11849505"
       height="1.2369901">
      <feGaussianBlur
         inkscape:collect="always"
         stdDeviation="2.4933333"
         id="feGaussianBlur6443-9" />
    </filter>
    <linearGradient
       inkscape:collect="always"
       xlink:href="#linearGradient3652"
       id="linearGradient3660"
       x1="1312.123"
       y1="244.65118"
       x2="1471.0059"
       y2="244.65118"
       gradientUnits="userSpaceOnUse" />
    <linearGradient
       inkscape:collect="always"
       xlink:href="#linearGradient3670"
       id="linearGradient3676"
       x1="1248.4727"
       y1="466.02148"
       x2="1534.6562"
       y2="466.02148"
       gradientUnits="userSpaceOnUse"
       gradientTransform="translate(-1.2083099,1.4142136)" />
    <linearGradient
       inkscape:collect="always"
       xlink:href="#linearGradient3670"
       id="linearGradient3678"
       x1="1311.623"
       y1="244.65118"
       x2="1471.5059"
       y2="244.65118"
       gradientUnits="userSpaceOnUse" />
    <linearGradient
       inkscape:collect="always"
       xlink:href="#linearGradient3670"
       id="linearGradient3680"
       gradientUnits="userSpaceOnUse"
       x1="1311.623"
       y1="244.65118"
       x2="1471.5059"
       y2="244.65118"
       gradientTransform="translate(-15.452289,0)" />
    <inkscape:perspective
       id="perspective3710"
       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
       inkscape:vp_z="1 : 0.5 : 1"
       inkscape:vp_y="0 : 1000 : 0"
       inkscape:vp_x="0 : 0.5 : 1"
       sodipodi:type="inkscape:persp3d" />
    <inkscape:perspective
       id="perspective3724"
       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
       inkscape:vp_z="1 : 0.5 : 1"
       inkscape:vp_y="0 : 1000 : 0"
       inkscape:vp_x="0 : 0.5 : 1"
       sodipodi:type="inkscape:persp3d" />
    <filter
       id="filter3756"
       inkscape:label="Comics draft"
       inkscape:menu-tooltip="Draft painted cartoon shading with a glassy look"
       inkscape:menu="Non realistic 3D shaders"
       height="1.5"
       y="-0.25"
       width="1.5"
       x="-0.25"
       color-interpolation-filters="sRGB">
      <feGaussianBlur
         id="feGaussianBlur3758"
         stdDeviation="7"
         result="result8" />
      <feComposite
         id="feComposite3760"
         in2="result8"
         result="result6"
         operator="xor"
         in="result8" />
      <feDisplacementMap
         id="feDisplacementMap3762"
         in2="result6"
         in="SourceGraphic"
         xChannelSelector="A"
         yChannelSelector="A"
         scale="100"
         result="result4" />
      <feComposite
         id="feComposite3764"
         in2="result4"
         result="result2"
         operator="arithmetic"
         in="SourceGraphic"
         k1="1" />
      <feComposite
         id="feComposite3766"
         in2="result2"
         result="fbSourceGraphic"
         in="result6"
         operator="in" />
    </filter>
    <inkscape:perspective
       id="perspective2896"
       inkscape:persp3d-origin="0.5 : 0.33333333 : 1"
       inkscape:vp_z="1 : 0.5 : 1"
       inkscape:vp_y="0 : 1000 : 0"
       inkscape:vp_x="0 : 0.5 : 1"
       sodipodi:type="inkscape:persp3d" />
    <filter
       color-interpolation-filters="sRGB"
       inkscape:collect="always"
       id="filter6062-2">
      <feGaussianBlur
         inkscape:collect="always"
         stdDeviation="10.633636"
         id="feGaussianBlur6064-0" />
    </filter>
    <mask
       maskUnits="userSpaceOnUse"
       id="mask6012-6">
      <rect
         style="fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none"
         id="rect6014-1"
         width="1100"
         height="1000"
         x="-1814"
         y="184"
         rx="23.954704"
         ry="23.954702" />
    </mask>
  </defs>
  <sodipodi:namedview
     pagecolor="#ffffff"
     bordercolor="#666666"
     borderopacity="1"
     objecttolerance="10"
     gridtolerance="10"
     guidetolerance="10"
     inkscape:pageopacity="0"
     inkscape:pageshadow="2"
     inkscape:window-width="1515"
     inkscape:window-height="1109"
     id="namedview4"
     showgrid="true"
     inkscape:snap-grids="true"
     inkscape:snap-to-guides="false"
     inkscape:zoom="0.35355339"
     inkscape:cx="929.99339"
     inkscape:cy="884.88684"
     inkscape:window-x="35"
     inkscape:window-y="27"
     inkscape:window-maximized="0"
     inkscape:current-layer="svg2">
    <inkscape:grid
       type="xygrid"
       id="grid3819"
       empspacing="5"
       visible="true"
       enabled="false"
       snapvisiblegridlinesonly="true"
       spacingx="10px"
       spacingy="10px" />
  </sodipodi:namedview>
  <image
     y="-6"
     x="0"
     id="image5673"
     height="1230"
     width="1632.2097"
     xlink:href="file:///home/ccr/ristipolku/graphics/wrk/ice.jpg" />
  <g
     id="g6282">
    <text
       sodipodi:linespacing="100%"
       id="text3594"
       y="119.56097"
       x="28.829268"
       style="font-size:120px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;font-family:Ringbearer;-inkscape-font-specification:Ringbearer Medium;filter:url(#filter3770)"
       xml:space="preserve"><tspan
         y="119.56097"
         x="28.829268"
         id="tspan3596"
         sodipodi:role="line">Ristipolku</tspan></text>
    <text
       sodipodi:linespacing="100%"
       id="text3594-3"
       y="110.63281"
       x="20.701172"
       style="font-size:120px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#fff14d;fill-opacity:1;stroke:none;font-family:Ringbearer;-inkscape-font-specification:Ringbearer Medium"
       xml:space="preserve"><tspan
         y="110.63281"
         x="20.701172"
         id="tspan3596-1"
         sodipodi:role="line">Ristipolku</tspan></text>
  </g>
  <text
     sodipodi:linespacing="100%"
     id="text4119"
     y="110.13281"
     x="19.201172"
     style="font-size:120px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:#ffcd48;fill-opacity:1;stroke:none;filter:url(#filter4123);font-family:Ringbearer;-inkscape-font-specification:Ringbearer Medium"
     xml:space="preserve"><tspan
       y="110.13281"
       x="19.201172"
       id="tspan4121"
       sodipodi:role="line">Ristipolku</tspan></text>
  <rect
     style="fill:#ffffff;fill-opacity:0;fill-rule:nonzero;stroke:none"
     id="rect2818-9"
     width="1100"
     height="1000"
     x="-1522"
     y="74"
     rx="23.954704"
     ry="23.954702" />
  <rect
     ry="23.954702"
     rx="23.954704"
     y="187.27272"
     x="60"
     height="1012.7273"
     width="1114"
     id="rect6014-9"
     style="opacity:0.67873308;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter6062)" />
  <image
     y="-372"
     x="-3032"
     id="image5921"
     height="2000"
     width="3008"
     xlink:href="file:///home/ccr/ristipolku/graphics/wrk/plywood.jpg"
     mask="url(#mask6012)"
     transform="translate(1865,-11.999999)" />
  <rect
     style="fill:#ffffff;fill-opacity:0.33023257;fill-rule:nonzero;stroke:none"
     id="rect2818-5-2"
     width="380"
     height="1000"
     x="1200"
     y="174"
     rx="23.954706"
     ry="23.954702" />
  <rect
     style="fill:#000000;fill-opacity:0.33023257;fill-rule:nonzero;stroke:none;filter:url(#filter6088)"
     id="rect2818-5-2-9"
     width="383.04001"
     height="1008"
     x="1210"
     y="185.5"
     rx="23.954706"
     ry="23.954702" />
  <text
     xml:space="preserve"
     style="font-size:56px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:url(#linearGradient3680);fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:0.53953486;stroke-dasharray:none;font-family:Ringbearer;-inkscape-font-specification:Ringbearer Medium"
     x="1296.3231"
     y="259.17072"
     id="text3598"
     sodipodi:linespacing="100%"><tspan
       sodipodi:role="line"
       id="tspan3600"
       x="1296.3231"
       y="259.17072"
       style="fill:url(#linearGradient3680);fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:0.53953486;stroke-dasharray:none">Points</tspan></text>
  <text
     xml:space="preserve"
     style="font-size:56px;font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;text-align:start;line-height:100%;writing-mode:lr-tb;text-anchor:start;fill:url(#linearGradient3676);fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:0.53953486;stroke-dasharray:none;font-family:Ringbearer;-inkscape-font-specification:Ringbearer Medium"
     x="1247.4988"
     y="482.7482"
     id="text3598-5"
     sodipodi:linespacing="100%"
     inkscape:transform-center-x="-22"
     inkscape:transform-center-y="74"><tspan
       sodipodi:role="line"
       id="tspan3600-0"
       x="1247.4988"
       y="482.7482"
       style="fill:url(#linearGradient3676);fill-opacity:1;stroke:#000000;stroke-width:2;stroke-miterlimit:4;stroke-opacity:0.53953486;stroke-dasharray:none">Next Piece</tspan></text>
  <g
     id="g6445"
     transform="matrix(0.91675073,0.10567702,-0.10567702,0.91675073,120.52816,86.678926)">
    <path
       transform="matrix(0.89758619,0,0,0.93596721,6.6073297,70.50112)"
       d="m 122,1132.25 c 0,13.9452 -11.52867,25.25 -25.75,25.25 -14.221332,0 -25.75,-11.3048 -25.75,-25.25 0,-13.9452 11.528668,-25.25 25.75,-25.25 14.22133,0 25.75,11.3048 25.75,25.25 z"
       sodipodi:ry="25.25"
       sodipodi:rx="25.75"
       sodipodi:cy="1132.25"
       sodipodi:cx="96.25"
       id="path6423"
       style="opacity:0.96330315;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter6441)"
       sodipodi:type="arc" />
    <image
       transform="matrix(0.8660254,0.5,-0.5,0.8660254,0,0)"
       xlink:href="file:///home/ccr/ristipolku/graphics/wrk/screw.png"
       width="67.394875"
       height="64.666344"
       id="image6419"
       x="609.10651"
       y="900.60229" />
  </g>
  <g
     transform="matrix(0.75743903,0,0,0.75743903,12.418611,-652.92237)"
     id="g6455">
    <path
       sodipodi:type="arc"
       style="opacity:0.96330315;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter6441)"
       id="path6457"
       sodipodi:cx="96.25"
       sodipodi:cy="1132.25"
       sodipodi:rx="25.75"
       sodipodi:ry="25.25"
       d="m 122,1132.25 c 0,13.9452 -11.52867,25.25 -25.75,25.25 -14.221332,0 -25.75,-11.3048 -25.75,-25.25 0,-13.9452 11.528668,-25.25 25.75,-25.25 14.22133,0 25.75,11.3048 25.75,25.25 z"
       transform="matrix(0.89758619,0,0,0.93596721,6.6073297,70.50112)" />
    <image
       y="900.60229"
       x="609.10651"
       id="image6459"
       height="64.666344"
       width="67.394875"
       xlink:href="file:///home/ccr/ristipolku/graphics/wrk/screw.png"
       transform="matrix(0.8660254,0.5,-0.5,0.8660254,0,0)" />
  </g>
  <g
     id="g6506"
     transform="matrix(0.73898223,-0.1661901,0.1661901,0.73898223,863.39729,-614.08508)">
    <path
       transform="matrix(0.89758619,0,0,0.93596721,6.6073297,70.50112)"
       d="m 122,1132.25 c 0,13.9452 -11.52867,25.25 -25.75,25.25 -14.221332,0 -25.75,-11.3048 -25.75,-25.25 0,-13.9452 11.528668,-25.25 25.75,-25.25 14.22133,0 25.75,11.3048 25.75,25.25 z"
       sodipodi:ry="25.25"
       sodipodi:rx="25.75"
       sodipodi:cy="1132.25"
       sodipodi:cx="96.25"
       id="path6508"
       style="opacity:0.96330315;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter6441)"
       sodipodi:type="arc" />
    <image
       transform="matrix(0.8660254,0.5,-0.5,0.8660254,0,0)"
       xlink:href="file:///home/ccr/ristipolku/graphics/wrk/screw.png"
       width="67.394875"
       height="64.666344"
       id="image6510"
       x="609.10651"
       y="900.60229" />
  </g>
  <g
     id="g6506-4"
     transform="matrix(0.5033935,-0.56595836,0.56595836,0.5033935,431.42162,621.05262)">
    <path
       transform="matrix(0.89758619,0,0,0.93596721,6.6073297,70.50112)"
       d="m 122,1132.25 c 0,13.9452 -11.52867,25.25 -25.75,25.25 -14.221332,0 -25.75,-11.3048 -25.75,-25.25 0,-13.9452 11.528668,-25.25 25.75,-25.25 14.22133,0 25.75,11.3048 25.75,25.25 z"
       sodipodi:ry="25.25"
       sodipodi:rx="25.75"
       sodipodi:cy="1132.25"
       sodipodi:cx="96.25"
       id="path6508-1"
       style="opacity:0.96330315;fill:#000000;fill-opacity:1;fill-rule:nonzero;stroke:none;filter:url(#filter6441-1)"
       sodipodi:type="arc" />
    <image
       transform="matrix(0.8660254,0.5,-0.5,0.8660254,0,0)"
       xlink:href="file:///home/ccr/ristipolku/graphics/wrk/screw.png"
       width="67.394875"
       height="64.666344"
       id="image6510-4"
       x="609.10651"
       y="900.60229" />
  </g>
</svg>