diff --git a/Doc/Sd1/Ref/ObjectsAndClasses/class.svg b/Doc/Sd1/Ref/ObjectsAndClasses/class.svg index 537390d309da3902cfd478484e34e2c918cdb99b..72fd30f988d8b795e2f9304d1868f12100ef1655 100644 --- a/Doc/Sd1/Ref/ObjectsAndClasses/class.svg +++ b/Doc/Sd1/Ref/ObjectsAndClasses/class.svg @@ -2,100 +2,840 @@ <!-- Created with Inkscape (http://www.inkscape.org/) --> <svg + xmlns:ns1="http://sozi.baierouge.fr" 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" - width="150mm" - height="100mm" - viewBox="0 0 531.49606 354.33071" + sodipodi:docname="class.svg" + inkscape:version="0.92.1 r15371" + version="1.2" id="svg2" - version="1.1" - inkscape:version="0.91 r13725" - sodipodi:docname="class.svg"> + height="586.66669" + width="821.33331"> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.2077062" + inkscape:cx="335.04197" + inkscape:cy="336.69361" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="true" + inkscape:window-width="1600" + inkscape:window-height="1105" + inkscape:window-x="0" + inkscape:window-y="0" + inkscape:window-maximized="1" + showguides="true" + inkscape:guide-bbox="true"> + <inkscape:grid + type="xygrid" + id="grid1569" /> + <sodipodi:guide + position="0,600" + orientation="1,0" + id="guide13623" + inkscape:locked="false" /> + </sodipodi:namedview> <defs id="defs4"> <marker - inkscape:stockid="Arrow2Lend" + inkscape:isstock="true" + style="overflow:visible;" + id="marker11618" + refX="0.0" + refY="0.0" + orient="auto" + inkscape:stockid="Arrow1Mend"> + <path + transform="scale(0.4) rotate(180) translate(10,0)" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1" + d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z " + id="path11616" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker2318" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path2316" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" orient="auto" refY="0.0" refX="0.0" - id="Arrow2Lend" + id="marker4887" style="overflow:visible;" inkscape:isstock="true"> <path - id="path4218" - style="fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round;stroke:#000000;stroke-opacity:1;fill:#000000;fill-opacity:1" - d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z " - transform="scale(1.1) rotate(180) translate(1,0)" /> + id="path4627" + d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z " + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1" + transform="scale(0.8) rotate(180) translate(12.5,0)" /> </marker> <marker - inkscape:stockid="Arrow2Lend" + inkscape:isstock="true" + style="overflow:visible" + id="marker6797" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> + <path + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + id="path6799" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker6793" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> + <path + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + id="path6795" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" orient="auto" refY="0" refX="0" - id="Arrow2Lend-3" + id="marker6778" + style="overflow:visible" + inkscape:isstock="true"> + <path + id="path6514" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lstart" + style="overflow:visible"> + <path + id="path3841" + d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareM" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareM"> + <path + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path3914" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lend" + style="overflow:visible"> + <path + id="path3844" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondM" + orient="auto" + refY="0" + refX="0" + id="DiamondM" + style="overflow:visible"> + <path + id="path3923" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondMH" + orient="auto" + refY="0" + refX="0" + id="DiamondMH" + style="overflow:visible"> + <path + id="path4656" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendB" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendB" + style="overflow:visible"> + <path + id="path4659" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMU" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMU"> + <path + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path5221" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend3" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lend3" + style="overflow:visible"> + <path + id="path5224" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondMo" + orient="auto" + refY="0" + refX="0" + id="DiamondMo" + style="overflow:visible"> + <path + id="path5799" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendO" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendO" + style="overflow:visible"> + <path + id="path5802" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondM1" + orient="auto" + refY="0" + refX="0" + id="DiamondM1" + style="overflow:visible"> + <path + id="path6393" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendV" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendV" + style="overflow:visible"> + <path + id="path6396" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMN" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMN"> + <path + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path7813" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LstartP" + orient="auto" + refY="0" + refX="0" + id="Arrow1LstartP" + style="overflow:visible"> + <path + id="path7816" + d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMb" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMb"> + <path + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path9491" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendX" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendX" + style="overflow:visible"> + <path + id="path9494" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareM8" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareM8"> + <path + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path10143" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendT" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendT" + style="overflow:visible"> + <path + id="path10146" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMNT" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMNT"> + <path + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path12195" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LstartPJ" + orient="auto" + refY="0" + refX="0" + id="Arrow1LstartPJ" + style="overflow:visible"> + <path + id="path12198" + d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMNTL" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMNTL"> + <path + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path12907" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lendx" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lendx" + style="overflow:visible"> + <path + id="path12910" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondMoY" + orient="auto" + refY="0" + refX="0" + id="DiamondMoY" + style="overflow:visible"> + <path + id="path13187" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendOe" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendOe" + style="overflow:visible"> + <path + id="path13190" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <linearGradient + id="linearGradient3928-8"> + <stop + offset="0" + style="stop-color:#7c7c7c" + id="stop3930-2" /> + <stop + offset="1" + style="stop-color:#e6e3e3" + id="stop3932-0" /> + </linearGradient> + <linearGradient + id="linearGradient8877"> + <stop + style="stop-color:#cecece;stop-opacity:1;" + offset="0" + id="stop8879" /> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="1" + id="stop8881" /> + </linearGradient> + <linearGradient + id="linearGradient8869"> + <stop + id="stop8871" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop8873" + offset="1" + style="stop-color:#000000;stop-opacity:1;" /> + </linearGradient> + <linearGradient + id="linearGradient7421"> + <stop + id="stop7423" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop7425" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient7405"> + <stop + style="stop-color:#9e9e9e;stop-opacity:1;" + offset="0" + id="stop7407" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop7409" /> + </linearGradient> + <linearGradient + id="linearGradient7378"> + <stop + id="stop7380" + offset="0" + style="stop-color:#9e9e9e;stop-opacity:1;" /> + <stop + id="stop7382" + offset="1" + style="stop-color:#ffffff;stop-opacity:1;" /> + </linearGradient> + <inkscape:perspective + id="perspective6864" + inkscape:persp3d-origin="32 : 21.333333 : 1" + inkscape:vp_z="64 : 32 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 32 : 1" + sodipodi:type="inkscape:persp3d" /> + <filter + id="imagebot_16" + color-interpolation-filters="sRGB"> + <feGaussianBlur + id="imagebot_21" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14" + y2="-235.34228" + xlink:href="#linearGradient3928-8" + x2="33.162107" + y1="-192.16943" + x1="32.287572" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12" + width="1.0832" + y="-0.1075" + x="-0.04161" + height="1.215" + color-interpolation-filters="sRGB"> + <feGaussianBlur + id="imagebot_18" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572055" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_16-6" + color-interpolation-filters="sRGB"> + <feGaussianBlur + id="imagebot_21-1" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-8" + y2="-235.34228" + xlink:href="#linearGradient3928-8" + x2="33.162107" + y1="-192.16943" + x1="32.287572" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12-7" + width="1.0832" + y="-0.1075" + x="-0.04161" + height="1.215" + color-interpolation-filters="sRGB"> + <feGaussianBlur + id="imagebot_18-9" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-2" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572055" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_16-2" + color-interpolation-filters="sRGB"> + <feGaussianBlur + id="imagebot_21-8" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-9" + y2="-235.34228" + xlink:href="#linearGradient3928-8" + x2="33.162107" + y1="-192.16943" + x1="32.287572" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12-73" + width="1.0832" + y="-0.1075" + x="-0.04161" + height="1.215" + color-interpolation-filters="sRGB"> + <feGaussianBlur + id="imagebot_18-6" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-1" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572055" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + style="color-interpolation-filters:sRGB" + id="imagebot_16-0"> + <feGaussianBlur + id="imagebot_21-7" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-5" + y2="-235.34229" + xlink:href="#linearGradient3928-8" + x2="33.162106" + y1="-192.16943" + x1="32.287571" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + style="color-interpolation-filters:sRGB" + id="imagebot_12-0" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215"> + <feGaussianBlur + id="imagebot_18-4" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-8" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_16-02" + color-interpolation-filters="sRGB"> + <feGaussianBlur + id="imagebot_21-9" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-4" + y2="0.73097428" + xlink:href="#linearGradient3928-8" + x2="36.048217" + y1="43.903821" + x1="35.173682" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12-3" + width="1.0832" + y="-0.1075" + x="-0.04161" + height="1.215" + color-interpolation-filters="sRGB"> + <feGaussianBlur + id="imagebot_18-5" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-17" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572055" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker6793-6" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> + <path + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + id="path6795-8" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="marker17735-0" style="overflow:visible" inkscape:isstock="true"> <path inkscape:connector-curvature="0" - id="path4218-6" - style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" - d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" - transform="matrix(-1.1,0,0,-1.1,-1.1,0)" /> + id="path17472-68" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + transform="matrix(0.8,0,0,0.8,10,0)" /> </marker> <marker - inkscape:stockid="Arrow2Lend" + inkscape:stockid="Arrow1Lend" orient="auto" refY="0" refX="0" - id="Arrow2Lend-5" + id="marker2318-9" style="overflow:visible" inkscape:isstock="true"> <path inkscape:connector-curvature="0" - id="path4218-3" - style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" - d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" - transform="matrix(-1.1,0,0,-1.1,-1.1,0)" /> + id="path2316-2" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" /> </marker> <marker - inkscape:stockid="Arrow2Lend" + inkscape:stockid="Arrow1Lstart" orient="auto" refY="0" refX="0" - id="Arrow2Lend-6" + id="marker17735-3" style="overflow:visible" inkscape:isstock="true"> <path inkscape:connector-curvature="0" - id="path4218-2" - style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1" - d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z" - transform="matrix(-1.1,0,0,-1.1,-1.1,0)" /> + id="path17472-1" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + transform="matrix(0.8,0,0,0.8,10,0)" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker2318-4" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path2316-9" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" /> + </marker> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="marker17735-8" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path17472-6" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + transform="matrix(0.8,0,0,0.8,10,0)" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker2318-8" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path2316-8" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" /> + </marker> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="marker17735" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path17472" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + transform="matrix(0.8,0,0,0.8,10,0)" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker2318-3" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path2316-6" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lend-6" + style="overflow:visible"> + <path + id="path3844-5" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> </marker> </defs> - <sodipodi:namedview - id="base" - pagecolor="#ffffff" - bordercolor="#666666" - borderopacity="1.0" - inkscape:pageopacity="0.0" - inkscape:pageshadow="2" - inkscape:zoom="3.40447" - inkscape:cx="206.3222" - inkscape:cy="182.64224" - inkscape:document-units="px" - inkscape:current-layer="layer1" - showgrid="false" - inkscape:window-width="3775" - inkscape:window-height="2136" - inkscape:window-x="65" - inkscape:window-y="24" - inkscape:window-maximized="1" /> <metadata id="metadata7"> <rdf:RDF> @@ -112,130 +852,216 @@ inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1" - transform="translate(0,-698.0315)"> + transform="translate(0,-535.85302)"> <rect - style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:3.00000024;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;enable-background:accumulate" - id="rect3336" - width="110.69817" - height="107.49761" - x="167.36681" - y="723.32617" - ry="12.831872" /> - <text - xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:24px;line-height:125%;font-family:Arial;-inkscape-font-specification:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - x="197.99138" - y="748.96539" - id="text3338" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan3340" - x="197.99138" - y="748.96539">Human</tspan></text> - <path - style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;enable-background:accumulate" - d="M 166.39144,758.36097 276.44506,757.2521" - id="path3342" - inkscape:connector-curvature="0" /> - <text - xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:17.5px;line-height:125%;font-family:Arial;-inkscape-font-specification:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - x="177.26752" - y="780.41772" - id="text3344" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan3346" - x="177.26752" - y="780.41772">name</tspan></text> - <text - xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:17.5px;line-height:125%;font-family:Arial;-inkscape-font-specification:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - x="179.28191" - y="800.05817" - id="text3348" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan3350" - x="179.28191" - y="800.05817">image</tspan></text> - <text - xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:17.5px;line-height:125%;font-family:Arial;-inkscape-font-specification:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - x="179.28191" - y="822.72021" - id="text3352" - sodipodi:linespacing="125%"><tspan - sodipodi:role="line" - id="tspan3354" - x="179.28191" - y="822.72021">sex</tspan></text> + style="fill:#ccffaa;stroke:none;stroke-width:1.47584188;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect4062-1-7" + width="500" + height="89.999985" + x="160" + y="872.51971" + ry="8.4374905" /> + <rect + style="fill:#e9c6af;stroke:none;stroke-width:1.62300575;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect4062" + width="500" + height="120.00005" + x="160" + y="752.51965" /> + <rect + style="fill:#ffeeaa;stroke:none;stroke-width:0.93704259;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect4062-1" + width="500" + height="39.999992" + x="160" + y="712.51971" + ry="3.3333299" /> <text xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:17.5px;line-height:125%;font-family:Arial;-inkscape-font-specification:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - x="35.252064" - y="1011.5706" - id="text3375" - sodipodi:linespacing="125%"><tspan + style="font-style:normal;font-weight:normal;font-size:12.80000019px;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.06666672" + x="104.51711" + y="415.68225" + id="text3004"><tspan sodipodi:role="line" - id="tspan3377" - x="35.252064" - y="1011.5706">Jane</tspan></text> + id="tspan3006" + x="104.51711" + y="415.68225" + style="font-size:42.66666794px;line-height:1.25;font-family:sans-serif;stroke-width:1.06666672">Â </tspan></text> + <g + id="g13497" + transform="translate(380,69.999997)"> + <text + id="text10501" + y="672.51971" + x="-210" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + xml:space="preserve"><tspan + y="672.51971" + x="-210" + id="tspan10499" + sodipodi:role="line" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'">Person</tspan><tspan + id="tspan10503" + y="712.51971" + x="-210" + sodipodi:role="line" + style="fill:#ff0000">name</tspan><tspan + id="tspan10505" + y="752.51971" + x="-210" + sodipodi:role="line" + style="fill:#008000">sex</tspan><tspan + id="tspan10507" + y="792.51971" + x="-210" + sodipodi:role="line" + style="fill:#800080">birth</tspan></text> + <rect + y="642.51971" + x="-220" + height="250" + width="140" + id="rect11548" + style="fill:none;stroke:#000000;stroke-width:3.63803434;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + ry="14.705871" /> + <path + inkscape:connector-curvature="0" + id="path11550" + d="M -220,682.51971 H -80" + style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> + <text + id="text10501-9" + y="839.52521" + x="-212.8669" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + xml:space="preserve"><tspan + id="tspan10507-5" + y="839.52521" + x="-212.8669" + sodipodi:role="line">walk()</tspan><tspan + id="tspan13467" + y="879.52521" + x="-212.8669" + sodipodi:role="line">speak()</tspan></text> + <path + inkscape:connector-curvature="0" + id="path11550-2" + d="M -220,802.51971 H -80" + style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> + </g> <text xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:17.5px;line-height:125%;font-family:Arial;-inkscape-font-specification:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - x="158.13068" - y="1017.6138" - id="text3379" - sodipodi:linespacing="125%"><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + x="360.22943" + y="745.00378" + id="text13613"><tspan sodipodi:role="line" - id="tspan3381" - x="158.13068" - y="1017.6138">Tim</tspan></text> + id="tspan13611" + x="360.22943" + y="745.00378">The class name</tspan></text> <text xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:17.5px;line-height:125%;font-family:Arial;-inkscape-font-specification:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - x="279.4985" - y="988.90851" - id="text3383" - sodipodi:linespacing="125%"><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + x="359.88568" + y="819.78046" + id="text13617"><tspan sodipodi:role="line" - id="tspan3385" - x="279.4985" - y="988.90851">Michael</tspan></text> + id="tspan13615" + x="359.88568" + y="819.78046">Attributes</tspan></text> <text xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:17.5px;line-height:125%;font-family:Arial;-inkscape-font-specification:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" - x="420.50674" - y="956.17444" - id="text3387" - sodipodi:linespacing="125%"><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + x="356.99506" + y="924.94" + id="text13621"><tspan sodipodi:role="line" - id="tspan3389" - x="420.50674" - y="956.17444">Sarah</tspan></text> - <path - style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;enable-background:accumulate;marker-end:url(#Arrow2Lend)" - d="M 58.921303,981.8581 166.65461,851.16595" - id="path3391" - inkscape:connector-curvature="0" /> - <path - style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-end:url(#Arrow2Lend-3);enable-background:accumulate" - d="M 314.46399,962.44809 256.82648,850.26102" - id="path3391-7" - inkscape:connector-curvature="0" - sodipodi:nodetypes="cc" /> - <path - style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-end:url(#Arrow2Lend-5);enable-background:accumulate" - d="M 181.40363,992.70243 210.12317,852.02341" - id="path3391-5" - inkscape:connector-curvature="0" - sodipodi:nodetypes="cc" /> - <path - style="color:#000000;display:inline;overflow:visible;visibility:visible;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker:none;marker-end:url(#Arrow2Lend-6);enable-background:accumulate" - d="M 435.18763,936.30599 293.83665,837.63057" - id="path3391-9" - inkscape:connector-curvature="0" - sodipodi:nodetypes="cc" /> + id="tspan13619" + x="356.99506" + y="924.94">Methods</tspan></text> </g> + <script + ns1:version="14.10-05142318" + id="sozi-script">function namespace(b,d,a){var c=b;d.split(".").forEach(function(e){if(typeof c[e]==="undefined"){c[e]={}}c=c[e]});if(a){a(c,b)}return c}namespace(this,"sozi.events",function(b){var a={};b.listen=function(c,d){if(!a.hasOwnProperty(c)){a[c]=[]}a[c].push(d)};b.fire=function(d){var c=Array.prototype.slice.call(arguments,1);if(a.hasOwnProperty(d)){a[d].forEach(function(e){e.apply(null,c)})}}});namespace(this,"sozi.proto",function(a){a.Object={installConstructors:function(){function b(){}b.prototype=this;this.instance=function(){var c=new b();c.construct.apply(c,arguments);return c};this.subtype=function(d){var c=new b();c.augment(d);c.installConstructors();return c}},construct:function(){},augment:function(c){for(var b in c){if(c.hasOwnProperty(b)){this[b]=c[b]}}return this},bind:function(c){var b=this;return function(){return c.apply(b,arguments)}}};a.Object.installConstructors()});namespace(this,"sozi.actions",function(A,g){var u=namespace(g,"sozi.player");var v=namespace(g,"sozi.display");var n=g.document;var o=0;var w=1;var t=1.05;var y=5;var m=5;var r=false;var i=0;var h=0;function a(C,B,D){u.stop();v.viewPorts.player.zoom(C>0?t:1/t,B,D)}function x(B){u.stop();v.viewPorts.player.rotate(B>0?y:-y)}function s(){if(sozi.framelist.isVisible()){sozi.framelist.hide();u.restart()}else{u.stop();sozi.framelist.show()}}function d(B){return v.viewPorts.player.contains(B.clientX,B.clientY)}function f(B){if(!d(B)){return}if(B.button===o){n.documentElement.addEventListener("mousemove",q,false);r=false;i=B.clientX;h=B.clientY}else{if(B.button===w){s()}}B.stopPropagation();B.preventDefault()}function q(B){if(!d(B)){return}u.stop();if(!r&&(Math.abs(B.clientX-i)>m||Math.abs(B.clientY-h)>m)){r=true}if(r){sozi.events.fire("sozi.player.cleanup");v.viewPorts.player.drag(B.clientX-i,B.clientY-h);i=B.clientX;h=B.clientY}B.stopPropagation()}function c(B){if(!d(B)){return}if(B.button===o){n.documentElement.removeEventListener("mousemove",q,false)}B.stopPropagation();B.preventDefault()}function p(B){if(!d(B)){return}u.moveToPrevious();B.stopPropagation();B.preventDefault()}function e(B){if(!d(B)){return}if(!r&&B.button!==w){u.moveToNext()}B.stopPropagation();B.preventDefault()}function j(B){if(!d(B)){return}if(!B){B=g.event}var C=0;if(B.wheelDelta){C=B.wheelDelta}else{if(B.detail){C=-B.detail}}if(C!==0){if(B.shiftKey){x(C)}else{a(C,B.clientX,B.clientY)}}B.stopPropagation();B.preventDefault()}function l(B){if(B.altKey||B.ctrlKey||B.metaKey){return}switch(B.charCode||B.which){case 43:a(1,g.innerWidth/2,g.innerHeight/2);break;case 45:a(-1,g.innerWidth/2,g.innerHeight/2);break;case 61:u.moveToCurrent();break;case 70:case 102:u.showAll();break;case 84:case 116:s();break;case 82:x(-1);break;case 114:x(1);break;default:return}B.stopPropagation();B.preventDefault()}function b(B){if(B.altKey||B.ctrlKey||B.metaKey){return}switch(B.keyCode){case 36:if(B.shiftKey){u.jumpToFirst()}else{u.moveToFirst()}break;case 35:if(B.shiftKey){u.jumpToLast()}else{u.moveToLast()}break;case 38:case 33:case 37:if(B.shiftKey){u.jumpToPrevious()}else{u.moveToPrevious()}break;case 40:case 34:case 39:case 13:case 32:if(B.shiftKey){u.jumpToNext()}else{u.moveToNext()}break;default:return}B.stopPropagation();B.preventDefault()}function z(B){B.stopPropagation()}function k(){var C=n.getElementsByTagName("a");for(var D=0;D<C.length;D+=1){C[D].addEventListener("click",z,false);C[D].addEventListener("contextmenu",z,false)}var B=n.documentElement;B.addEventListener("click",e,false);B.addEventListener("mousedown",f,false);B.addEventListener("mouseup",c,false);B.addEventListener("contextmenu",p,false);B.addEventListener("DOMMouseScroll",j,false);g.onmousewheel=j;B.addEventListener("keypress",l,false);B.addEventListener("keydown",b,false)}sozi.events.listen("sozi.display.ready",k)});namespace(this,"sozi.animation",function(d,g){var h=g.mozRequestAnimationFrame||g.webkitRequestAnimationFrame||g.msRequestAnimationFrame||g.oRequestAnimationFrame;var k=function(){return g.performance&&g.performance.now?g.performance.now():Date.now()};d.setAnimationFrameHandlers=function(l,m){h=l;k=m};var i=40;var c;var j=[];function e(){if(j.length>0){if(h){h(e)}j.forEach(function(l){l.step(k())})}else{if(!h){g.clearInterval(c)}}}function b(){if(h){h(e)}else{c=g.setInterval(function(){e(k())},i)}}function a(l){j.push(l);if(j.length===1){b()}}function f(l){j.splice(j.indexOf(l),1)}d.Animator=sozi.proto.Object.subtype({construct:function(){this.durationMs=0;this.data=null;this.initialTime=0;this.started=false},start:function(l,m){this.durationMs=l;this.data=m;this.initialTime=k();this.onStep(0);if(!this.started){this.started=true;a(this)}},stop:function(){if(this.started){f(this);this.started=false}},step:function(m){var l=m-this.initialTime;if(l>=this.durationMs){this.stop();this.onStep(1);this.onDone()}else{this.onStep(l/this.durationMs)}},onStep:function(l){},onDone:function(){}});d.profiles={linear:function(l){return l},accelerate:function(l){return Math.pow(l,3)},"strong-accelerate":function(l){return Math.pow(l,5)},decelerate:function(l){return 1-Math.pow(1-l,3)},"strong-decelerate":function(l){return 1-Math.pow(1-l,5)},"accelerate-decelerate":function(l){var m=l<=0.5?l:1-l,n=Math.pow(2*m,3)/2;return l<=0.5?n:1-n},"strong-accelerate-decelerate":function(l){var m=l<=0.5?l:1-l,n=Math.pow(2*m,5)/2;return l<=0.5?n:1-n},"decelerate-accelerate":function(l){var m=l<=0.5?l:1-l,n=(1-Math.pow(1-2*m,2))/2;return l<=0.5?n:1-n},"strong-decelerate-accelerate":function(l){var m=l<=0.5?l:1-l,n=(1-Math.pow(1-2*m,3))/2;return l<=0.5?n:1-n},"immediate-beginning":function(l){return 1},"immediate-end":function(l){return l===1?1:0},"immediate-middle":function(l){return l>=0.5?1:0}}});namespace(this,"sozi.display",function(c,g){var f="http://www.w3.org/2000/svg";var b="http://www.w3.org/1999/xlink";var i=g.document;var k;var h;var j;c.viewPorts={};var e;c.CameraState=sozi.proto.Object.subtype({construct:function(){this.cx=this.cy=0;this.width=this.height=1;this.angle=0;this.clipped=true;this.transitionZoomPercent=0;this.transitionProfile=sozi.animation.profiles.linear;this.transitionPath=null},setCenter:function(l,m){this.cx=l;this.cy=m;return this},setSize:function(m,l){this.width=m;this.height=l;return this},setClipped:function(l){this.clipped=l;return this},setAngle:function(l){this.angle=(l+180)%360-180;return this},setRawAngle:function(l){this.angle=l;return this},setTransitionZoomPercent:function(l){this.transitionZoomPercent=l;return this},setTransitionProfile:function(l){this.transitionProfile=l;return this},setTransitionPath:function(l){this.transitionPath=l;return this},setAtElement:function(p){var s,o,t,m;if(p.nodeName==="rect"){s=p.x.baseVal.value;o=p.y.baseVal.value;t=p.width.baseVal.value;m=p.height.baseVal.value}else{var q=p.getBBox();s=q.x;o=q.y;t=q.width;m=q.height}var n=i.documentElement.createSVGPoint();n.x=s+t/2;n.y=o+m/2;var r=p.getCTM();n=n.matrixTransform(r);var l=Math.sqrt(r.a*r.a+r.b*r.b);return this.setCenter(n.x,n.y).setSize(t*l,m*l).setAngle(Math.atan2(r.b,r.a)*180/Math.PI)},setAtState:function(l){return this.setCenter(l.cx,l.cy).setSize(l.width,l.height).setAngle(l.angle).setClipped(l.clipped).setTransitionZoomPercent(l.transitionZoomPercent).setTransitionProfile(l.transitionProfile).setTransitionPath(l.transitionPath)},interpolatableAttributes:["width","height","angle"],interpolate:function(n,o,t,v,r){var p=1-t;for(var q=0;q<this.interpolatableAttributes.length;q+=1){var s=this.interpolatableAttributes[q];this[s]=o[s]*t+n[s]*p}var l=r?n.transitionPath:o.transitionPath;if(v&&l){var x=l.getTotalLength();if(r){var m=l.getPointAtLength(x);var u=l.getPointAtLength(0);var w=l.getPointAtLength(x*p)}else{var m=l.getPointAtLength(0);var u=l.getPointAtLength(x);var w=l.getPointAtLength(x*t)}this.cx=w.x+(o.cx-u.x)*t+(n.cx-m.x)*p;this.cy=w.y+(o.cy-u.y)*t+(n.cy-m.y)*p}else{this.cx=o.cx*t+n.cx*p;this.cy=o.cy*t+n.cy*p}}});c.Camera=c.CameraState.subtype({construct:function(n,o){c.CameraState.construct.call(this);this.viewPort=n;this.svgClipRect=i.createElementNS(f,"rect");var m=i.createElementNS(f,"clipPath");m.setAttribute("id","sozi-clip-path-"+n.id+"-"+o);m.appendChild(this.svgClipRect);n.svgGroup.appendChild(m);var l=i.createElementNS(f,"g");l.setAttribute("clip-path","url(#sozi-clip-path-"+n.id+"-"+o+")");n.svgGroup.appendChild(l);if(n.isPrimary){this.svgLayer=i.createElementNS(f,"g");this.svgLayer.appendChild(i.getElementById(o))}else{this.svgLayer=i.createElementNS(f,"use");this.svgLayer.setAttributeNS(b,"href","#"+o)}l.appendChild(this.svgLayer)},setAtState:function(l){return c.CameraState.setAtState.call(this,l).update()},getScale:function(){return Math.min(this.viewPort.width/this.width,this.viewPort.height/this.height)},rotate:function(l){return this.setAngle(this.angle+l).update()},zoom:function(m,l,n){return this.setSize(this.width/m,this.height/m).drag((1-m)*(l-this.viewPort.width/2),(1-m)*(n-this.viewPort.height/2))},drag:function(m,l){var q=this.getScale();var o=this.angle*Math.PI/180;var n=Math.sin(o);var p=Math.cos(o);return this.setCenter(this.cx-(m*p-l*n)/q,this.cy-(m*n+l*p)/q).setClipped(false).update()},update:function(){var q=this.getScale();var n=this.width*q;var m=this.height*q;var l=(this.viewPort.width-n)/2;var r=(this.viewPort.height-m)/2;this.svgClipRect.setAttribute("x",this.clipped?l:0);this.svgClipRect.setAttribute("y",this.clipped?r:0);this.svgClipRect.setAttribute("width",this.clipped?n:this.viewPort.width);this.svgClipRect.setAttribute("height",this.clipped?m:this.viewPort.height);var p=-this.cx+this.width/2+l/q;var o=-this.cy+this.height/2+r/q;this.svgLayer.setAttribute("transform","scale("+q+")translate("+p+","+o+")rotate("+(-this.angle)+","+this.cx+","+this.cy+")");return this}});c.ViewPort=sozi.proto.Object.subtype({construct:function(n,m,l){this.id=n;c.viewPorts[n]=this;this.isPrimary=!!l;if(this.isPrimary){if(e){throw"Failed to create a primary viewport. A primary viewport already exists."}else{e=this}}this.svgGroup=i.createElementNS(f,"g");this.svgGroup.setAttribute("class","sozi-viewport");this.svgGroup.setAttribute("id","sozi-viewport-"+n);i.documentElement.appendChild(this.svgGroup);this.setLocation(0,0).setSize(g.innerWidth,g.innerHeight);this.cameras={};m.forEach(function(o){this.cameras[o]=c.Camera.instance(this,o)},this)},setSize:function(m,l){this.width=m;this.height=l;return this},setLocation:function(l,m){this.x=l;this.y=m;return this},contains:function(l,m){return l>=this.x&&l<this.x+this.width&&m>=this.y&&m<this.y+this.height},getDocumentState:function(){var m=c.CameraState.instance().setCenter(k.x+k.width/2,k.y+k.height/2).setSize(k.width,k.height).setClipped(false);var l={};for(var n in this.cameras){l[n]=m}return l},update:function(){this.svgGroup.setAttribute("transform","translate("+this.x+","+this.y+")");for(var l in this.cameras){this.cameras[l].update()}return this},showFrame:function(l){for(var m in l.states){this.cameras[m].setAtState(l.states[m])}return this},drag:function(m,l){for(var n in this.cameras){this.cameras[n].drag(m,l)}return this},zoom:function(m,l,o){for(var n in this.cameras){this.cameras[n].zoom(m,l,o)}return this},rotate:function(l){for(var m in this.cameras){this.cameras[m].rotate(l)}return this},onWindowResize:function(m,l){this.setLocation(this.x*m,this.y*l).setSize(this.width*m,this.height*l).update()}});function d(){var l=i.documentElement;k=l.getBBox();h=g.innerWidth;j=g.innerHeight;l.setAttribute("width",h);l.setAttribute("height",j);sozi.events.fire("sozi.display.ready")}function a(){var l=i.documentElement;l.setAttribute("width",g.innerWidth);l.setAttribute("height",g.innerHeight);for(var m in c.viewPorts){c.viewPorts[m].onWindowResize(g.innerWidth/h,g.innerHeight/j)}h=g.innerWidth;j=g.innerHeight}sozi.events.listen("sozi.document.ready",d);g.addEventListener("resize",a,false)});namespace(this,"sozi.document",function(c,e){var g=e.document;var b="http://sozi.baierouge.fr";var d={title:"Untitled",sequence:"0",hide:"true",clip:"true","show-in-frame-list":"true","timeout-enable":"false","timeout-ms":"5000","transition-duration-ms":"1000","transition-zoom-percent":"0","transition-profile":"linear","transition-path-hide":"true"};var h=["g","image","path","rect","circle","ellipse","line","polyline","polygon","text","clippath"];c.frames=[];c.idLayerList=[];function j(l,k){return l.getAttributeNS(b,k)||d[k]}function i(o,p,k){var l=o.states[p]=o.states[p]||sozi.display.CameraState.instance();if(typeof l.transitionZoomPercent==="undefined"||k.hasAttributeNS(b,"transition-zoom-percent")){l.setTransitionZoomPercent(parseInt(j(k,"transition-zoom-percent"),10))}if(typeof l.transitionProfile==="undefined"||k.hasAttributeNS(b,"transition-profile")){l.setTransitionProfile(sozi.animation.profiles[j(k,"transition-profile")])}if(typeof l.transitionPath==="undefined"||k.hasAttributeNS(b,"transition-path")){var n=g.getElementById(k.getAttributeNS(b,"transition-path"));if(n&&n.nodeName==="path"){l.setTransitionPath(n);if(j(k,"transition-path-hide")==="true"){n.style.visibility="hidden"}}}if(k.hasAttributeNS(b,"refid")){var m=g.getElementById(k.getAttributeNS(b,"refid"));if(m){l.setAtElement(m);if(j(k,"hide")==="true"){m.style.visibility="hidden"}}}if(k.hasAttributeNS(b,"clip")){l.setClipped(j(k,"clip")==="true")}}function a(){var l=[];var p=g.getElementsByTagNameNS(b,"layer");for(var n=0;n<p.length;n+=1){var s=p[n].getAttributeNS(b,"group");if(s&&l.indexOf(s)===-1){l.push(s)}}var r=g.documentElement;var o="http://www.w3.org/2000/svg";var q=g.createElementNS(o,"g");var k=Array.prototype.slice.call(r.childNodes);k.forEach(function(u,t){if(!u.getAttribute){r.removeChild(u)}else{if(l.indexOf(u.getAttribute("id"))!==-1){if(q.firstChild){q.setAttribute("id","sozi-wrapper-"+t);c.idLayerList.push("sozi-wrapper-"+t);r.insertBefore(q,u);q=g.createElementNS(o,"g")}c.idLayerList.push(u.getAttribute("id"))}else{if(h.indexOf(u.localName.toLowerCase())!==-1){r.removeChild(u);q.appendChild(u)}}}});if(q.firstChild){q.setAttribute("id","sozi-wrapper-"+k.length);c.idLayerList.push("sozi-wrapper-"+k.length);r.appendChild(q)}var m=Array.prototype.slice.call(g.getElementsByTagNameNS(b,"frame"));m.sort(function(u,t){var w=parseInt(j(u,"sequence"),10);var v=parseInt(j(t,"sequence"),10);return w-v});m.forEach(function(v,u){var x={id:v.getAttribute("id"),title:j(v,"title"),showInFrameList:j(v,"show-in-frame-list")==="true",sequence:parseInt(j(v,"sequence"),10),timeoutEnable:j(v,"timeout-enable")==="true",timeoutMs:parseInt(j(v,"timeout-ms"),10),transitionDurationMs:parseInt(j(v,"transition-duration-ms"),10),states:{}};c.idLayerList.forEach(function(A){if(u===0||A.search("sozi-wrapper-[0-9]+")!==-1){i(x,A,v)}else{var z=x.states[A]=sozi.display.CameraState.instance();var y=c.frames[c.frames.length-1].states[A];z.setAtState(y)}});var t=Array.prototype.slice.call(v.getElementsByTagNameNS(b,"layer"));t.forEach(function(y){var z=y.getAttributeNS(b,"group");if(z&&c.idLayerList.indexOf(z)!==-1){i(x,z,y)}});for(var w in x.states){if(x.states.hasOwnProperty(w)){c.frames.push(x);break}}})}c.getFrameIndexForId=function(l){for(var k=0;k<c.frames.length;k+=1){if(c.frames[k].id===l){return k}}return -1};function f(){g.documentElement.removeAttribute("viewBox");a();sozi.events.fire("sozi.document.ready")}e.addEventListener("load",f,false)});namespace(this,"sozi.framelist",function(u,k){var o=k.document;var c=5;var i;var p;var j=0;var h;var s;var b;var v;var w;var t;var e=300;var f="decelerate";var a="http://www.w3.org/2000/svg";function n(z){var x=z.relatedTarget,y=o.documentElement;while(x&&x!==i&&x!==y){x=x.parentNode}if(x!==i){u.hide();sozi.player.restart();z.stopPropagation()}}function r(y){var x=p.getCTM().f;if(x<=-k.innerHeight/2){x+=k.innerHeight/2}else{if(x<0){x=0}}p.setAttribute("transform","translate(0,"+x+")");y.stopPropagation()}function d(y){var x=p.getCTM().f;if(x+j>=k.innerHeight*3/2){x-=k.innerHeight/2}else{if(x+j>k.innerHeight+2*c){x=k.innerHeight-j-4*c}}p.setAttribute("transform","translate(0,"+x+")");y.stopPropagation()}function g(x){return function(y){sozi.player.previewFrame(x);y.stopPropagation()}}function l(x){x.stopPropagation()}function q(){i=o.createElementNS(a,"g");i.setAttribute("id","sozi-toc");o.documentElement.appendChild(i);p=o.createElementNS(a,"g");i.appendChild(p);var y=o.createElementNS(a,"rect");y.setAttribute("id","sozi-toc-background");y.setAttribute("x",c);y.setAttribute("y",c);y.setAttribute("rx",c);y.setAttribute("ry",c);y.addEventListener("click",l,false);y.addEventListener("mousedown",l,false);y.addEventListener("mouseout",n,false);p.appendChild(y);var A=0;sozi.document.frames.forEach(function(D,E){if(D.showInFrameList){var C=o.createElementNS(a,"text");C.appendChild(o.createTextNode(D.title));C.setAttribute("id","sozi-toc-"+D.id);p.appendChild(C);if(E===sozi.player.currentFrameIndex){C.setAttribute("class","sozi-toc-current")}var B=C.getBBox().width;j+=C.getBBox().height;if(B>A){A=B}C.setAttribute("x",2*c);C.setAttribute("y",j+c);C.addEventListener("click",g(E),false);C.addEventListener("mousedown",l,false)}});var x=o.createElementNS(a,"path");x.setAttribute("class","sozi-toc-arrow");x.setAttribute("d","M"+(A+3*c)+","+(5*c)+" l"+(4*c)+",0 l-"+(2*c)+",-"+(3*c)+" z");x.addEventListener("click",r,false);x.addEventListener("mousedown",l,false);i.appendChild(x);var z=o.createElementNS(a,"path");z.setAttribute("class","sozi-toc-arrow");z.setAttribute("d","M"+(A+3*c)+","+(7*c)+" l"+(4*c)+",0 l-"+(2*c)+","+(3*c)+" z");z.addEventListener("click",d,false);z.addEventListener("mousedown",l,false);i.appendChild(z);y.setAttribute("width",A+7*c);y.setAttribute("height",j+2*c);h=-A-9*c;s=0;w=v=h;i.setAttribute("transform","translate("+h+",0)");t=sozi.animation.Animator.instance().augment({onStep:function(B){var D=sozi.animation.profiles[f](B),C=1-D;w=v*D+b*C;i.setAttribute("transform","translate("+w+",0)")}})}function m(x){var y=Array.prototype.slice.call(o.getElementsByClassName("sozi-toc-current"));y.forEach(function(A){A.removeAttribute("class")});var z=sozi.document.frames[x];if(z.showInFrameList){o.getElementById("sozi-toc-"+z.id).setAttribute("class","sozi-toc-current")}}u.show=function(){o.documentElement.appendChild(i);b=w;v=s;t.start(e)};u.hide=function(){b=w;v=h;t.start(e)};u.isVisible=function(){return v===s};sozi.events.listen("sozi.player.ready",q);sozi.events.listen("sozi.player.cleanup",u.hide);sozi.events.listen("sozi.player.framechange",m)});namespace(this,"sozi.framenumber",function(a,d){var g=d.document;var e;var k,i;var f;var b="http://www.w3.org/2000/svg";function h(){var m=k.getBBox(),n=Math.max(m.width,m.height)*0.75,l=n*1.25;f.setAttribute("r",n);e.setAttribute("transform","translate("+l+","+l+")")}function c(){e=g.createElementNS(b,"g");k=g.createElementNS(b,"text");f=g.createElementNS(b,"circle");e.setAttribute("id","sozi-framenumber");f.setAttribute("cx",0);f.setAttribute("cy",0);e.appendChild(f);i=g.createTextNode(sozi.player.currentFrameIndex+1);k.setAttribute("text-anchor","middle");k.setAttribute("dominant-baseline","central");k.setAttribute("x",0);k.setAttribute("y",0);k.appendChild(i);e.appendChild(k);g.documentElement.appendChild(e);h()}function j(l){i.nodeValue=l+1}sozi.events.listen("sozi.player.ready",c);sozi.events.listen("sozi.player.framechange",j)});namespace(this,"sozi.links",function(c,e){var b="http://www.w3.org/2000/svg";var a="http://www.w3.org/1999/xlink";function f(g){return function(h){sozi.player.moveToFrame(g);h.preventDefault();h.stopPropagation()}}function d(){var h=e.document.getElementsByTagNameNS(b,"a");for(var j=0;j<h.length;j+=1){var g=h[j].getAttributeNS(a,"href");if(g&&g[0]==="#"){h[j].addEventListener("click",f(sozi.location.getFrameIndexForHash(g)),false)}}}sozi.events.listen("sozi.document.ready",d)});namespace(this,"sozi.location",function(a,d){var b=false;a.getFrameIndex=function(){return a.getFrameIndexForHash(d.location.hash)};a.getFrameIndexForHash=function(g){var h=g?g.slice(1):"1";var f;if(/^[0-9]+$/.test(h)){f=parseInt(h,10)-1}else{f=sozi.document.getFrameIndexForId(h)}if(f<0){return 0}else{if(f>=sozi.document.frames.length){return sozi.document.frames.length-1}else{return f}}};function e(){var f=a.getFrameIndex();if(!b){sozi.player.moveToFrame(f)}b=false}function c(f){b=true;d.location.hash="#"+sozi.document.frames[f].id}d.addEventListener("hashchange",e,false);sozi.events.listen("sozi.player.framechange",c)});namespace(this,"sozi.player",function(d,g){var l;var c;var i;var e=500;var n=-10;var j="linear";var f=0;d.currentFrameIndex=0;var k=false;var m=false;function h(){if(sozi.document.frames[d.currentFrameIndex].timeoutEnable){m=true;var o=(d.currentFrameIndex+1)%sozi.document.frames.length;i=g.setTimeout(function(){d.moveToFrame(o)},sozi.document.frames[d.currentFrameIndex].timeoutMs)}}d.startFromIndex=function(o){k=true;m=false;f=o;d.currentFrameIndex=o;l.showFrame(sozi.document.frames[o]);h()};d.restart=function(){d.startFromIndex(d.currentFrameIndex)};d.stop=function(){c.stop();if(m){g.clearTimeout(i);m=false}k=false;f=d.currentFrameIndex};function b(o,y,w){var z={ss:((o<0)?Math.max(y,w):Math.min(y,w))*(100-o)/100,ts:0.5,k:0};if(o!==0){var s=y-w;var r=y-z.ss;var q=w-z.ss;if(s!==0){var p=Math.sqrt(r*q);var x=(r-p)/s;var t=(r+p)/s;z.ts=(x>0&&x<=1)?x:t}z.k=r/z.ts/z.ts}return z}d.jumpToFrame=function(o){d.stop();sozi.events.fire("sozi.player.cleanup");f=o;d.currentFrameIndex=o;l.showFrame(sozi.document.frames[o]);sozi.events.fire("sozi.player.framechange",o)};d.getAnimationData=function(o,q,s,p,v,t){var r={};for(var w in o){r[w]={initialState:sozi.display.CameraState.instance(),finalState:sozi.display.CameraState.instance(),useTransitionPath:v,reverseTransitionPath:t};r[w].profile=p||q[w].transitionProfile;r[w].initialState.setAtState(o[w]);if(q.hasOwnProperty(w)){r[w].finalState.setAtState(q[w])}else{r[w].finalState.setAtState(o[w])}if(r[w].finalState.angle-r[w].initialState.angle>180){r[w].finalState.setRawAngle(r[w].finalState.angle-360)}else{if(r[w].finalState.angle-r[w].initialState.angle<-180){r[w].initialState.setRawAngle(r[w].initialState.angle-360)}}var u=s||q[w].transitionZoomPercent;if(u&&q.hasOwnProperty(w)){r[w].zoomWidth=b(u,o[w].width,q[w].width);r[w].zoomHeight=b(u,o[w].height,q[w].height)}}return r};d.previewFrame=function(o){d.currentFrameIndex=o;c.start(e,d.getAnimationData(l.cameras,sozi.document.frames[o].states,n,sozi.animation.profiles[j]),false,false);sozi.events.fire("sozi.player.framechange",o)};d.moveToFrame=function(r){if(m){g.clearTimeout(i);m=false}var q,t,s,p,o;if(r===(d.currentFrameIndex-1)%sozi.document.frames.length){q=sozi.document.frames[d.currentFrameIndex].transitionDurationMs;t=undefined;s=undefined;p=true;o=true}else{if(r===(d.currentFrameIndex+1)%sozi.document.frames.length){q=sozi.document.frames[r].transitionDurationMs;t=undefined;s=undefined;p=true;o=false}else{q=e;t=n;s=sozi.animation.profiles[j];p=false;o=false}}sozi.events.fire("sozi.player.cleanup");k=true;d.currentFrameIndex=r;c.start(q,d.getAnimationData(l.cameras,sozi.document.frames[r].states,t,s,p,o));sozi.events.fire("sozi.player.framechange",r)};d.jumpToFirst=function(){d.jumpToFrame(0)};d.moveToFirst=function(){d.moveToFrame(0)};d.jumpToPrevious=function(){var o=d.currentFrameIndex;if(!c.started||f<=d.currentFrameIndex){o-=1}if(o>=0){d.jumpToFrame(o)}};d.moveToPrevious=function(){for(var o=d.currentFrameIndex-1;o>=0;o-=1){var p=sozi.document.frames[o];if(!p.timeoutEnable||p.timeoutMs!==0){d.moveToFrame(o);break}}};d.jumpToNext=function(){var o=d.currentFrameIndex;if(!c.started||f>=d.currentFrameIndex){o+=1}if(o<sozi.document.frames.length){d.jumpToFrame(o)}};d.moveToNext=function(){if(d.currentFrameIndex<sozi.document.frames.length-1||sozi.document.frames[d.currentFrameIndex].timeoutEnable){d.moveToFrame((d.currentFrameIndex+1)%sozi.document.frames.length)}};d.jumpToLast=function(){d.jumpToFrame(sozi.document.frames.length-1)};d.moveToLast=function(){d.moveToFrame(sozi.document.frames.length-1)};d.moveToCurrent=function(){d.moveToFrame(d.currentFrameIndex)};d.showAll=function(){d.stop();sozi.events.fire("sozi.player.cleanup");c.start(e,d.getAnimationData(l.cameras,l.getDocumentState(),n,sozi.animation.profiles[j],false,false))};function a(){l=sozi.display.ViewPort.instance("player",sozi.document.idLayerList,true);d.startFromIndex(sozi.location.getFrameIndex());g.setTimeout(l.bind(l.update),1);sozi.events.fire("sozi.player.ready")}d.onAnimationStep=function(o,q){for(var s in q){var p=l.cameras[s];p.interpolate(q[s].initialState,q[s].finalState,q[s].profile(o),q[s].useTransitionPath,q[s].reverseTransitionPath);var r;if(q[s].zoomWidth&&q[s].zoomWidth.k!==0){r=o-q[s].zoomWidth.ts;p.width=q[s].zoomWidth.k*r*r+q[s].zoomWidth.ss}if(q[s].zoomHeight&&q[s].zoomHeight.k!==0){r=o-q[s].zoomHeight.ts;p.height=q[s].zoomHeight.k*r*r+q[s].zoomHeight.ss}p.setClipped(q[s].finalState.clipped)}l.update()};c=sozi.animation.Animator.instance().augment({onStep:function(o){d.onAnimationStep(o,this.data)},onDone:function(){for(var o in this.data){l.cameras[o].setAtState(this.data[o].finalState)}l.update();f=d.currentFrameIndex;if(k){h()}}});sozi.events.listen("sozi.display.ready",a)});</script> + <style + ns1:version="14.10-05142318" + id="sozi-style">#sozi-toc text{fill:#eff;font-family:Verdana,sans-serif;font-size:12pt}#sozi-toc text:hover{fill:#0cf;cursor:pointer}#sozi-toc text.sozi-toc-current{fill:#fa4}#sozi-toc-background{stroke:#222;stroke-opacity:.1;stroke-width:10;fill:#222;fill-opacity:.9}.sozi-toc-arrow{fill:#eff;fill-opacity:.75;stroke:none}.sozi-toc-arrow:hover{fill:#0cf}#sozi-framenumber circle{stroke:#222;stroke-opacity:.1;stroke-width:4;fill:#222;fill-opacity:.9}#sozi-framenumber text{fill:#eff;font-family:Verdana,sans-serif;font-size:12pt}</style> + <ns1:frame + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="1" + ns1:title="Gcd implementation" + ns1:refid="rect10351" /> + <ns1:frame + ns1:refid="rect10841" + ns1:title="Gcd maven packaging" + ns1:sequence="2" + ns1:hide="true" + ns1:clip="true" + ns1:show-in-frame-list="true" + ns1:timeout-enable="false" + ns1:timeout-ms="5000.0" + ns1:transition-duration-ms="1000.0" + ns1:transition-zoom-percent="0.0" + ns1:transition-profile="linear" + ns1:transition-path-hide="true" /> + <ns1:frame + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="3" + ns1:title="Using Math.getGcd()" + ns1:refid="rect11089" /> + <ns1:frame + ns1:refid="rect11381" + ns1:title="Fraction project" + ns1:sequence="4" + ns1:hide="true" + ns1:clip="true" + ns1:show-in-frame-list="true" + ns1:timeout-enable="false" + ns1:timeout-ms="5000.0" + ns1:transition-duration-ms="1000.0" + ns1:transition-zoom-percent="0.0" + ns1:transition-profile="linear" + ns1:transition-path-hide="true" /> + <ns1:frame + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="5" + ns1:title="Maven dependency definition" + ns1:refid="rect11637" /> + <ns1:frame + ns1:refid="rect11895" + ns1:title="Fraction depends on Gcd" + ns1:sequence="6" + ns1:hide="true" + ns1:clip="true" + ns1:show-in-frame-list="true" + ns1:timeout-enable="false" + ns1:timeout-ms="5000" + ns1:transition-duration-ms="1000" + ns1:transition-zoom-percent="0" + ns1:transition-profile="linear" + ns1:transition-path-hide="true" /> </svg> diff --git a/Doc/Sd1/Ref/ObjectsAndClasses/modelPerson.svg b/Doc/Sd1/Ref/ObjectsAndClasses/modelPerson.svg new file mode 100644 index 0000000000000000000000000000000000000000..460d94ac3e71b55c83863115bc4dc8e09f63a9a4 --- /dev/null +++ b/Doc/Sd1/Ref/ObjectsAndClasses/modelPerson.svg @@ -0,0 +1,1396 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:ns1="http://sozi.baierouge.fr" + 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" + sodipodi:docname="modelPerson.svg" + inkscape:version="0.92.1 r15371" + version="1.2" + id="svg2" + height="586.66669" + width="821.33331"> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.2077062" + inkscape:cx="352.06651" + inkscape:cy="270.45233" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="true" + inkscape:window-width="1600" + inkscape:window-height="1105" + inkscape:window-x="0" + inkscape:window-y="0" + inkscape:window-maximized="1" + showguides="true" + inkscape:guide-bbox="true"> + <inkscape:grid + type="xygrid" + id="grid1569" /> + </sodipodi:namedview> + <defs + id="defs4"> + <marker + inkscape:isstock="true" + style="overflow:visible;" + id="marker11618" + refX="0.0" + refY="0.0" + orient="auto" + inkscape:stockid="Arrow1Mend"> + <path + transform="scale(0.4) rotate(180) translate(10,0)" + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1" + d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z " + id="path11616" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker2318" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path2316" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0.0" + refX="0.0" + id="marker4887" + style="overflow:visible;" + inkscape:isstock="true"> + <path + id="path4627" + d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z " + style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;stroke-opacity:1;fill:#000000;fill-opacity:1" + transform="scale(0.8) rotate(180) translate(12.5,0)" /> + </marker> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker6797" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> + <path + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + id="path6799" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker6793" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> + <path + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + id="path6795" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker6778" + style="overflow:visible" + inkscape:isstock="true"> + <path + id="path6514" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lstart" + style="overflow:visible"> + <path + id="path3841" + d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareM" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareM"> + <path + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path3914" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lend" + style="overflow:visible"> + <path + id="path3844" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondM" + orient="auto" + refY="0" + refX="0" + id="DiamondM" + style="overflow:visible"> + <path + id="path3923" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondMH" + orient="auto" + refY="0" + refX="0" + id="DiamondMH" + style="overflow:visible"> + <path + id="path4656" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendB" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendB" + style="overflow:visible"> + <path + id="path4659" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMU" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMU"> + <path + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path5221" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend3" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lend3" + style="overflow:visible"> + <path + id="path5224" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondMo" + orient="auto" + refY="0" + refX="0" + id="DiamondMo" + style="overflow:visible"> + <path + id="path5799" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendO" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendO" + style="overflow:visible"> + <path + id="path5802" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondM1" + orient="auto" + refY="0" + refX="0" + id="DiamondM1" + style="overflow:visible"> + <path + id="path6393" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendV" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendV" + style="overflow:visible"> + <path + id="path6396" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMN" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMN"> + <path + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path7813" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LstartP" + orient="auto" + refY="0" + refX="0" + id="Arrow1LstartP" + style="overflow:visible"> + <path + id="path7816" + d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMb" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMb"> + <path + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path9491" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendX" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendX" + style="overflow:visible"> + <path + id="path9494" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareM8" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareM8"> + <path + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path10143" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendT" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendT" + style="overflow:visible"> + <path + id="path10146" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMNT" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMNT"> + <path + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path12195" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LstartPJ" + orient="auto" + refY="0" + refX="0" + id="Arrow1LstartPJ" + style="overflow:visible"> + <path + id="path12198" + d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMNTL" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMNTL"> + <path + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path12907" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lendx" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lendx" + style="overflow:visible"> + <path + id="path12910" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondMoY" + orient="auto" + refY="0" + refX="0" + id="DiamondMoY" + style="overflow:visible"> + <path + id="path13187" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendOe" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendOe" + style="overflow:visible"> + <path + id="path13190" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <linearGradient + id="linearGradient3928-8"> + <stop + offset="0" + style="stop-color:#7c7c7c" + id="stop3930-2" /> + <stop + offset="1" + style="stop-color:#e6e3e3" + id="stop3932-0" /> + </linearGradient> + <linearGradient + id="linearGradient8877"> + <stop + style="stop-color:#cecece;stop-opacity:1;" + offset="0" + id="stop8879" /> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="1" + id="stop8881" /> + </linearGradient> + <linearGradient + id="linearGradient8869"> + <stop + id="stop8871" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop8873" + offset="1" + style="stop-color:#000000;stop-opacity:1;" /> + </linearGradient> + <linearGradient + id="linearGradient7421"> + <stop + id="stop7423" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop7425" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient7405"> + <stop + style="stop-color:#9e9e9e;stop-opacity:1;" + offset="0" + id="stop7407" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop7409" /> + </linearGradient> + <linearGradient + id="linearGradient7378"> + <stop + id="stop7380" + offset="0" + style="stop-color:#9e9e9e;stop-opacity:1;" /> + <stop + id="stop7382" + offset="1" + style="stop-color:#ffffff;stop-opacity:1;" /> + </linearGradient> + <inkscape:perspective + id="perspective6864" + inkscape:persp3d-origin="32 : 21.333333 : 1" + inkscape:vp_z="64 : 32 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 32 : 1" + sodipodi:type="inkscape:persp3d" /> + <filter + id="imagebot_16" + color-interpolation-filters="sRGB"> + <feGaussianBlur + id="imagebot_21" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14" + y2="-235.34228" + xlink:href="#linearGradient3928-8" + x2="33.162107" + y1="-192.16943" + x1="32.287572" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12" + width="1.0832" + y="-0.1075" + x="-0.04161" + height="1.215" + color-interpolation-filters="sRGB"> + <feGaussianBlur + id="imagebot_18" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572055" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_16-6" + color-interpolation-filters="sRGB"> + <feGaussianBlur + id="imagebot_21-1" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-8" + y2="-235.34228" + xlink:href="#linearGradient3928-8" + x2="33.162107" + y1="-192.16943" + x1="32.287572" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12-7" + width="1.0832" + y="-0.1075" + x="-0.04161" + height="1.215" + color-interpolation-filters="sRGB"> + <feGaussianBlur + id="imagebot_18-9" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-2" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572055" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_16-2" + color-interpolation-filters="sRGB"> + <feGaussianBlur + id="imagebot_21-8" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-9" + y2="-235.34228" + xlink:href="#linearGradient3928-8" + x2="33.162107" + y1="-192.16943" + x1="32.287572" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12-73" + width="1.0832" + y="-0.1075" + x="-0.04161" + height="1.215" + color-interpolation-filters="sRGB"> + <feGaussianBlur + id="imagebot_18-6" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-1" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572055" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + style="color-interpolation-filters:sRGB" + id="imagebot_16-0"> + <feGaussianBlur + id="imagebot_21-7" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-5" + y2="-235.34229" + xlink:href="#linearGradient3928-8" + x2="33.162106" + y1="-192.16943" + x1="32.287571" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + style="color-interpolation-filters:sRGB" + id="imagebot_12-0" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215"> + <feGaussianBlur + id="imagebot_18-4" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-8" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_16-02" + color-interpolation-filters="sRGB"> + <feGaussianBlur + id="imagebot_21-9" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-4" + y2="0.73097428" + xlink:href="#linearGradient3928-8" + x2="36.048217" + y1="43.903821" + x1="35.173682" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12-3" + width="1.0832" + y="-0.1075" + x="-0.04161" + height="1.215" + color-interpolation-filters="sRGB"> + <feGaussianBlur + id="imagebot_18-5" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-17" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572055" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker6793-6" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> + <path + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + id="path6795-8" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="marker17735-0" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path17472-68" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + transform="matrix(0.8,0,0,0.8,10,0)" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker2318-9" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path2316-2" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" /> + </marker> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="marker17735-3" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path17472-1" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + transform="matrix(0.8,0,0,0.8,10,0)" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker2318-4" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path2316-9" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" /> + </marker> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="marker17735-8" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path17472-6" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + transform="matrix(0.8,0,0,0.8,10,0)" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker2318-8" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path2316-8" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" /> + </marker> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="marker17735" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path17472" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + transform="matrix(0.8,0,0,0.8,10,0)" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker2318-3" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path2316-6" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lend-6" + style="overflow:visible"> + <path + id="path3844-5" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + </defs> + <metadata + id="metadata7"> + <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 /> + </cc:Work> + </rdf:RDF> + </metadata> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,-535.85302)"> + <rect + style="fill:#e9c6af;stroke:none;stroke-width:2.4720881;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect4062" + width="240" + height="580" + x="580" + y="542.51971" /> + <rect + style="fill:#ffeeaa;stroke:none;stroke-width:2.89878035;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect4062-1" + width="330" + height="580" + x="0" + y="542.51971" /> + <text + xml:space="preserve" + style="font-style:normal;font-weight:normal;font-size:12.80000019px;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.06666672" + x="104.51711" + y="415.68225" + id="text3004"><tspan + sodipodi:role="line" + id="tspan3006" + x="104.51711" + y="415.68225" + style="font-size:42.66666794px;line-height:1.25;font-family:sans-serif;stroke-width:1.06666672">Â </tspan></text> + <g + id="g13568"> + <g + transform="matrix(0.21138288,0,0,0.21138288,207.39997,937.60548)" + id="g16095"> + <path + inkscape:connector-curvature="0" + d="m 472.388,260.288 c -21.971,-4.394 -28.563,-12.084 -61.52,-1.098 -32.958,10.986 -74.704,31.859 -82.394,83.492 -7.69,51.633 -17.577,116.449 -12.084,136.223 5.493,19.775 13.183,41.746 29.662,49.436 16.478,7.69 51.633,18.676 88.984,8.789 37.352,-9.887 99.971,-52.732 103.267,-77.999 9.887,-26.366 17.577,-50.535 14.281,-83.492 -7.69,-98.872 -46.141,-106.562 -80.196,-115.351 z" + id="path551" + sodipodi:nodetypes="ccccccccc" + style="fill:#ffd6cc;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.25607991;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1" + transform="matrix(1.699686,0,0,1.625496,-479.1629,-395.0527)" /> + <path + inkscape:connector-curvature="0" + d="m 375.713,355.865 c 0,0 -23.07,32.957 -24.169,46.14 -1.098,13.183 -7.69,24.169 -3.295,26.366 4.394,2.197 24.168,0 28.563,-1.099 4.394,-1.098 8.788,-1.099 8.788,-6.591 0,-5.493 -5.492,-6.592 -6.591,-6.592 -1.099,0 -1.099,0 -1.099,0" + id="path552" + sodipodi:nodetypes="ccccccc" + style="fill:none;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.25607991;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1" + transform="matrix(1.699686,0,0,1.625496,-479.1629,-395.0527)" /> + <path + inkscape:connector-curvature="0" + d="m 415.262,356.963 c 0,0 27.464,-2.197 39.549,1.099 12.084,3.296 17.577,5.493 17.577,8.788 0,3.296 -3.296,10.986 -9.887,10.986 -6.592,0 -26.366,4.394 -36.253,3.296 -9.887,-1.099 -8.789,3.296 -17.577,-5.493 -8.789,-8.789 5.492,-17.577 6.591,-18.676 z" + id="path554" + style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.25607991;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1" + transform="matrix(1.699686,0,0,1.625496,-481.03,-391.4812)" /> + <path + inkscape:connector-curvature="0" + d="m 535.007,359.16 c 2.197,-3.295 0,-7.69 6.591,-9.887 5.493,-5.493 8.789,-7.69 15.38,-3.296 6.592,4.395 10.986,15.38 9.888,27.465 -1.099,12.084 -1.099,12.084 -7.691,18.676 -6.591,6.591 1.099,13.183 -9.887,15.38 -10.985,2.197 -16.478,5.493 -17.577,-3.296 -1.099,-8.789 3.296,-12.084 3.296,-12.084" + id="path555" + sodipodi:nodetypes="cccccccc" + style="fill:#ffd6cc;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.25607991;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1" + transform="matrix(1.699686,0,0,1.625496,-479.1629,-395.0527)" /> + <path + inkscape:connector-curvature="0" + d="m 422.952,358.062 c 0,0 -4.394,2.197 -6.591,7.69 -2.198,5.493 -2.198,7.69 0,10.986 2.197,3.295 4.394,4.394 9.887,4.394 5.493,0 14.281,0 17.577,-3.296 3.296,-3.296 2.197,-4.394 3.296,-10.986 1.098,-6.591 -16.479,-9.887 -24.169,-8.788 z" + id="path556" + style="fill:#0000fe;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + transform="matrix(1.699686,0,0,1.625496,-480.6797,-393.6024)" /> + <path + inkscape:connector-curvature="0" + d="m 424.299,367.058 c 0,0 -2.677,0.446 -2.676,3.569 1.338,3.124 1.784,3.124 4.461,3.124 1.339,0.445 4.016,0.892 4.462,-1.785 0.446,-2.677 -4.462,-5.8 -6.247,-4.908 z" + id="path557" + sodipodi:nodetypes="ccccc" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + transform="matrix(1.699686,0,0,1.625496,-475.3713,-395.0527)" /> + <path + inkscape:connector-curvature="0" + d="m 325.252,365.72 c 2.677,-0.893 3.569,-3.123 10.261,-4.016 6.693,-0.892 12.493,-3.123 19.185,-1.338 6.693,1.784 12.047,4.908 11.601,8.031 -0.447,3.123 -2.37,6.386 -5.744,11.154 -3.012,3.318 -1.399,2.845 -10.318,2.98 -6.246,0 -15.616,-0.75 -20.524,-3.873 -4.907,-3.123 -4.461,-10.708 -4.461,-12.938 z" + id="path558" + sodipodi:nodetypes="cccccccc" + style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.25607991;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1" + transform="matrix(1.699686,0,0,1.625496,-479.1629,-395.0527)" /> + <path + inkscape:connector-curvature="0" + d="m 339.529,361.704 c -3.123,0.446 -4.3,-0.143 -6.085,4.765 -1.785,4.908 -2.517,4.016 -1.339,7.282 0.588,2.088 0.731,4.907 2.516,6.246 1.784,1.338 6.693,2.677 9.816,2.677 3.123,0 6.674,1.357 9.796,-6.674 1.947,-7.442 0.304,-7.852 -0.427,-9.673 -2.677,-5.354 -6.692,-6.407 -14.277,-4.623 z" + id="path559" + sodipodi:nodetypes="cccccccc" + style="fill:#0000fe;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.25607991;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1" + transform="matrix(1.699686,0,0,1.625496,-479.1629,-395.0527)" /> + <path + inkscape:connector-curvature="0" + d="m 339.083,369.289 c -0.893,0.446 -2.231,2.677 -1.785,3.569 0.446,0.893 0,2.231 2.231,2.231 2.231,0 3.123,0 4.015,-1.338 0.893,-1.339 -2.677,-4.462 -4.461,-4.462 z" + id="path560" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + transform="matrix(1.699686,0,0,1.625496,-475.4673,-395.0527)" /> + <path + inkscape:connector-curvature="0" + d="m 414.455,335.897 c 0,0 17.072,1.178 32.379,2.355 15.306,1.178 20.605,3.532 29.435,5.887 7.654,5.887 11.775,10.008 11.775,10.597 0,0.589 0,-1.177 -14.129,-5.298 -14.129,-4.121 -21.783,-6.476 -32.38,-6.476 -10.596,0 -24.137,1.177 -28.258,1.177 -4.121,0 -10.008,1.178 -9.419,-2.943 0.588,-4.121 8.831,-6.476 10.597,-5.299 z" + id="path562" + sodipodi:nodetypes="ccccccccc" + style="fill:#3f1900;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + transform="matrix(1.699686,0,0,1.625496,-479.1629,-395.0527)" /> + <path + inkscape:connector-curvature="0" + d="m 326.736,349.438 c 0.589,0 8.831,-3.532 13.541,-4.121 4.709,-0.589 8.83,-2.355 15.895,-2.355 7.065,0 10.008,2.943 14.129,0.589 4.121,-2.355 7.653,-3.533 4.121,-6.476 -3.532,-2.944 -1.766,-2.355 -10.008,-2.944 -8.242,-0.589 -11.774,-1.177 -18.25,0.589 -6.476,1.766 -8.831,4.71 -14.718,7.653 -5.887,2.944 -10.008,4.121 -7.653,5.887 2.355,1.766 2.355,1.766 2.943,1.178 z" + id="path563" + style="fill:#3f1900;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.25607991;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1" + transform="matrix(1.699686,0,0,1.625496,-479.1629,-395.0527)" /> + <g + id="g569" + style="stroke:#000000;stroke-width:2.25607991;stroke-dasharray:none;stroke-opacity:1" + transform="matrix(1.699686,0,0,1.625496,-479.1629,-395.0527)"> + <path + inkscape:connector-curvature="0" + d="m 346.052,475.609 c 0,0 8.788,4.395 15.38,4.395 6.591,0 13.183,1.098 21.972,1.098 8.788,0 14.281,0 26.365,-2.197 15.38,-5.493 15.38,-3.296 15.38,-3.296 0,0 -8.789,6.592 -27.464,16.479 -20.874,1.099 -47.239,1.098 -47.239,-6.591 -4.394,-1.099 -4.394,-8.789 -4.394,-9.888 z" + id="path553" + sodipodi:nodetypes="cccccccc" + style="font-size:12px;fill:#ff4f18;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:2.25607991;stroke-dasharray:none;stroke-opacity:1" /> + <path + inkscape:connector-curvature="0" + d="m 345.575,477.189 c 0,0 8.831,7.653 12.363,8.242 3.532,0.588 22.371,1.177 26.492,1.177 7.065,1.766 37.678,-8.242 39.444,-10.597" + id="path561" + sodipodi:nodetypes="cccc" + style="font-size:12px;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.25607991;stroke-dasharray:none;stroke-opacity:1" /> + </g> + <path + inkscape:connector-curvature="0" + d="m 426.916,360.723 c 0,0 -2.21,-0.884 -4.419,0 -2.21,0.883 -2.652,1.325 -3.094,3.093 -0.442,1.768 -0.884,1.768 2.21,4.42 6.187,2.209 5.303,3.977 10.606,2.209 5.304,-1.767 7.071,-0.884 7.513,-4.419 0.442,-3.536 -4.861,-6.187 -12.816,-5.303 z" + id="path572" + sodipodi:nodetypes="ccccccc" + style="fill:#ffffff;fill-opacity:0.5;fill-rule:evenodd;stroke:none;stroke-width:1.00000003pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + transform="matrix(1.699686,0,0,1.625496,-479.1629,-395.0527)" /> + <path + inkscape:connector-curvature="0" + d="m 426.916,360.723 c 0,0 -2.21,-0.884 -4.419,0 -2.21,0.883 -1.326,1.767 -1.768,3.535 0.442,2.652 1.768,3.978 3.094,4.42 5.303,2.651 3.093,2.651 8.396,1.767 5.304,-1.767 3.977,-0.884 4.419,-4.419 -0.883,-3.536 -1.767,-5.745 -9.722,-5.303 z" + id="path573" + sodipodi:nodetypes="ccccccc" + style="fill:#ffffff;fill-opacity:0.5;fill-rule:evenodd;stroke:none;stroke-width:1.00000003pt;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" + transform="matrix(1.699686,0,0,1.625496,-624.8889,-392.1792)" /> + </g> + <text + id="text10469" + y="994.22583" + x="10.41564" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + xml:space="preserve"><tspan + style="fill:#ff0000" + y="994.22583" + x="10.41564" + id="tspan10467" + sodipodi:role="line">Name: Jim</tspan><tspan + style="fill:#008000" + id="tspan10471" + y="1034.2258" + x="10.41564" + sodipodi:role="line">Sex: male</tspan><tspan + style="fill:#800080" + id="tspan12728" + y="1074.2258" + x="10.41564" + sodipodi:role="line">Birth: 1981/04/22</tspan></text> + </g> + <g + id="g13545"> + <g + transform="matrix(0.17780516,0,0,0.17780516,214.12598,691.04559)" + id="g5"> + <path + inkscape:connector-curvature="0" + d="m 71.355,288.66 c 0,134.1 88.596,242.856 197.928,242.856 109.333,0 197.965,-108.757 197.965,-242.856 0,-134.1 -88.632,-242.856 -197.965,-242.856 -109.332,0 -197.928,108.756 -197.928,242.856 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path7" /> + <path + inkscape:connector-curvature="0" + d="m 75.531,289.056 c 0,131.904 87.12,238.86 194.58,238.86 107.461,0 194.58,-106.956 194.58,-238.86 0,-131.868 -87.119,-238.823 -194.58,-238.823 -107.46,-10e-4 -194.58,106.955 -194.58,238.823 z" + style="fill:#daaf95;fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path9" /> + <path + inkscape:connector-curvature="0" + d="m 190.947,502.356 c -3.816,-2.16 -12.96,-9.145 -18.684,-14.004 -5.832,-4.969 -13.824,-12.421 -15.624,-14.977 -1.836,-2.592 1.62,-2.483 5.112,-0.107 3.528,2.34 10.044,9.432 15.66,14.075 5.544,4.465 14.796,10.656 17.208,13.177 2.089,2.412 0.072,3.852 -3.672,1.836 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path11" /> + <path + inkscape:connector-curvature="0" + d="m 198.399,506.136 c 0.9,0.937 5.148,3.889 6.48,3.996 1.188,0.072 1.908,-2.556 1.044,-3.456 -1.008,-0.972 -5.256,-2.556 -6.48,-2.52 -1.296,-0.179 -2.016,0.936 -1.044,1.98 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path13" /> + <path + inkscape:connector-curvature="0" + d="m 148.54,465.024 c 0.648,1.224 3.96,4.968 5.22,5.544 1.224,0.359 2.376,-1.908 1.908,-3.061 -0.684,-1.332 -4.392,-3.672 -5.58,-4.104 -1.225,-0.395 -2.197,0.289 -1.548,1.621 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path15" /> + <path + inkscape:connector-curvature="0" + d="m 213.916,233.256 c 0,8.208 6.948,14.868 15.48,14.868 8.568,0 15.516,-6.66 15.516,-14.868 0,-8.208 -6.948,-14.868 -15.516,-14.868 -8.533,0 -15.48,6.66 -15.48,14.868 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path17" /> + <path + inkscape:connector-curvature="0" + d="m 221.728,229.368 c 0,2.232 1.872,4.032 4.212,4.032 2.34,0 4.212,-1.8 4.212,-4.032 0,-2.232 -1.872,-4.032 -4.212,-4.032 -2.341,0 -4.212,1.8 -4.212,4.032 z" + style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path19" /> + <path + inkscape:connector-curvature="0" + d="m 196.347,202.224 c 2.808,-2.628 8.748,-6.588 13.5,-8.964 4.68,-2.448 10.368,-4.5 14.292,-5.184 3.816,-0.756 7.488,0 8.244,1.152 0.54,1.08 -1.404,4.248 -4.428,5.76 -3.132,1.368 -9.612,1.08 -13.896,2.88 -4.536,1.728 -8.928,5.58 -12.06,7.812 -3.132,2.232 -4.752,4.932 -6.228,5.472 -1.584,0.324 -2.736,-1.332 -2.628,-2.88 0.145,-1.548 0.288,-3.564 3.204,-6.048 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path21" /> + <path + inkscape:connector-curvature="0" + d="m 294.592,233.832 c 0,8.208 -6.912,14.868 -15.479,14.868 -8.569,0 -15.517,-6.66 -15.517,-14.868 0,-8.208 6.947,-14.832 15.516,-14.832 8.568,0 15.48,6.624 15.48,14.832 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path23" /> + <path + inkscape:connector-curvature="0" + d="m 282.28,229.656 c 0,2.232 -1.908,4.032 -4.213,4.032 -2.34,0 -4.248,-1.8 -4.248,-4.032 0,-2.232 1.908,-4.032 4.248,-4.032 2.305,0 4.213,1.8 4.213,4.032 z" + style="fill:#ffffff;fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path25" /> + <path + inkscape:connector-curvature="0" + d="m 315.688,203.52 c -2.447,-2.628 -7.271,-6.588 -11.124,-8.964 -3.96,-2.448 -8.676,-4.5 -11.771,-5.184 -3.096,-0.756 -6.336,0 -6.804,1.152 -0.576,1.08 1.115,4.248 3.672,5.76 2.483,1.368 7.775,1.08 11.447,2.88 3.564,1.728 7.345,5.58 9.937,7.812 2.448,2.232 3.888,4.932 5.147,5.472 1.225,0.324 2.124,-1.332 2.16,-2.88 -0.216,-1.548 -0.324,-3.564 -2.664,-6.048 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path27" /> + <path + inkscape:connector-curvature="0" + d="m 259.419,451.452 c -7.092,-1.116 -9.936,-0.792 -18.036,-4.536 -8.136,-3.816 -21.24,-10.224 -30.24,-17.928 -9,-7.704 -16.128,-16.164 -23.256,-27.937 -7.164,-11.808 -14.616,-27.936 -19.26,-42.191 -4.608,-14.256 -7.272,-28.152 -8.208,-42.517 v 0 c 0.828,-1.512 1.944,-3.239 3.348,-5.58 1.44,-2.411 4.32,-6.084 4.896,-8.1 0.396,-2.16 0.216,-5.939 -2.34,-3.96 -2.592,1.98 -9.18,11.592 -13.104,16.056 -4.032,4.393 -9.144,7.849 -10.764,10.368 -1.656,2.521 -0.612,4.104 0.792,4.176 1.368,-0.252 4.644,-3.096 7.056,-4.932 2.304,-1.8 4.32,-3.744 6.444,-5.832 v 0 c 2.016,16.776 5.328,32.328 10.476,47.628 5.076,15.192 11.124,30.708 19.656,43.092 8.46,12.204 21.024,22.824 30.456,30.061 9.288,7.092 18.036,9.576 24.84,12.456 6.588,2.7 9.72,3.563 14.832,4.248 4.932,0.684 10.188,0.684 15.228,0 5.04,-0.685 8.137,-1.548 14.832,-4.248 6.66,-2.88 15.553,-5.364 24.876,-12.456 9.324,-7.236 21.889,-17.856 30.456,-30.061 8.244,-12.491 14.688,-28.655 19.62,-43.092 5.004,-14.399 8.172,-28.296 10.044,-42.516 v 0 c 4.212,5.58 7.488,8.928 9.828,10.188 2.376,1.116 4.393,-1.655 4.104,-3.023 -0.504,-1.477 -3.816,-2.916 -6.444,-5.292 -2.736,-2.448 -6.192,-5.328 -9.396,-9.072 -3.313,-3.888 -7.633,-11.988 -9.9,-13.752 -2.34,-1.836 -3.996,1.404 -3.6,3.348 0.432,1.872 4.067,5.796 6.048,8.316 1.836,2.52 3.492,4.68 5.111,6.624 v 0 c -0.936,14.328 -2.592,23.616 -7.199,37.872 -4.608,14.256 -12.097,30.384 -19.225,42.191 -7.164,11.772 -14.256,20.232 -23.256,27.937 -9,7.705 -22.104,14.111 -30.24,17.928 -8.136,3.744 -10.943,3.42 -18.036,4.536 -7.127,1.152 -3.311,1.152 -10.439,0 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path29" /> + <path + inkscape:connector-curvature="0" + d="m 165.927,474.024 c 9.252,7.452 18.36,13.968 27.468,19.836 9.144,5.868 20.916,10.62 26.964,15.084 5.904,4.355 7.668,6.408 8.352,10.872 0.576,4.319 3.024,12.636 -4.896,15.084 -8.208,2.268 -26.352,-0.036 -43.164,-0.937 -16.956,-0.936 -39.816,-4.428 -56.916,-4.248 -17.1,0.072 -30.96,3.924 -44.64,5.185 -13.68,1.296 -28.296,5.004 -36.756,2.376 -8.496,-2.88 -12.528,-14.04 -13.752,-18.9 -1.26,-5.004 0.864,-8.28 6.372,-10.368 v 0 C 24.447,494.22 16.995,480.072 11.919,464.592 6.843,449.076 4.683,428.34 5.043,415.992 c 0.288,-12.384 3.276,-20.521 8.82,-24.984 v 0 c -1.692,-13.607 -2.412,-24.84 -2.448,-33.983 0,-9.216 3.276,-13.32 2.448,-20.772 -0.972,-7.488 -5.58,-14.904 -7.848,-24.048 -2.448,-9.432 -6.804,-22.032 -5.868,-31.14 1.044,-9.036 4.788,-16.452 11.772,-22.645 v 0 c -0.936,-18.288 0.72,-33.192 5.4,-45.54 4.464,-12.276 11.628,-20.592 22.068,-27.864 10.512,-7.344 23.94,-12.636 40.716,-16.02 v 0 c -5.004,-8.064 -7.128,-15.408 -6.372,-22.176 0.828,-6.912 4.608,-12.996 10.764,-18.396 6.012,-5.328 14.22,-9.936 25.02,-13.68 v 0 c -6.408,-15.372 -7.056,-27.504 -1.944,-36.828 5.112,-9.432 15.768,-15.444 32.364,-18.864 v 0 c -3.024,-9.18 -1.44,-17.136 4.896,-24.552 6.444,-7.452 20.448,-15.516 32.868,-19.332 12.24,-3.816 30.96,-5.148 40.212,-3.312 9,1.836 11.52,9.756 14.22,14.184 2.7,4.284 3.312,7.956 1.98,11.304 v 0 c 1.332,-7.128 3.78,-12.852 7.344,-17.46 3.492,-4.572 6.228,-6.768 13.752,-9.9 7.524,-3.276 20.232,-8.136 30.888,-9.432 10.548,-1.296 23.76,0 31.86,1.404 7.92,1.26 8.388,4.464 15.695,6.156 7.272,1.44 18.253,0.072 27.505,3.276 9.144,3.24 18.827,8.64 26.964,16.056 7.992,7.38 14.004,20.916 21.096,27.828 7.056,6.768 14.04,8.424 21.096,12.744 7.057,4.212 16.236,7.488 20.593,12.744 4.104,5.256 5.111,12.132 4.392,18.396 -0.792,6.228 -3.636,12.132 -8.82,18.396 v 0 c 13.032,11.772 23.544,24.084 32.364,37.764 8.64,13.572 16.344,28.368 19.62,43.416 3.24,14.976 2.952,29.952 -0.468,45.756 v 0 c 17.855,16.848 29.844,30.6 36.792,42.228 6.768,11.376 6.947,16.021 3.888,26.425 -3.204,10.512 -18.54,23.111 -22.536,35.855 -3.96,12.6 -2.304,27.828 -1.008,39.168 1.188,11.196 8.784,17.136 8.352,27.828 -0.54,10.656 -4.248,22.176 -11.268,35.388 v 0 c 5.868,12.061 10.152,23.112 13.248,33.984 3.023,10.764 6.372,21.023 4.896,30.204 -1.691,9.036 1.477,21.96 -14.22,24.048 -15.984,1.944 -58.536,-11.232 -79.488,-11.772 -20.844,-0.575 -30.203,6.013 -44.604,8.496 -14.688,2.412 -28.26,6.444 -41.688,6.12 -13.536,-0.468 -32.292,-2.556 -37.8,-8.496 -5.328,-6.228 -3.168,-17.244 5.904,-27.359 9.18,-10.188 34.596,-21.42 48.06,-32.58 13.141,-11.232 21.456,-20.7 30.925,-33.948 9.432,-13.32 17.783,-28.224 25.487,-45.288 v 0 c -7.487,-15.192 -11.196,-27.792 -11.268,-38.231 -0.036,-10.477 3.42,-18.36 10.764,-24.085 v 0 c -5.328,-3.815 -7.632,-10.188 -7.344,-19.8 0.396,-9.684 9.288,-25.487 9.324,-37.296 -0.108,-11.772 -3.385,-22.68 -9.828,-33.012 v 0 c -9.756,5.616 -17.784,7.416 -24.517,5.544 -6.876,-2.052 -13.031,-8.496 -15.695,-16.992 -2.664,-8.604 2.844,-25.596 0,-33.48 -2.988,-7.992 -12.924,-7.416 -17.172,-13.68 -4.248,-6.336 -6.769,-16.524 -7.849,-23.616 -1.151,-7.236 3.853,-13.068 1.008,-18.864 -3.096,-5.904 -12.456,-12.672 -18.647,-15.588 -6.336,-2.916 -13.212,1.476 -18.145,-1.404 -4.968,-2.952 -9.396,-7.38 -10.8,-16.056 -1.368,-8.928 5.328,-27.468 2.448,-36.324 -3.096,-8.748 -12.6,-13.068 -20.592,-16.02 -8.208,-2.916 -20.377,-2.16 -27.469,-1.908 -7.128,0 -11.34,2.592 -14.724,2.376 -3.384,-0.252 -5.184,-1.512 -5.4,-3.78 v 0 c -0.036,4.932 -1.944,8.928 -5.868,12.276 -4.14,3.204 -10.872,4.932 -17.676,7.524 -6.84,2.556 -17.28,4.536 -22.572,8.028 -5.292,3.563 -7.956,7.812 -8.82,12.744 -0.972,4.716 3.42,10.404 3.456,15.552 0.072,5.148 0.504,9.9 -3.42,14.652 -4.248,4.536 -17.064,7.164 -21.096,12.744 -4.032,5.616 -2.052,13.536 -2.952,20.268 -0.936,6.552 1.368,13.32 -2.952,18.9 -4.536,5.364 -17.568,8.352 -23.544,13.68 -6.084,5.364 -10.62,10.296 -12.24,18.396 -1.656,8.1 4.176,21.384 2.916,29.736 -1.476,8.1 -7.812,10.8 -10.8,19.332 -3.06,8.532 -7.236,19.116 -6.84,31.607 0.396,12.385 8.64,30.601 9.324,42.589 0.504,11.88 -4.716,19.8 -5.4,28.764 -0.828,8.928 -0.936,17.855 1.476,24.552 2.448,6.48 11.304,8.064 13.248,14.616 1.908,6.552 1.152,14.688 -1.98,24.552 v 0 c 11.232,15.48 20.412,27.288 27.972,35.856 7.525,8.531 12.889,13.427 16.669,15.083 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path31" /> + <path + inkscape:connector-curvature="0" + d="m 18.759,391.477 c -3.816,1.584 -6.336,5.76 -7.848,13.212 -1.584,7.344 -2.736,18.54 -0.972,30.672 1.836,12.132 6.264,29.016 11.772,41.508 5.436,12.456 12.204,23.076 20.592,32.544 v 0 c -3.384,0.684 -5.616,2.268 -6.84,4.752 -1.332,2.484 -1.872,6.624 -0.504,9.9 1.296,3.06 2.988,7.668 8.82,8.964 5.904,1.188 15.264,-0.108 25.992,-1.404 10.692,-1.404 24.048,-5.832 37.296,-6.624 13.068,-0.864 26.46,0.685 40.716,1.872 14.148,1.08 31.932,4.104 43.632,4.752 11.556,0.54 20.196,0.433 25.524,-1.439 5.22,-2.089 7.128,-6.517 5.868,-10.368 -1.404,-3.889 -5.976,-7.345 -13.716,-12.744 -7.956,-5.508 -21.924,-11.664 -32.868,-19.836 -11.016,-8.244 -23.004,-19.332 -32.364,-29.232 -9.432,-9.972 -17.136,-19.943 -23.544,-30.204 v 0 c -1.692,3.204 -2.628,6.84 -2.952,11.34 -0.468,4.356 -0.468,10.908 0.972,15.085 1.512,4.14 7.74,7.884 7.848,9.432 0,1.332 -5.904,1.296 -7.848,-0.937 -2.088,-2.447 -3.924,-7.164 -4.392,-12.743 -0.396,-5.652 0.144,-13.896 1.476,-20.305 1.224,-6.552 4.86,-12.527 5.364,-17.928 0.252,-5.436 -0.936,-10.008 -3.42,-14.148 -2.484,-4.283 -9.108,-5.58 -11.268,-10.836 -2.232,-5.436 -1.872,-14.58 -1.98,-20.771 -0.18,-6.3 -0.036,-10.872 0.972,-16.057 0.864,-5.147 4.284,-8.352 4.428,-14.615 -0.072,-6.444 -2.16,-15.912 -3.924,-23.112 -1.872,-7.272 -5.796,-12.312 -6.372,-19.836 -0.504,-7.704 1.404,-17.748 2.952,-24.984 1.332,-7.2 2.988,-12.888 5.4,-17.604 2.34,-4.716 7.092,-7.056 8.82,-10.368 1.548,-3.384 1.224,-4.788 0.972,-9.9 -0.36,-5.364 -2.34,-15.588 -2.448,-21.24 -0.252,-5.688 0.072,-8.676 1.944,-12.276 1.8,-3.708 4.212,-5.508 9.324,-9.432 5.184,-4.104 17.244,-9.144 21.6,-14.148 4.14,-5.04 2.988,-9.54 3.924,-15.588 0.828,-6.192 0.36,-16.164 1.944,-20.736 1.62,-4.608 4.284,-4.176 7.848,-6.624 3.528,-2.592 9.936,-5.796 13.248,-8.496 3.204,-2.808 5.22,-4.824 5.904,-7.992 0.504,-3.312 -2.124,-6.768 -2.484,-11.34 -0.576,-4.608 -1.368,-11.952 0,-16.056 1.404,-4.104 3.348,-5.832 8.352,-8.496 4.968,-2.844 14.04,-5.184 21.096,-7.992 6.912,-2.844 15.84,-4.824 20.124,-9 4.032,-4.32 4.644,-11.088 4.896,-16.272 0.216,-5.328 -1.08,-10.404 -3.456,-15.084 -2.412,-4.752 -5.004,-11.196 -11.268,-13.212 -6.588,-2.124 -17.712,-0.648 -26.964,0.936 -9.252,1.512 -20.52,4.392 -27.972,8.496 -7.56,4.104 -13.572,9.252 -16.668,15.588 -3.168,6.229 -3.78,13.356 -1.98,21.672 v 0 c -12.456,3.204 -21.564,7.092 -27.468,11.808 -5.94,4.752 -6.984,10.476 -7.848,16.056 -0.936,5.436 1.548,11.916 2.448,16.524 0.792,4.464 1.62,7.92 2.484,10.368 v 0 c -7.704,3.636 -14.112,7.452 -19.62,11.304 -5.616,3.816 -10.908,7.056 -13.248,11.808 -2.34,4.788 -1.44,11.268 -0.504,16.524 0.936,5.184 2.772,9.72 5.904,14.148 v 0 c -11.412,1.764 -21.492,4.968 -30.924,9.9 -9.468,4.824 -19.044,10.908 -24.984,19.368 -5.94,8.46 -8.316,20.736 -10.332,31.14 -2.088,10.368 -2.736,20.412 -1.944,30.672 v 0 c -5.4,2.7 -9.072,6.732 -11.304,12.384 -2.34,5.615 -3.636,11.123 -1.944,21.239 1.764,10.116 10.26,29.736 12.276,39.132 1.8,9.252 -1.08,10.08 -1.008,16.524 0.108,6.336 0.972,14.868 1.476,21.708 0.397,6.731 0.72,12.85 0.972,18.647 z" + style="fill:#dba646;fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path33" /> + <path + inkscape:connector-curvature="0" + d="m 103.647,209.1 c -3.492,0.792 -13.86,5.364 -21.096,10.368 -7.38,4.968 -18.072,12.204 -22.068,19.368 -3.96,7.2 -3.06,16.848 -1.476,23.112 1.512,6.12 6.12,11.124 10.764,13.212 4.644,1.836 15.264,-0.756 16.704,-1.404 1.224,-0.756 -5.76,-1.548 -8.856,-2.376 -3.276,-0.792 -7.236,0.468 -9.792,-2.34 -2.556,-3.06 -4.644,-10.044 -4.896,-15.12 -0.288,-5.148 -0.072,-10.224 3.42,-15.084 3.492,-4.86 10.98,-9.612 17.172,-13.68 5.976,-4.176 15.732,-8.172 19.116,-10.872 3.348,-2.844 4.284,-6.012 1.008,-5.184 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path35" /> + <path + inkscape:connector-curvature="0" + d="m 49.684,190.236 c -2.484,0.648 -7.056,2.412 -9.828,4.716 -2.808,2.052 -6.048,6.624 -6.372,8.028 -0.324,1.332 1.944,1.152 4.428,0 2.376,-1.296 6.984,-5.76 9.792,-7.56 2.7,-1.98 5.94,-2.916 6.372,-3.78 0.287,-0.972 -2.016,-1.944 -4.392,-1.404 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path37" /> + <path + inkscape:connector-curvature="0" + d="m 151.708,483.6 c 1.836,2.448 7.236,7.813 11.772,10.837 4.32,2.951 12.132,6.479 14.688,7.092 2.484,0.504 2.7,-1.584 0.504,-3.78 -2.34,-2.304 -9.324,-6.372 -13.716,-9.432 -4.428,-3.24 -10.044,-8.172 -12.276,-8.964 -2.305,-0.829 -2.773,1.691 -0.972,4.247 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path39" /> + <path + inkscape:connector-curvature="0" + d="m 183.567,501.061 c -1.584,0.071 1.368,4.932 3.456,6.119 2.052,1.009 9.252,1.009 8.82,0 -0.648,-1.188 -10.8,-6.048 -12.276,-6.119 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path41" /> + <path + inkscape:connector-curvature="0" + d="m 168.375,89.256 c -3.744,1.692 -16.236,10.62 -22.068,15.552 -5.94,4.824 -10.692,9 -12.744,13.212 -2.016,4.032 -1.764,9.756 0.468,11.34 2.124,1.512 10.8,-1.152 12.276,-1.872 1.368,-0.792 -2.16,-2.664 -3.924,-2.844 -1.872,-0.252 -6.156,2.628 -6.876,1.404 -0.828,-1.439 -0.288,-6.156 2.448,-9.432 2.772,-3.312 8.604,-6.768 13.752,-10.368 5.04,-3.744 13.248,-8.496 16.164,-11.34 2.808,-2.988 3.996,-7.236 0.504,-5.652 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path43" /> + <path + inkscape:connector-curvature="0" + d="m 213.987,26.04 c 0.108,1.404 3.852,3.456 5.4,6.588 1.332,3.06 2.772,8.064 2.952,11.808 0.144,3.672 -0.468,7.488 -1.98,9.9 -1.728,2.268 -6.768,2.7 -7.344,3.78 -0.54,0.972 1.836,2.772 3.924,2.34 2.052,-0.612 6.012,-2.52 7.848,-5.184 1.548,-2.808 2.196,-6.552 1.944,-10.836 -0.288,-4.356 -2.124,-11.232 -3.42,-14.652 -1.404,-3.42 -2.88,-5.076 -4.428,-5.652 -1.692,-0.612 -4.896,0.396 -4.896,1.908 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path45" /> + <path + inkscape:connector-curvature="0" + d="m 442.048,116.148 c 3.852,-3.204 6.264,-6.912 7.38,-11.808 1.116,-4.968 0.792,-12.528 -0.972,-16.992 -1.908,-4.5 -4.752,-5.832 -10.332,-9.432 -5.76,-3.672 -17.856,-8.82 -23.508,-12.24 -5.688,-3.384 -6.265,-3.852 -10.332,-8.496 -4.32,-4.896 -8.101,-13.788 -14.688,-20.304 -6.696,-6.588 -17.892,-14.868 -24.552,-18.864 -6.66,-4.032 -10.152,-4.608 -15.192,-5.184 -5.256,-0.576 -10.584,2.304 -15.695,1.404 -5.148,-1.08 -8.856,-5.868 -14.725,-7.56 -6.012,-1.764 -12.6,-2.88 -20.592,-2.808 -8.1,-0.072 -18.576,0.54 -26.964,2.808 -8.425,2.16 -17.064,6.048 -22.573,10.404 -5.436,4.356 -8.82,10.332 -10.296,15.552 -1.656,5.112 -0.036,11.808 0.972,15.084 0.864,3.06 1.476,3.672 4.896,3.78 3.492,0.036 9.468,-3.132 15.696,-3.276 6.048,-0.432 13.717,0.144 20.629,1.872 6.768,1.764 15.407,6.048 20.088,8.964 4.571,2.808 6.048,3.996 7.344,8.028 1.152,4.032 0.18,9.036 0,15.552 -0.396,6.3 -1.8,16.236 -1.44,22.176 0.433,5.796 0.721,10.044 3.925,12.744 3.096,2.484 10.08,1.944 14.688,2.844 4.356,0.9 7.524,-0.432 12.276,2.808 4.896,3.24 13.788,11.232 16.668,16.056 2.735,4.608 -0.612,6.732 -0.468,11.808 -0.145,5.076 -1.152,12.96 0.468,18.396 1.584,5.256 5.436,9.432 9.324,13.212 3.924,3.6 11.195,5.292 13.752,8.964 2.304,3.636 0.611,7.236 0.468,12.744 -0.288,5.508 -2.448,14.148 -1.477,19.8 0.973,5.58 4.213,10.08 7.381,13.212 3.132,2.952 7.02,4.428 11.268,4.716 4.068,0.144 8.532,-1.224 13.248,-3.276 4.68,-2.196 9.54,-6.984 14.724,-8.964 5.221,-1.98 11.952,-3.528 16.164,-2.844 3.996,0.648 6.588,3.168 8.353,6.588 1.764,3.312 2.952,9.9 2.447,13.248 -0.611,3.276 -4.787,6.012 -5.867,6.12 -1.152,-0.108 -1.297,-3.492 -1.009,-6.12 0.145,-2.7 2.557,-6.696 1.98,-9.468 -0.756,-2.844 -3.096,-6.3 -5.904,-7.056 -2.952,-0.792 -7.235,0.684 -10.764,2.34 -3.456,1.548 -6.732,3.96 -9.828,7.092 v 0 c 3.456,3.672 6.12,8.028 7.848,13.212 1.729,5.04 2.736,10.116 2.448,17.46 -0.576,7.344 -3.132,19.439 -4.896,26.424 -1.836,6.84 -4.933,10.044 -5.4,14.616 -0.504,4.464 0.864,8.424 2.448,12.275 1.439,3.744 3.563,7.2 6.372,10.368 v 0 c -4.788,4.716 -7.849,9.468 -9.324,14.652 -1.584,5.112 -0.216,10.404 0.504,16.02 0.756,5.652 1.368,11.017 3.924,17.46 2.484,6.408 7.561,13.032 10.8,20.305 3.204,7.164 6.192,15.155 7.849,22.176 1.368,6.912 2.52,13.428 0.972,18.864 -1.728,5.256 -8.82,11.771 -10.296,12.743 -1.476,0.864 0.792,-4.571 1.944,-7.56 1.188,-3.132 4.5,-5.724 4.932,-10.836 0.288,-5.184 -0.792,-13.608 -2.952,-19.836 -2.268,-6.264 -5.651,-11.988 -10.296,-17.46 v 0 c -4.428,10.26 -9.612,19.979 -15.696,29.736 -6.084,9.684 -12.815,19.584 -20.592,28.188 -7.992,8.46 -16.776,15.552 -26.496,22.645 -9.899,7.128 -24.372,13.859 -31.896,19.367 -7.416,5.292 -10.188,7.885 -12.744,12.24 -2.88,4.284 -4.896,9.288 -3.42,13.212 1.512,3.888 3.996,7.992 12.744,9.937 8.676,1.764 24.947,2.592 39.239,0.936 14.257,-1.8 32.652,-9.324 45.612,-11.34 12.744,-2.052 18.36,-2.088 30.888,-0.937 12.528,1.152 32.076,5.761 43.668,7.561 11.448,1.692 18.145,3.312 24.517,2.34 6.336,-1.116 10.404,-3.456 12.744,-8.964 1.979,-5.724 1.332,-15.84 0,-24.516 -1.513,-8.82 -4.824,-19.188 -7.849,-27.36 -3.023,-8.172 -6.155,-15.156 -9.792,-21.24 v 0 c 6.265,-12.815 9.721,-23.58 10.801,-32.58 0.863,-9.071 -3.24,-13.176 -4.933,-21.204 -1.692,-8.063 -5.399,-16.884 -4.896,-26.892 0.432,-10.224 3.168,-24.264 7.38,-33.516 4.067,-9.324 13.896,-14.616 17.136,-21.708 3.168,-7.2 5.4,-12.133 1.98,-20.772 -3.673,-8.748 -16.272,-22.932 -23.076,-30.888 -6.805,-8.028 -12.637,-13.356 -17.641,-16.524 v 0 c 2.16,-9.72 3.024,-19.764 2.448,-30.672 -0.612,-11.088 -1.08,-22.716 -5.868,-34.452 -4.896,-11.808 -15.084,-24.156 -23.076,-35.388 -8.1,-11.34 -16.308,-21.636 -25.02,-31.716 z" + style="fill:#dba646;fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path47" /> + <path + inkscape:connector-curvature="0" + d="m 362.128,159.204 c -0.288,1.98 0.107,7.884 1.476,11.304 1.296,3.24 3.42,6.12 6.372,8.496 2.916,2.304 9.721,5.724 11.269,5.688 1.439,-0.252 -0.252,-3.924 -2.448,-6.156 -2.232,-2.196 -8.568,-3.852 -10.8,-7.056 -2.305,-3.42 -2.088,-10.728 -2.952,-12.744 -1.009,-2.016 -2.774,-1.584 -2.917,0.468 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path49" /> + <path + inkscape:connector-curvature="0" + d="m 383.691,189.876 c -0.359,1.116 0.145,3.636 0.973,4.248 0.647,0.468 3.096,0.108 3.456,-0.936 0.359,-1.224 -0.828,-5.112 -1.477,-5.688 -0.791,-0.576 -2.699,1.188 -2.952,2.376 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path51" /> + <path + inkscape:connector-curvature="0" + d="m 246.352,42.672 c 2.268,-1.224 6.3,-2.7 10.296,-3.312 3.924,-0.648 9.108,-1.26 12.78,-0.468 3.565,0.756 8.281,3.816 8.317,4.716 -0.145,0.792 -5.725,-0.036 -8.821,0 -3.132,-0.18 -6.408,-0.937 -9.828,-0.468 -3.6,0.468 -8.064,2.664 -10.764,3.276 -2.736,0.468 -4.608,0.612 -4.932,0 -0.397,-0.684 0.719,-2.628 2.952,-3.744 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path53" /> + <path + inkscape:connector-curvature="0" + d="m 281.848,45.408 c 0.792,0.792 3.313,1.692 4.248,1.44 0.756,-0.36 1.836,-2.484 1.008,-3.312 -0.863,-0.936 -4.968,-2.088 -5.796,-1.8 -0.865,0.324 -0.36,2.7 0.54,3.672 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path55" /> + <path + inkscape:connector-curvature="0" + d="m 438.124,293.916 c 0.72,3.313 5.147,8.676 5.904,15.552 0.504,6.876 -0.108,18 -1.98,25.021 -1.872,6.84 -8.424,13.716 -8.82,16.056 -0.504,2.16 3.889,1.368 6.372,-2.376 2.448,-3.852 6.948,-12.527 8.353,-19.8 1.332,-7.308 0.792,-17.172 -0.504,-23.616 -1.513,-6.552 -6.265,-13.248 -7.849,-15.084 -1.656,-1.801 -2.196,0.863 -1.476,4.247 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path57" /> + <path + inkscape:connector-curvature="0" + d="m 431.536,283.872 c 0.18,1.116 1.872,3.168 2.844,3.384 0.864,0.145 2.808,-1.224 2.628,-2.304 -0.288,-1.224 -3.024,-4.284 -3.924,-4.464 -1.08,-0.179 -1.692,2.197 -1.548,3.384 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path59" /> + <path + inkscape:connector-curvature="0" + d="m 428.332,354.432 c -1.08,0.685 -1.98,3.097 -1.729,4.032 0.288,0.864 2.341,1.765 3.385,1.152 0.972,-0.828 2.304,-4.645 2.195,-5.472 -0.324,-0.828 -2.952,-0.54 -3.851,0.288 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path61" /> + <path + inkscape:connector-curvature="0" + d="m 329.26,514.74 c 4.248,-1.116 18.864,-8.784 23.04,-11.34 4.032,-2.628 2.952,-4.141 1.476,-4.248 -1.691,-0.145 -6.264,1.476 -10.8,3.312 -4.536,1.765 -13.859,4.968 -16.164,7.092 -2.448,2.089 -1.728,6.084 2.448,5.184 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path63" /> + <path + inkscape:connector-curvature="0" + d="m 134.859,311.592 c 2.52,-0.972 11.016,-7.02 14.94,-10.8 3.996,-3.852 8.856,-11.34 8.316,-11.628 -0.9,-0.324 -8.892,7.164 -12.888,9.972 -4.068,2.772 -9.108,4.465 -10.8,6.624 -1.836,2.124 -2.159,6.516 0.432,5.832 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path65" /> + <path + inkscape:connector-curvature="0" + d="m 369.04,298.272 c 1.512,2.556 7.056,8.567 9.972,10.8 2.736,2.052 6.517,2.7 6.624,1.656 -0.036,-1.225 -3.636,-5.473 -6.228,-8.28 -2.7,-2.916 -7.416,-7.632 -9.145,-8.316 -1.835,-0.648 -2.663,1.513 -1.223,4.14 z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.036;stroke-miterlimit:10" + id="path67" /> + </g> + <text + id="text10469-3" + y="744.56256" + x="10.41564" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + xml:space="preserve"><tspan + style="fill:#ff0000" + y="744.56256" + x="10.41564" + id="tspan10467-5" + sodipodi:role="line">Name: Eve</tspan><tspan + style="fill:#008000" + id="tspan10471-6" + y="784.56256" + x="10.41564" + sodipodi:role="line">Sex: female</tspan><tspan + style="fill:#800080" + id="tspan12726" + y="824.56256" + x="10.41564" + sodipodi:role="line">Birth: 1986/12/03</tspan><tspan + id="tspan12724" + y="864.56256" + x="10.41564" + sodipodi:role="line" /><tspan + id="tspan12722" + y="904.56256" + x="10.41564" + sodipodi:role="line" /></text> + </g> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + x="14.331506" + y="577.55164" + id="text11563"><tspan + sodipodi:role="line" + id="tspan11561" + x="14.331506" + y="577.55164">Objects / Instances</tspan></text> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + x="590.38287" + y="577.48779" + id="text11567"><tspan + sodipodi:role="line" + id="tspan11565" + x="590.38287" + y="577.48779">Class</tspan><tspan + sodipodi:role="line" + x="590.38287" + y="617.48779" + id="tspan11569">(Abstraction /</tspan><tspan + sodipodi:role="line" + x="590.38287" + y="657.48779" + id="tspan13570">model)</tspan></text> + <path + style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#Arrow1Lend)" + d="m 320,762.51971 290,30" + id="path12379" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#Arrow1Lend-6)" + d="m 320,982.51971 290,-70" + id="path12379-6" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cc" /> + <g + id="g13497" + transform="translate(860,79.999997)"> + <text + id="text10501" + y="672.51971" + x="-210" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + xml:space="preserve"><tspan + y="672.51971" + x="-210" + id="tspan10499" + sodipodi:role="line" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'">Person</tspan><tspan + id="tspan10503" + y="712.51971" + x="-210" + sodipodi:role="line" + style="fill:#ff0000">name</tspan><tspan + id="tspan10505" + y="752.51971" + x="-210" + sodipodi:role="line" + style="fill:#008000">sex</tspan><tspan + id="tspan10507" + y="792.51971" + x="-210" + sodipodi:role="line" + style="fill:#800080">birth</tspan></text> + <rect + y="642.51971" + x="-220" + height="250" + width="140" + id="rect11548" + style="fill:none;stroke:#000000;stroke-width:3.63803434;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + ry="14.705871" /> + <path + inkscape:connector-curvature="0" + id="path11550" + d="M -220,682.51971 H -80" + style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> + <text + id="text10501-9" + y="839.52521" + x="-212.8669" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + xml:space="preserve"><tspan + id="tspan10507-5" + y="839.52521" + x="-212.8669" + sodipodi:role="line">walk()</tspan><tspan + id="tspan13467" + y="879.52521" + x="-212.8669" + sodipodi:role="line">speak()</tspan></text> + <path + inkscape:connector-curvature="0" + id="path11550-2" + d="M -220,802.51971 H -80" + style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> + </g> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + x="102.92921" + y="905.83179" + id="text13505"><tspan + sodipodi:role="line" + id="tspan13503" + x="102.92921" + y="905.83179">...</tspan></text> + </g> + <script + ns1:version="14.10-05142318" + id="sozi-script">function namespace(b,d,a){var c=b;d.split(".").forEach(function(e){if(typeof c[e]==="undefined"){c[e]={}}c=c[e]});if(a){a(c,b)}return c}namespace(this,"sozi.events",function(b){var a={};b.listen=function(c,d){if(!a.hasOwnProperty(c)){a[c]=[]}a[c].push(d)};b.fire=function(d){var c=Array.prototype.slice.call(arguments,1);if(a.hasOwnProperty(d)){a[d].forEach(function(e){e.apply(null,c)})}}});namespace(this,"sozi.proto",function(a){a.Object={installConstructors:function(){function b(){}b.prototype=this;this.instance=function(){var c=new b();c.construct.apply(c,arguments);return c};this.subtype=function(d){var c=new b();c.augment(d);c.installConstructors();return c}},construct:function(){},augment:function(c){for(var b in c){if(c.hasOwnProperty(b)){this[b]=c[b]}}return this},bind:function(c){var b=this;return function(){return c.apply(b,arguments)}}};a.Object.installConstructors()});namespace(this,"sozi.actions",function(A,g){var u=namespace(g,"sozi.player");var v=namespace(g,"sozi.display");var n=g.document;var o=0;var w=1;var t=1.05;var y=5;var m=5;var r=false;var i=0;var h=0;function a(C,B,D){u.stop();v.viewPorts.player.zoom(C>0?t:1/t,B,D)}function x(B){u.stop();v.viewPorts.player.rotate(B>0?y:-y)}function s(){if(sozi.framelist.isVisible()){sozi.framelist.hide();u.restart()}else{u.stop();sozi.framelist.show()}}function d(B){return v.viewPorts.player.contains(B.clientX,B.clientY)}function f(B){if(!d(B)){return}if(B.button===o){n.documentElement.addEventListener("mousemove",q,false);r=false;i=B.clientX;h=B.clientY}else{if(B.button===w){s()}}B.stopPropagation();B.preventDefault()}function q(B){if(!d(B)){return}u.stop();if(!r&&(Math.abs(B.clientX-i)>m||Math.abs(B.clientY-h)>m)){r=true}if(r){sozi.events.fire("sozi.player.cleanup");v.viewPorts.player.drag(B.clientX-i,B.clientY-h);i=B.clientX;h=B.clientY}B.stopPropagation()}function c(B){if(!d(B)){return}if(B.button===o){n.documentElement.removeEventListener("mousemove",q,false)}B.stopPropagation();B.preventDefault()}function p(B){if(!d(B)){return}u.moveToPrevious();B.stopPropagation();B.preventDefault()}function e(B){if(!d(B)){return}if(!r&&B.button!==w){u.moveToNext()}B.stopPropagation();B.preventDefault()}function j(B){if(!d(B)){return}if(!B){B=g.event}var C=0;if(B.wheelDelta){C=B.wheelDelta}else{if(B.detail){C=-B.detail}}if(C!==0){if(B.shiftKey){x(C)}else{a(C,B.clientX,B.clientY)}}B.stopPropagation();B.preventDefault()}function l(B){if(B.altKey||B.ctrlKey||B.metaKey){return}switch(B.charCode||B.which){case 43:a(1,g.innerWidth/2,g.innerHeight/2);break;case 45:a(-1,g.innerWidth/2,g.innerHeight/2);break;case 61:u.moveToCurrent();break;case 70:case 102:u.showAll();break;case 84:case 116:s();break;case 82:x(-1);break;case 114:x(1);break;default:return}B.stopPropagation();B.preventDefault()}function b(B){if(B.altKey||B.ctrlKey||B.metaKey){return}switch(B.keyCode){case 36:if(B.shiftKey){u.jumpToFirst()}else{u.moveToFirst()}break;case 35:if(B.shiftKey){u.jumpToLast()}else{u.moveToLast()}break;case 38:case 33:case 37:if(B.shiftKey){u.jumpToPrevious()}else{u.moveToPrevious()}break;case 40:case 34:case 39:case 13:case 32:if(B.shiftKey){u.jumpToNext()}else{u.moveToNext()}break;default:return}B.stopPropagation();B.preventDefault()}function z(B){B.stopPropagation()}function k(){var C=n.getElementsByTagName("a");for(var D=0;D<C.length;D+=1){C[D].addEventListener("click",z,false);C[D].addEventListener("contextmenu",z,false)}var B=n.documentElement;B.addEventListener("click",e,false);B.addEventListener("mousedown",f,false);B.addEventListener("mouseup",c,false);B.addEventListener("contextmenu",p,false);B.addEventListener("DOMMouseScroll",j,false);g.onmousewheel=j;B.addEventListener("keypress",l,false);B.addEventListener("keydown",b,false)}sozi.events.listen("sozi.display.ready",k)});namespace(this,"sozi.animation",function(d,g){var h=g.mozRequestAnimationFrame||g.webkitRequestAnimationFrame||g.msRequestAnimationFrame||g.oRequestAnimationFrame;var k=function(){return g.performance&&g.performance.now?g.performance.now():Date.now()};d.setAnimationFrameHandlers=function(l,m){h=l;k=m};var i=40;var c;var j=[];function e(){if(j.length>0){if(h){h(e)}j.forEach(function(l){l.step(k())})}else{if(!h){g.clearInterval(c)}}}function b(){if(h){h(e)}else{c=g.setInterval(function(){e(k())},i)}}function a(l){j.push(l);if(j.length===1){b()}}function f(l){j.splice(j.indexOf(l),1)}d.Animator=sozi.proto.Object.subtype({construct:function(){this.durationMs=0;this.data=null;this.initialTime=0;this.started=false},start:function(l,m){this.durationMs=l;this.data=m;this.initialTime=k();this.onStep(0);if(!this.started){this.started=true;a(this)}},stop:function(){if(this.started){f(this);this.started=false}},step:function(m){var l=m-this.initialTime;if(l>=this.durationMs){this.stop();this.onStep(1);this.onDone()}else{this.onStep(l/this.durationMs)}},onStep:function(l){},onDone:function(){}});d.profiles={linear:function(l){return l},accelerate:function(l){return Math.pow(l,3)},"strong-accelerate":function(l){return Math.pow(l,5)},decelerate:function(l){return 1-Math.pow(1-l,3)},"strong-decelerate":function(l){return 1-Math.pow(1-l,5)},"accelerate-decelerate":function(l){var m=l<=0.5?l:1-l,n=Math.pow(2*m,3)/2;return l<=0.5?n:1-n},"strong-accelerate-decelerate":function(l){var m=l<=0.5?l:1-l,n=Math.pow(2*m,5)/2;return l<=0.5?n:1-n},"decelerate-accelerate":function(l){var m=l<=0.5?l:1-l,n=(1-Math.pow(1-2*m,2))/2;return l<=0.5?n:1-n},"strong-decelerate-accelerate":function(l){var m=l<=0.5?l:1-l,n=(1-Math.pow(1-2*m,3))/2;return l<=0.5?n:1-n},"immediate-beginning":function(l){return 1},"immediate-end":function(l){return l===1?1:0},"immediate-middle":function(l){return l>=0.5?1:0}}});namespace(this,"sozi.display",function(c,g){var f="http://www.w3.org/2000/svg";var b="http://www.w3.org/1999/xlink";var i=g.document;var k;var h;var j;c.viewPorts={};var e;c.CameraState=sozi.proto.Object.subtype({construct:function(){this.cx=this.cy=0;this.width=this.height=1;this.angle=0;this.clipped=true;this.transitionZoomPercent=0;this.transitionProfile=sozi.animation.profiles.linear;this.transitionPath=null},setCenter:function(l,m){this.cx=l;this.cy=m;return this},setSize:function(m,l){this.width=m;this.height=l;return this},setClipped:function(l){this.clipped=l;return this},setAngle:function(l){this.angle=(l+180)%360-180;return this},setRawAngle:function(l){this.angle=l;return this},setTransitionZoomPercent:function(l){this.transitionZoomPercent=l;return this},setTransitionProfile:function(l){this.transitionProfile=l;return this},setTransitionPath:function(l){this.transitionPath=l;return this},setAtElement:function(p){var s,o,t,m;if(p.nodeName==="rect"){s=p.x.baseVal.value;o=p.y.baseVal.value;t=p.width.baseVal.value;m=p.height.baseVal.value}else{var q=p.getBBox();s=q.x;o=q.y;t=q.width;m=q.height}var n=i.documentElement.createSVGPoint();n.x=s+t/2;n.y=o+m/2;var r=p.getCTM();n=n.matrixTransform(r);var l=Math.sqrt(r.a*r.a+r.b*r.b);return this.setCenter(n.x,n.y).setSize(t*l,m*l).setAngle(Math.atan2(r.b,r.a)*180/Math.PI)},setAtState:function(l){return this.setCenter(l.cx,l.cy).setSize(l.width,l.height).setAngle(l.angle).setClipped(l.clipped).setTransitionZoomPercent(l.transitionZoomPercent).setTransitionProfile(l.transitionProfile).setTransitionPath(l.transitionPath)},interpolatableAttributes:["width","height","angle"],interpolate:function(n,o,t,v,r){var p=1-t;for(var q=0;q<this.interpolatableAttributes.length;q+=1){var s=this.interpolatableAttributes[q];this[s]=o[s]*t+n[s]*p}var l=r?n.transitionPath:o.transitionPath;if(v&&l){var x=l.getTotalLength();if(r){var m=l.getPointAtLength(x);var u=l.getPointAtLength(0);var w=l.getPointAtLength(x*p)}else{var m=l.getPointAtLength(0);var u=l.getPointAtLength(x);var w=l.getPointAtLength(x*t)}this.cx=w.x+(o.cx-u.x)*t+(n.cx-m.x)*p;this.cy=w.y+(o.cy-u.y)*t+(n.cy-m.y)*p}else{this.cx=o.cx*t+n.cx*p;this.cy=o.cy*t+n.cy*p}}});c.Camera=c.CameraState.subtype({construct:function(n,o){c.CameraState.construct.call(this);this.viewPort=n;this.svgClipRect=i.createElementNS(f,"rect");var m=i.createElementNS(f,"clipPath");m.setAttribute("id","sozi-clip-path-"+n.id+"-"+o);m.appendChild(this.svgClipRect);n.svgGroup.appendChild(m);var l=i.createElementNS(f,"g");l.setAttribute("clip-path","url(#sozi-clip-path-"+n.id+"-"+o+")");n.svgGroup.appendChild(l);if(n.isPrimary){this.svgLayer=i.createElementNS(f,"g");this.svgLayer.appendChild(i.getElementById(o))}else{this.svgLayer=i.createElementNS(f,"use");this.svgLayer.setAttributeNS(b,"href","#"+o)}l.appendChild(this.svgLayer)},setAtState:function(l){return c.CameraState.setAtState.call(this,l).update()},getScale:function(){return Math.min(this.viewPort.width/this.width,this.viewPort.height/this.height)},rotate:function(l){return this.setAngle(this.angle+l).update()},zoom:function(m,l,n){return this.setSize(this.width/m,this.height/m).drag((1-m)*(l-this.viewPort.width/2),(1-m)*(n-this.viewPort.height/2))},drag:function(m,l){var q=this.getScale();var o=this.angle*Math.PI/180;var n=Math.sin(o);var p=Math.cos(o);return this.setCenter(this.cx-(m*p-l*n)/q,this.cy-(m*n+l*p)/q).setClipped(false).update()},update:function(){var q=this.getScale();var n=this.width*q;var m=this.height*q;var l=(this.viewPort.width-n)/2;var r=(this.viewPort.height-m)/2;this.svgClipRect.setAttribute("x",this.clipped?l:0);this.svgClipRect.setAttribute("y",this.clipped?r:0);this.svgClipRect.setAttribute("width",this.clipped?n:this.viewPort.width);this.svgClipRect.setAttribute("height",this.clipped?m:this.viewPort.height);var p=-this.cx+this.width/2+l/q;var o=-this.cy+this.height/2+r/q;this.svgLayer.setAttribute("transform","scale("+q+")translate("+p+","+o+")rotate("+(-this.angle)+","+this.cx+","+this.cy+")");return this}});c.ViewPort=sozi.proto.Object.subtype({construct:function(n,m,l){this.id=n;c.viewPorts[n]=this;this.isPrimary=!!l;if(this.isPrimary){if(e){throw"Failed to create a primary viewport. A primary viewport already exists."}else{e=this}}this.svgGroup=i.createElementNS(f,"g");this.svgGroup.setAttribute("class","sozi-viewport");this.svgGroup.setAttribute("id","sozi-viewport-"+n);i.documentElement.appendChild(this.svgGroup);this.setLocation(0,0).setSize(g.innerWidth,g.innerHeight);this.cameras={};m.forEach(function(o){this.cameras[o]=c.Camera.instance(this,o)},this)},setSize:function(m,l){this.width=m;this.height=l;return this},setLocation:function(l,m){this.x=l;this.y=m;return this},contains:function(l,m){return l>=this.x&&l<this.x+this.width&&m>=this.y&&m<this.y+this.height},getDocumentState:function(){var m=c.CameraState.instance().setCenter(k.x+k.width/2,k.y+k.height/2).setSize(k.width,k.height).setClipped(false);var l={};for(var n in this.cameras){l[n]=m}return l},update:function(){this.svgGroup.setAttribute("transform","translate("+this.x+","+this.y+")");for(var l in this.cameras){this.cameras[l].update()}return this},showFrame:function(l){for(var m in l.states){this.cameras[m].setAtState(l.states[m])}return this},drag:function(m,l){for(var n in this.cameras){this.cameras[n].drag(m,l)}return this},zoom:function(m,l,o){for(var n in this.cameras){this.cameras[n].zoom(m,l,o)}return this},rotate:function(l){for(var m in this.cameras){this.cameras[m].rotate(l)}return this},onWindowResize:function(m,l){this.setLocation(this.x*m,this.y*l).setSize(this.width*m,this.height*l).update()}});function d(){var l=i.documentElement;k=l.getBBox();h=g.innerWidth;j=g.innerHeight;l.setAttribute("width",h);l.setAttribute("height",j);sozi.events.fire("sozi.display.ready")}function a(){var l=i.documentElement;l.setAttribute("width",g.innerWidth);l.setAttribute("height",g.innerHeight);for(var m in c.viewPorts){c.viewPorts[m].onWindowResize(g.innerWidth/h,g.innerHeight/j)}h=g.innerWidth;j=g.innerHeight}sozi.events.listen("sozi.document.ready",d);g.addEventListener("resize",a,false)});namespace(this,"sozi.document",function(c,e){var g=e.document;var b="http://sozi.baierouge.fr";var d={title:"Untitled",sequence:"0",hide:"true",clip:"true","show-in-frame-list":"true","timeout-enable":"false","timeout-ms":"5000","transition-duration-ms":"1000","transition-zoom-percent":"0","transition-profile":"linear","transition-path-hide":"true"};var h=["g","image","path","rect","circle","ellipse","line","polyline","polygon","text","clippath"];c.frames=[];c.idLayerList=[];function j(l,k){return l.getAttributeNS(b,k)||d[k]}function i(o,p,k){var l=o.states[p]=o.states[p]||sozi.display.CameraState.instance();if(typeof l.transitionZoomPercent==="undefined"||k.hasAttributeNS(b,"transition-zoom-percent")){l.setTransitionZoomPercent(parseInt(j(k,"transition-zoom-percent"),10))}if(typeof l.transitionProfile==="undefined"||k.hasAttributeNS(b,"transition-profile")){l.setTransitionProfile(sozi.animation.profiles[j(k,"transition-profile")])}if(typeof l.transitionPath==="undefined"||k.hasAttributeNS(b,"transition-path")){var n=g.getElementById(k.getAttributeNS(b,"transition-path"));if(n&&n.nodeName==="path"){l.setTransitionPath(n);if(j(k,"transition-path-hide")==="true"){n.style.visibility="hidden"}}}if(k.hasAttributeNS(b,"refid")){var m=g.getElementById(k.getAttributeNS(b,"refid"));if(m){l.setAtElement(m);if(j(k,"hide")==="true"){m.style.visibility="hidden"}}}if(k.hasAttributeNS(b,"clip")){l.setClipped(j(k,"clip")==="true")}}function a(){var l=[];var p=g.getElementsByTagNameNS(b,"layer");for(var n=0;n<p.length;n+=1){var s=p[n].getAttributeNS(b,"group");if(s&&l.indexOf(s)===-1){l.push(s)}}var r=g.documentElement;var o="http://www.w3.org/2000/svg";var q=g.createElementNS(o,"g");var k=Array.prototype.slice.call(r.childNodes);k.forEach(function(u,t){if(!u.getAttribute){r.removeChild(u)}else{if(l.indexOf(u.getAttribute("id"))!==-1){if(q.firstChild){q.setAttribute("id","sozi-wrapper-"+t);c.idLayerList.push("sozi-wrapper-"+t);r.insertBefore(q,u);q=g.createElementNS(o,"g")}c.idLayerList.push(u.getAttribute("id"))}else{if(h.indexOf(u.localName.toLowerCase())!==-1){r.removeChild(u);q.appendChild(u)}}}});if(q.firstChild){q.setAttribute("id","sozi-wrapper-"+k.length);c.idLayerList.push("sozi-wrapper-"+k.length);r.appendChild(q)}var m=Array.prototype.slice.call(g.getElementsByTagNameNS(b,"frame"));m.sort(function(u,t){var w=parseInt(j(u,"sequence"),10);var v=parseInt(j(t,"sequence"),10);return w-v});m.forEach(function(v,u){var x={id:v.getAttribute("id"),title:j(v,"title"),showInFrameList:j(v,"show-in-frame-list")==="true",sequence:parseInt(j(v,"sequence"),10),timeoutEnable:j(v,"timeout-enable")==="true",timeoutMs:parseInt(j(v,"timeout-ms"),10),transitionDurationMs:parseInt(j(v,"transition-duration-ms"),10),states:{}};c.idLayerList.forEach(function(A){if(u===0||A.search("sozi-wrapper-[0-9]+")!==-1){i(x,A,v)}else{var z=x.states[A]=sozi.display.CameraState.instance();var y=c.frames[c.frames.length-1].states[A];z.setAtState(y)}});var t=Array.prototype.slice.call(v.getElementsByTagNameNS(b,"layer"));t.forEach(function(y){var z=y.getAttributeNS(b,"group");if(z&&c.idLayerList.indexOf(z)!==-1){i(x,z,y)}});for(var w in x.states){if(x.states.hasOwnProperty(w)){c.frames.push(x);break}}})}c.getFrameIndexForId=function(l){for(var k=0;k<c.frames.length;k+=1){if(c.frames[k].id===l){return k}}return -1};function f(){g.documentElement.removeAttribute("viewBox");a();sozi.events.fire("sozi.document.ready")}e.addEventListener("load",f,false)});namespace(this,"sozi.framelist",function(u,k){var o=k.document;var c=5;var i;var p;var j=0;var h;var s;var b;var v;var w;var t;var e=300;var f="decelerate";var a="http://www.w3.org/2000/svg";function n(z){var x=z.relatedTarget,y=o.documentElement;while(x&&x!==i&&x!==y){x=x.parentNode}if(x!==i){u.hide();sozi.player.restart();z.stopPropagation()}}function r(y){var x=p.getCTM().f;if(x<=-k.innerHeight/2){x+=k.innerHeight/2}else{if(x<0){x=0}}p.setAttribute("transform","translate(0,"+x+")");y.stopPropagation()}function d(y){var x=p.getCTM().f;if(x+j>=k.innerHeight*3/2){x-=k.innerHeight/2}else{if(x+j>k.innerHeight+2*c){x=k.innerHeight-j-4*c}}p.setAttribute("transform","translate(0,"+x+")");y.stopPropagation()}function g(x){return function(y){sozi.player.previewFrame(x);y.stopPropagation()}}function l(x){x.stopPropagation()}function q(){i=o.createElementNS(a,"g");i.setAttribute("id","sozi-toc");o.documentElement.appendChild(i);p=o.createElementNS(a,"g");i.appendChild(p);var y=o.createElementNS(a,"rect");y.setAttribute("id","sozi-toc-background");y.setAttribute("x",c);y.setAttribute("y",c);y.setAttribute("rx",c);y.setAttribute("ry",c);y.addEventListener("click",l,false);y.addEventListener("mousedown",l,false);y.addEventListener("mouseout",n,false);p.appendChild(y);var A=0;sozi.document.frames.forEach(function(D,E){if(D.showInFrameList){var C=o.createElementNS(a,"text");C.appendChild(o.createTextNode(D.title));C.setAttribute("id","sozi-toc-"+D.id);p.appendChild(C);if(E===sozi.player.currentFrameIndex){C.setAttribute("class","sozi-toc-current")}var B=C.getBBox().width;j+=C.getBBox().height;if(B>A){A=B}C.setAttribute("x",2*c);C.setAttribute("y",j+c);C.addEventListener("click",g(E),false);C.addEventListener("mousedown",l,false)}});var x=o.createElementNS(a,"path");x.setAttribute("class","sozi-toc-arrow");x.setAttribute("d","M"+(A+3*c)+","+(5*c)+" l"+(4*c)+",0 l-"+(2*c)+",-"+(3*c)+" z");x.addEventListener("click",r,false);x.addEventListener("mousedown",l,false);i.appendChild(x);var z=o.createElementNS(a,"path");z.setAttribute("class","sozi-toc-arrow");z.setAttribute("d","M"+(A+3*c)+","+(7*c)+" l"+(4*c)+",0 l-"+(2*c)+","+(3*c)+" z");z.addEventListener("click",d,false);z.addEventListener("mousedown",l,false);i.appendChild(z);y.setAttribute("width",A+7*c);y.setAttribute("height",j+2*c);h=-A-9*c;s=0;w=v=h;i.setAttribute("transform","translate("+h+",0)");t=sozi.animation.Animator.instance().augment({onStep:function(B){var D=sozi.animation.profiles[f](B),C=1-D;w=v*D+b*C;i.setAttribute("transform","translate("+w+",0)")}})}function m(x){var y=Array.prototype.slice.call(o.getElementsByClassName("sozi-toc-current"));y.forEach(function(A){A.removeAttribute("class")});var z=sozi.document.frames[x];if(z.showInFrameList){o.getElementById("sozi-toc-"+z.id).setAttribute("class","sozi-toc-current")}}u.show=function(){o.documentElement.appendChild(i);b=w;v=s;t.start(e)};u.hide=function(){b=w;v=h;t.start(e)};u.isVisible=function(){return v===s};sozi.events.listen("sozi.player.ready",q);sozi.events.listen("sozi.player.cleanup",u.hide);sozi.events.listen("sozi.player.framechange",m)});namespace(this,"sozi.framenumber",function(a,d){var g=d.document;var e;var k,i;var f;var b="http://www.w3.org/2000/svg";function h(){var m=k.getBBox(),n=Math.max(m.width,m.height)*0.75,l=n*1.25;f.setAttribute("r",n);e.setAttribute("transform","translate("+l+","+l+")")}function c(){e=g.createElementNS(b,"g");k=g.createElementNS(b,"text");f=g.createElementNS(b,"circle");e.setAttribute("id","sozi-framenumber");f.setAttribute("cx",0);f.setAttribute("cy",0);e.appendChild(f);i=g.createTextNode(sozi.player.currentFrameIndex+1);k.setAttribute("text-anchor","middle");k.setAttribute("dominant-baseline","central");k.setAttribute("x",0);k.setAttribute("y",0);k.appendChild(i);e.appendChild(k);g.documentElement.appendChild(e);h()}function j(l){i.nodeValue=l+1}sozi.events.listen("sozi.player.ready",c);sozi.events.listen("sozi.player.framechange",j)});namespace(this,"sozi.links",function(c,e){var b="http://www.w3.org/2000/svg";var a="http://www.w3.org/1999/xlink";function f(g){return function(h){sozi.player.moveToFrame(g);h.preventDefault();h.stopPropagation()}}function d(){var h=e.document.getElementsByTagNameNS(b,"a");for(var j=0;j<h.length;j+=1){var g=h[j].getAttributeNS(a,"href");if(g&&g[0]==="#"){h[j].addEventListener("click",f(sozi.location.getFrameIndexForHash(g)),false)}}}sozi.events.listen("sozi.document.ready",d)});namespace(this,"sozi.location",function(a,d){var b=false;a.getFrameIndex=function(){return a.getFrameIndexForHash(d.location.hash)};a.getFrameIndexForHash=function(g){var h=g?g.slice(1):"1";var f;if(/^[0-9]+$/.test(h)){f=parseInt(h,10)-1}else{f=sozi.document.getFrameIndexForId(h)}if(f<0){return 0}else{if(f>=sozi.document.frames.length){return sozi.document.frames.length-1}else{return f}}};function e(){var f=a.getFrameIndex();if(!b){sozi.player.moveToFrame(f)}b=false}function c(f){b=true;d.location.hash="#"+sozi.document.frames[f].id}d.addEventListener("hashchange",e,false);sozi.events.listen("sozi.player.framechange",c)});namespace(this,"sozi.player",function(d,g){var l;var c;var i;var e=500;var n=-10;var j="linear";var f=0;d.currentFrameIndex=0;var k=false;var m=false;function h(){if(sozi.document.frames[d.currentFrameIndex].timeoutEnable){m=true;var o=(d.currentFrameIndex+1)%sozi.document.frames.length;i=g.setTimeout(function(){d.moveToFrame(o)},sozi.document.frames[d.currentFrameIndex].timeoutMs)}}d.startFromIndex=function(o){k=true;m=false;f=o;d.currentFrameIndex=o;l.showFrame(sozi.document.frames[o]);h()};d.restart=function(){d.startFromIndex(d.currentFrameIndex)};d.stop=function(){c.stop();if(m){g.clearTimeout(i);m=false}k=false;f=d.currentFrameIndex};function b(o,y,w){var z={ss:((o<0)?Math.max(y,w):Math.min(y,w))*(100-o)/100,ts:0.5,k:0};if(o!==0){var s=y-w;var r=y-z.ss;var q=w-z.ss;if(s!==0){var p=Math.sqrt(r*q);var x=(r-p)/s;var t=(r+p)/s;z.ts=(x>0&&x<=1)?x:t}z.k=r/z.ts/z.ts}return z}d.jumpToFrame=function(o){d.stop();sozi.events.fire("sozi.player.cleanup");f=o;d.currentFrameIndex=o;l.showFrame(sozi.document.frames[o]);sozi.events.fire("sozi.player.framechange",o)};d.getAnimationData=function(o,q,s,p,v,t){var r={};for(var w in o){r[w]={initialState:sozi.display.CameraState.instance(),finalState:sozi.display.CameraState.instance(),useTransitionPath:v,reverseTransitionPath:t};r[w].profile=p||q[w].transitionProfile;r[w].initialState.setAtState(o[w]);if(q.hasOwnProperty(w)){r[w].finalState.setAtState(q[w])}else{r[w].finalState.setAtState(o[w])}if(r[w].finalState.angle-r[w].initialState.angle>180){r[w].finalState.setRawAngle(r[w].finalState.angle-360)}else{if(r[w].finalState.angle-r[w].initialState.angle<-180){r[w].initialState.setRawAngle(r[w].initialState.angle-360)}}var u=s||q[w].transitionZoomPercent;if(u&&q.hasOwnProperty(w)){r[w].zoomWidth=b(u,o[w].width,q[w].width);r[w].zoomHeight=b(u,o[w].height,q[w].height)}}return r};d.previewFrame=function(o){d.currentFrameIndex=o;c.start(e,d.getAnimationData(l.cameras,sozi.document.frames[o].states,n,sozi.animation.profiles[j]),false,false);sozi.events.fire("sozi.player.framechange",o)};d.moveToFrame=function(r){if(m){g.clearTimeout(i);m=false}var q,t,s,p,o;if(r===(d.currentFrameIndex-1)%sozi.document.frames.length){q=sozi.document.frames[d.currentFrameIndex].transitionDurationMs;t=undefined;s=undefined;p=true;o=true}else{if(r===(d.currentFrameIndex+1)%sozi.document.frames.length){q=sozi.document.frames[r].transitionDurationMs;t=undefined;s=undefined;p=true;o=false}else{q=e;t=n;s=sozi.animation.profiles[j];p=false;o=false}}sozi.events.fire("sozi.player.cleanup");k=true;d.currentFrameIndex=r;c.start(q,d.getAnimationData(l.cameras,sozi.document.frames[r].states,t,s,p,o));sozi.events.fire("sozi.player.framechange",r)};d.jumpToFirst=function(){d.jumpToFrame(0)};d.moveToFirst=function(){d.moveToFrame(0)};d.jumpToPrevious=function(){var o=d.currentFrameIndex;if(!c.started||f<=d.currentFrameIndex){o-=1}if(o>=0){d.jumpToFrame(o)}};d.moveToPrevious=function(){for(var o=d.currentFrameIndex-1;o>=0;o-=1){var p=sozi.document.frames[o];if(!p.timeoutEnable||p.timeoutMs!==0){d.moveToFrame(o);break}}};d.jumpToNext=function(){var o=d.currentFrameIndex;if(!c.started||f>=d.currentFrameIndex){o+=1}if(o<sozi.document.frames.length){d.jumpToFrame(o)}};d.moveToNext=function(){if(d.currentFrameIndex<sozi.document.frames.length-1||sozi.document.frames[d.currentFrameIndex].timeoutEnable){d.moveToFrame((d.currentFrameIndex+1)%sozi.document.frames.length)}};d.jumpToLast=function(){d.jumpToFrame(sozi.document.frames.length-1)};d.moveToLast=function(){d.moveToFrame(sozi.document.frames.length-1)};d.moveToCurrent=function(){d.moveToFrame(d.currentFrameIndex)};d.showAll=function(){d.stop();sozi.events.fire("sozi.player.cleanup");c.start(e,d.getAnimationData(l.cameras,l.getDocumentState(),n,sozi.animation.profiles[j],false,false))};function a(){l=sozi.display.ViewPort.instance("player",sozi.document.idLayerList,true);d.startFromIndex(sozi.location.getFrameIndex());g.setTimeout(l.bind(l.update),1);sozi.events.fire("sozi.player.ready")}d.onAnimationStep=function(o,q){for(var s in q){var p=l.cameras[s];p.interpolate(q[s].initialState,q[s].finalState,q[s].profile(o),q[s].useTransitionPath,q[s].reverseTransitionPath);var r;if(q[s].zoomWidth&&q[s].zoomWidth.k!==0){r=o-q[s].zoomWidth.ts;p.width=q[s].zoomWidth.k*r*r+q[s].zoomWidth.ss}if(q[s].zoomHeight&&q[s].zoomHeight.k!==0){r=o-q[s].zoomHeight.ts;p.height=q[s].zoomHeight.k*r*r+q[s].zoomHeight.ss}p.setClipped(q[s].finalState.clipped)}l.update()};c=sozi.animation.Animator.instance().augment({onStep:function(o){d.onAnimationStep(o,this.data)},onDone:function(){for(var o in this.data){l.cameras[o].setAtState(this.data[o].finalState)}l.update();f=d.currentFrameIndex;if(k){h()}}});sozi.events.listen("sozi.display.ready",a)});</script> + <style + ns1:version="14.10-05142318" + id="sozi-style">#sozi-toc text{fill:#eff;font-family:Verdana,sans-serif;font-size:12pt}#sozi-toc text:hover{fill:#0cf;cursor:pointer}#sozi-toc text.sozi-toc-current{fill:#fa4}#sozi-toc-background{stroke:#222;stroke-opacity:.1;stroke-width:10;fill:#222;fill-opacity:.9}.sozi-toc-arrow{fill:#eff;fill-opacity:.75;stroke:none}.sozi-toc-arrow:hover{fill:#0cf}#sozi-framenumber circle{stroke:#222;stroke-opacity:.1;stroke-width:4;fill:#222;fill-opacity:.9}#sozi-framenumber text{fill:#eff;font-family:Verdana,sans-serif;font-size:12pt}</style> + <ns1:frame + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="1" + ns1:title="Gcd implementation" + ns1:refid="rect10351" /> + <ns1:frame + ns1:refid="rect10841" + ns1:title="Gcd maven packaging" + ns1:sequence="2" + ns1:hide="true" + ns1:clip="true" + ns1:show-in-frame-list="true" + ns1:timeout-enable="false" + ns1:timeout-ms="5000.0" + ns1:transition-duration-ms="1000.0" + ns1:transition-zoom-percent="0.0" + ns1:transition-profile="linear" + ns1:transition-path-hide="true" /> + <ns1:frame + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="3" + ns1:title="Using Math.getGcd()" + ns1:refid="rect11089" /> + <ns1:frame + ns1:refid="rect11381" + ns1:title="Fraction project" + ns1:sequence="4" + ns1:hide="true" + ns1:clip="true" + ns1:show-in-frame-list="true" + ns1:timeout-enable="false" + ns1:timeout-ms="5000.0" + ns1:transition-duration-ms="1000.0" + ns1:transition-zoom-percent="0.0" + ns1:transition-profile="linear" + ns1:transition-path-hide="true" /> + <ns1:frame + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="5" + ns1:title="Maven dependency definition" + ns1:refid="rect11637" /> + <ns1:frame + ns1:refid="rect11895" + ns1:title="Fraction depends on Gcd" + ns1:sequence="6" + ns1:hide="true" + ns1:clip="true" + ns1:show-in-frame-list="true" + ns1:timeout-enable="false" + ns1:timeout-ms="5000" + ns1:transition-duration-ms="1000" + ns1:transition-zoom-percent="0" + ns1:transition-profile="linear" + ns1:transition-path-hide="true" /> +</svg> diff --git a/Doc/Sd1/Ref/ObjectsAndClasses/position.svg b/Doc/Sd1/Ref/ObjectsAndClasses/position.svg new file mode 100644 index 0000000000000000000000000000000000000000..edba459ffa73a80d8bcba0f7c79feb477089d9f2 --- /dev/null +++ b/Doc/Sd1/Ref/ObjectsAndClasses/position.svg @@ -0,0 +1,157 @@ +<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill-opacity="1" color-rendering="auto" color-interpolation="auto" text-rendering="auto" stroke="black" stroke-linecap="square" width="147" stroke-miterlimit="10" shape-rendering="auto" stroke-opacity="1" fill="black" stroke-dasharray="none" font-weight="normal" stroke-width="1" height="120" font-family="'Dialog'" font-style="normal" stroke-linejoin="miter" font-size="12" stroke-dashoffset="0" image-rendering="auto"> + <!--Generated by ySVG--> + <defs id="genericDefs"/> + <g> + <defs id="defs1"> + <linearGradient x1="0" gradientUnits="userSpaceOnUse" x2="0" y1="0" y2="28" id="linearGradient1" spreadMethod="pad"> + <stop stop-opacity="1" stop-color="rgb(255,255,245)" offset="0%"/> + <stop stop-opacity="1" stop-color="rgb(215,213,172)" offset="100%"/> + </linearGradient> + <linearGradient x1="0" gradientUnits="userSpaceOnUse" x2="0" y1="0" y2="28" id="linearGradient2" spreadMethod="pad"> + <stop stop-opacity="1" stop-color="rgb(255,255,245)" offset="0%"/> + <stop stop-opacity="1" stop-color="rgb(215,213,172)" offset="100%"/> + </linearGradient> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath1"> + <path d="M0 0 L147 0 L147 120 L0 120 L0 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath2"> + <path d="M-20 -20 L127 -20 L127 100 L-20 100 L-20 -20 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath3"> + <path d="M0 0 L0 80 L107 80 L107 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath4"> + <path d="M0 0 L0 78 L105 78 L105 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath5"> + <path d="M0 0 L0 76 L103 76 L103 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath6"> + <path d="M0 0 L0 48 L103 48 L103 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath7"> + <path d="M0 0 L0 24 L103 24 L103 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath8"> + <path d="M0 0 L0 22 L25 22 L25 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath9"> + <path d="M0 0 L0 22 L48 22 L48 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath10"> + <path d="M0 24 L0 48 L103 48 L103 24 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath11"> + <path d="M0 0 L0 22 L47 22 L47 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath12"> + <path d="M0 0 L0 28 L103 28 L103 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath13"> + <path d="M0 0 L0 22 L97 22 L97 0 Z"/> + </clipPath> + </defs> + <g fill="white" transform="translate(20,20)" stroke="white"> + <rect x="-20" width="147" height="120" y="-20" clip-path="url(#clipPath2)" stroke="none"/> + </g> + <g fill="silver" stroke="silver"> + <path d="M12.3594 100.0156 L12.3594 103.0938 L13.8438 103.0938 Q14.6719 103.0938 15.125 102.6953 Q15.5781 102.2969 15.5781 101.5469 Q15.5781 100.8125 15.125 100.4141 Q14.6719 100.0156 13.8438 100.0156 L12.3594 100.0156 ZM11.1719 99 L13.8438 99 Q15.3281 99 16.0781 99.6406 Q16.8281 100.2812 16.8281 101.5469 Q16.8281 102.7969 16.0781 103.4453 Q15.3281 104.0938 13.8438 104.0938 L12.3594 104.0938 L12.3594 108 L11.1719 108 L11.1719 99 ZM20.9082 101.9531 Q20.0488 101.9531 19.541 102.6328 Q19.0332 103.3125 19.0332 104.5 Q19.0332 105.6875 19.5332 106.3672 Q20.0332 107.0469 20.9082 107.0469 Q21.7676 107.0469 22.2754 106.3672 Q22.7832 105.6875 22.7832 104.5 Q22.7832 103.3281 22.2754 102.6406 Q21.7676 101.9531 20.9082 101.9531 ZM20.9082 101 Q22.3145 101 23.1191 101.9297 Q23.9238 102.8594 23.9238 104.5 Q23.9238 106.1406 23.1191 107.0703 Q22.3145 108 20.9082 108 Q19.502 108 18.6973 107.0703 Q17.8926 106.1406 17.8926 104.5 Q17.8926 102.8594 18.6973 101.9297 Q19.502 101 20.9082 101 ZM25.0781 101 L26.1562 101 L27.5156 106.4688 L28.8438 101 L30.125 101 L31.4688 106.4688 L32.8125 101 L33.8906 101 L32.1719 108 L30.9062 108 L29.4844 102.2656 L28.0781 108 L26.7969 108 L25.0781 101 ZM41.1426 104.3594 L41.1426 104.9219 L36.1738 104.9219 Q36.252 105.9688 36.8535 106.5078 Q37.4551 107.0469 38.5176 107.0469 Q39.1426 107.0469 39.7285 106.9062 Q40.3145 106.7656 40.8926 106.4844 L40.8926 107.4688 Q40.2988 107.7188 39.6895 107.8594 Q39.0801 108 38.4551 108 Q36.8926 108 35.9707 107.0703 Q35.0488 106.1406 35.0488 104.5625 Q35.0488 102.9219 35.9238 101.9609 Q36.7988 101 38.2676 101 Q39.5957 101 40.3691 101.9062 Q41.1426 102.8125 41.1426 104.3594 ZM40.0645 104.0781 Q40.0488 103.1094 39.5645 102.5312 Q39.0801 101.9531 38.2832 101.9531 Q37.377 101.9531 36.8379 102.5078 Q36.2988 103.0625 36.2207 104.0781 L40.0645 104.0781 ZM46.7129 102.0625 Q46.5254 101.9531 46.3145 101.8984 Q46.1035 101.8438 45.8379 101.8438 Q44.9316 101.8438 44.4395 102.4766 Q43.9473 103.1094 43.9473 104.2969 L43.9473 108 L42.8691 108 L42.8691 101 L43.9473 101 L43.9473 102.0781 Q44.291 101.5469 44.8379 101.2734 Q45.3848 101 46.166 101 Q46.2754 101 46.4082 100.9766 Q46.541 100.9531 46.6973 100.9062 L46.7129 102.0625 ZM53.459 104.3594 L53.459 104.9219 L48.4902 104.9219 Q48.5684 105.9688 49.1699 106.5078 Q49.7715 107.0469 50.834 107.0469 Q51.459 107.0469 52.0449 106.9062 Q52.6309 106.7656 53.209 106.4844 L53.209 107.4688 Q52.6152 107.7188 52.0059 107.8594 Q51.3965 108 50.7715 108 Q49.209 108 48.2871 107.0703 Q47.3652 106.1406 47.3652 104.5625 Q47.3652 102.9219 48.2402 101.9609 Q49.1152 101 50.584 101 Q51.9121 101 52.6855 101.9062 Q53.459 102.8125 53.459 104.3594 ZM52.3809 104.0781 Q52.3652 103.1094 51.8809 102.5312 Q51.3965 101.9531 50.5996 101.9531 Q49.6934 101.9531 49.1543 102.5078 Q48.6152 103.0625 48.5371 104.0781 L52.3809 104.0781 ZM59.5449 102.2031 L59.5449 98 L60.623 98 L60.623 108 L59.5449 108 L59.5449 106.9688 Q59.2012 107.4844 58.6855 107.7422 Q58.1699 108 57.4355 108 Q56.248 108 55.498 107.0391 Q54.748 106.0781 54.748 104.5 Q54.748 102.9219 55.498 101.9609 Q56.248 101 57.4355 101 Q58.1699 101 58.6855 101.2969 Q59.2012 101.5938 59.5449 102.2031 ZM55.873 104.5938 Q55.873 105.8281 56.3574 106.5312 Q56.8418 107.2344 57.7012 107.2344 Q58.5605 107.2344 59.0527 106.5312 Q59.5449 105.8281 59.5449 104.5938 Q59.5449 103.3438 59.0527 102.6406 Q58.5605 101.9375 57.7012 101.9375 Q56.8418 101.9375 56.3574 102.6406 Q55.873 103.3438 55.873 104.5938 ZM71.3672 104.5 Q71.3672 103.2969 70.875 102.6172 Q70.3828 101.9375 69.5391 101.9375 Q68.6797 101.9375 68.1875 102.6172 Q67.6953 103.2969 67.6953 104.5 Q67.6953 105.7031 68.1875 106.3828 Q68.6797 107.0625 69.5391 107.0625 Q70.3828 107.0625 70.875 106.3828 Q71.3672 105.7031 71.3672 104.5 ZM67.6953 102.1875 Q68.0391 101.5938 68.5547 101.2969 Q69.0703 101 69.7891 101 Q70.9922 101 71.7422 101.9609 Q72.4922 102.9219 72.4922 104.5 Q72.4922 106.0781 71.7422 107.0391 Q70.9922 108 69.7891 108 Q69.0703 108 68.5547 107.7031 Q68.0391 107.4062 67.6953 106.8125 L67.6953 108 L66.6172 108 L66.6172 98 L67.6953 98 L67.6953 102.1875 ZM77 108.9375 Q76.5469 110.2188 76.1094 110.6094 Q75.6719 111 74.9531 111 L74.0938 111 L74.0938 110.0625 L74.7188 110.0625 Q75.1719 110.0625 75.4141 109.8281 Q75.6562 109.5938 75.9531 108.7188 L76.1562 108.1719 L73.5 101 L74.6406 101 L76.6875 106.7031 L78.75 101 L79.8906 101 L77 108.9375 ZM87.916 108.9375 Q87.4629 110.2188 87.0254 110.6094 Q86.5879 111 85.8691 111 L85.0098 111 L85.0098 110.0625 L85.6348 110.0625 Q86.0879 110.0625 86.3301 109.8281 Q86.5723 109.5938 86.8691 108.7188 L87.0723 108.1719 L84.416 101 L85.5566 101 L87.6035 106.7031 L89.666 101 L90.8066 101 L87.916 108.9375 ZM92.3301 99 L97.3613 99 L97.3613 100.0312 L93.5176 100.0312 L93.5176 103.0781 L96.9863 103.0781 L96.9863 104.1094 L93.5176 104.1094 L93.5176 108 L92.3301 108 L92.3301 99 ZM99.1855 101 L100.2637 101 L100.2637 108 L99.1855 108 L99.1855 101 ZM99.1855 98 L100.2637 98 L100.2637 99.4219 L99.1855 99.4219 L99.1855 98 ZM102.5195 98 L103.5977 98 L103.5977 108 L102.5195 108 L102.5195 98 ZM111.4785 104.3594 L111.4785 104.9219 L106.5098 104.9219 Q106.5879 105.9688 107.1895 106.5078 Q107.791 107.0469 108.8535 107.0469 Q109.4785 107.0469 110.0645 106.9062 Q110.6504 106.7656 111.2285 106.4844 L111.2285 107.4688 Q110.6348 107.7188 110.0254 107.8594 Q109.416 108 108.791 108 Q107.2285 108 106.3066 107.0703 Q105.3848 106.1406 105.3848 104.5625 Q105.3848 102.9219 106.2598 101.9609 Q107.1348 101 108.6035 101 Q109.9316 101 110.7051 101.9062 Q111.4785 102.8125 111.4785 104.3594 ZM110.4004 104.0781 Q110.3848 103.1094 109.9004 102.5312 Q109.416 101.9531 108.6191 101.9531 Q107.7129 101.9531 107.1738 102.5078 Q106.6348 103.0625 106.5566 104.0781 L110.4004 104.0781 ZM117.4238 101.3594 L117.4238 102.4062 Q116.9707 102.1719 116.4785 102.0547 Q115.9863 101.9375 115.4551 101.9375 Q114.6582 101.9375 114.252 102.1875 Q113.8457 102.4375 113.8457 102.9375 Q113.8457 103.3125 114.1348 103.5312 Q114.4238 103.75 115.2988 103.9375 L115.6582 104.0312 Q116.8145 104.2812 117.2988 104.7344 Q117.7832 105.1875 117.7832 106 Q117.7832 106.9219 117.0566 107.4609 Q116.3301 108 115.0645 108 Q114.5332 108 113.9629 107.8984 Q113.3926 107.7969 112.7676 107.5781 L112.7676 106.4375 Q113.3613 106.75 113.9395 106.9062 Q114.5176 107.0625 115.0957 107.0625 Q115.8457 107.0625 116.2598 106.7969 Q116.6738 106.5312 116.6738 106.0625 Q116.6738 105.6094 116.377 105.375 Q116.0801 105.1406 115.0801 104.9219 L114.7051 104.8281 Q113.7051 104.6094 113.2598 104.1719 Q112.8145 103.7344 112.8145 102.9531 Q112.8145 102.0156 113.4707 101.5078 Q114.127 101 115.3301 101 Q115.9238 101 116.4551 101.0938 Q116.9863 101.1875 117.4238 101.3594 Z" stroke="none" clip-path="url(#clipPath1)"/> + </g> + <g fill="gray" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20)" stroke="gray"> + <rect x="2" width="105" height="1" y="79" clip-path="url(#clipPath3)" stroke="none"/> + <rect x="106" width="1" height="78" y="2" clip-path="url(#clipPath3)" stroke="none"/> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(1,1)" stroke="rgb(232,232,232)"> + <rect x="0" width="105" height="78" y="0" clip-path="url(#clipPath4)" stroke="none"/> + </g> + <g fill="silver" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(1,1)" stroke="silver"> + <path d="M0 0 L105 0 L105 78 L0 78 L0 0 ZM1 1 L104 1 L104 77 L1 77 L1 1 Z" fill-rule="evenodd" clip-path="url(#clipPath4)" stroke="none"/> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="rgb(232,232,232)"> + <rect x="0" width="103" height="76" y="0" clip-path="url(#clipPath5)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="white"> + <rect x="0" width="103" height="48" y="0" clip-path="url(#clipPath6)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="white"> + <rect x="0" width="103" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(78,31)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,31)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath9)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath9)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath9)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="12" height="22" y="0" clip-path="url(#clipPath9)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath9)" stroke="none">x</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,54)" stroke="white"> + <rect x="0" width="103" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(78,55)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,55)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath11)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath11)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath11)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="11" height="22" y="0" clip-path="url(#clipPath11)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath11)" stroke="none">y</text> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="rgb(232,232,232)"> + <rect x="0" width="103" height="28" y="0" clip-path="url(#clipPath12)" stroke="none"/> + </g> + <g fill="url(#linearGradient1)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="url(#linearGradient1)"> + <rect x="0" width="103" height="28" y="0" clip-path="url(#clipPath12)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(5,5)"> + <image x="2" y="3" clip-path="url(#clipPath13)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABGElEQVR42mNgoBAw ogs4b72r9oeRyRnINECTusDy/9/evd7Kt3Aa4Lj1Ydg/xn/OeG1kZDh+wFNxAYzP DGM4bL+f8J/hvx0RrpZViirierBswlUQhwnm7P//GSyJ9TfIlSA9IDYLiID6GQ7+ f/3M8n7lRMM/L58IgZ3Nxv5HtHjiXmQ1UD23WKB8lAADaf737ROncEr9IWZRye84 HGIA9wI6ANnMaeJ8F49mOGCiNB1gNYBFXObd9zN7lf++fs5JyABYGFxADgfB8Pzz oHB4O6fRDlcgQvVADAClMGCowg1g5Ob9I5RUcxqvzUA98IR0f9mkt6DE8Z/xvxJR /v7PtHeft+IhlJQISlnEGALSvN9bfhXVMhPFAABj9nS+zu6R5QAAAABJRU5ErkJg gg==" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath13)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAjElEQVR42mNgGAWM 6ALJW11q/jP+lwVL/md8PNd7Tws+A1jQBUCamf8z9ILYfxn/FxNyAQs2wdnee2+B 6KRtzgxkGQD3CsN/kCEz4f7F4iUmdI3zvPamx61zFoaFA7r30MWYsNm+KGjvWzjn L8MCRkamVSR7AQ6YGRL+//+HU5oJZ/wC/UuM2ChgYAAAYjIvl7Ex+6kAAAAASUVO RK5CYII=" height="16" preserveAspectRatio="none"/> + <text x="37" xml:space="preserve" y="17" clip-path="url(#clipPath13)" stroke="none">Position</text> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="rgb(232,232,232)"> + <rect x="0" width="103" height="76" y="0" clip-path="url(#clipPath5)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="white"> + <rect x="0" width="103" height="48" y="0" clip-path="url(#clipPath6)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="white"> + <rect x="0" width="103" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(78,31)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,31)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath9)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath9)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath9)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="12" height="22" y="0" clip-path="url(#clipPath9)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath9)" stroke="none">x</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,54)" stroke="white"> + <rect x="0" width="103" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(78,55)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,55)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath11)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath11)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath11)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="11" height="22" y="0" clip-path="url(#clipPath11)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath11)" stroke="none">y</text> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="rgb(232,232,232)"> + <rect x="0" width="103" height="28" y="0" clip-path="url(#clipPath12)" stroke="none"/> + </g> + <g fill="url(#linearGradient2)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="url(#linearGradient2)"> + <rect x="0" width="103" height="28" y="0" clip-path="url(#clipPath12)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(5,5)"> + <image x="2" y="3" clip-path="url(#clipPath13)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABGElEQVR42mNgoBAw ogs4b72r9oeRyRnINECTusDy/9/evd7Kt3Aa4Lj1Ydg/xn/OeG1kZDh+wFNxAYzP DGM4bL+f8J/hvx0RrpZViirierBswlUQhwnm7P//GSyJ9TfIlSA9IDYLiID6GQ7+ f/3M8n7lRMM/L58IgZ3Nxv5HtHjiXmQ1UD23WKB8lAADaf737ROncEr9IWZRye84 HGIA9wI6ANnMaeJ8F49mOGCiNB1gNYBFXObd9zN7lf++fs5JyABYGFxADgfB8Pzz oHB4O6fRDlcgQvVADAClMGCowg1g5Ob9I5RUcxqvzUA98IR0f9mkt6DE8Z/xvxJR /v7PtHeft+IhlJQISlnEGALSvN9bfhXVMhPFAABj9nS+zu6R5QAAAABJRU5ErkJg gg==" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath13)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAjElEQVR42mNgGAWM 6ALJW11q/jP+lwVL/md8PNd7Tws+A1jQBUCamf8z9ILYfxn/FxNyAQs2wdnee2+B 6KRtzgxkGQD3CsN/kCEz4f7F4iUmdI3zvPamx61zFoaFA7r30MWYsNm+KGjvWzjn L8MCRkamVSR7AQ6YGRL+//+HU5oJZ/wC/UuM2ChgYAAAYjIvl7Ex+6kAAAAASUVO RK5CYII=" height="16" preserveAspectRatio="none"/> + <text x="37" xml:space="preserve" y="17" clip-path="url(#clipPath13)" stroke="none">Position</text> + </g> + </g> +</svg> diff --git a/Doc/Sd1/Ref/ObjectsAndClasses/rectangleAttribUml.svg b/Doc/Sd1/Ref/ObjectsAndClasses/rectangleAttribUml.svg new file mode 100644 index 0000000000000000000000000000000000000000..dfb08a952c25a1e9551dcd2dd2b9b9a5ea5968f4 --- /dev/null +++ b/Doc/Sd1/Ref/ObjectsAndClasses/rectangleAttribUml.svg @@ -0,0 +1,1229 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:ns1="http://sozi.baierouge.fr" + 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" + sodipodi:docname="rectangleAttribUml.svg" + inkscape:version="0.92.1 r15371" + version="1.2" + id="svg2" + height="300" + width="410"> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.2077062" + inkscape:cx="335.04197" + inkscape:cy="270.45233" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="true" + inkscape:window-width="1600" + inkscape:window-height="1105" + inkscape:window-x="0" + inkscape:window-y="0" + inkscape:window-maximized="1" + showguides="true" + inkscape:guide-bbox="true"> + <inkscape:grid + type="xygrid" + id="grid1569" /> + <sodipodi:guide + position="0,600" + orientation="1,0" + id="guide13623" + inkscape:locked="false" /> + </sodipodi:namedview> + <defs + id="defs4"> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker11618" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Mend"> + <path + transform="matrix(-0.4,0,0,-0.4,-4,0)" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + id="path11616" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker2318" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path2316" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker4887" + style="overflow:visible" + inkscape:isstock="true"> + <path + id="path4627" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + transform="matrix(-0.8,0,0,-0.8,-10,0)" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker6797" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> + <path + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + id="path6799" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker6793" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> + <path + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + id="path6795" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker6778" + style="overflow:visible" + inkscape:isstock="true"> + <path + id="path6514" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lstart" + style="overflow:visible"> + <path + id="path3841" + d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareM" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareM"> + <path + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path3914" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lend" + style="overflow:visible"> + <path + id="path3844" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondM" + orient="auto" + refY="0" + refX="0" + id="DiamondM" + style="overflow:visible"> + <path + id="path3923" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondMH" + orient="auto" + refY="0" + refX="0" + id="DiamondMH" + style="overflow:visible"> + <path + id="path4656" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendB" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendB" + style="overflow:visible"> + <path + id="path4659" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMU" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMU"> + <path + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path5221" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend3" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lend3" + style="overflow:visible"> + <path + id="path5224" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondMo" + orient="auto" + refY="0" + refX="0" + id="DiamondMo" + style="overflow:visible"> + <path + id="path5799" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendO" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendO" + style="overflow:visible"> + <path + id="path5802" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondM1" + orient="auto" + refY="0" + refX="0" + id="DiamondM1" + style="overflow:visible"> + <path + id="path6393" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendV" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendV" + style="overflow:visible"> + <path + id="path6396" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMN" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMN"> + <path + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path7813" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LstartP" + orient="auto" + refY="0" + refX="0" + id="Arrow1LstartP" + style="overflow:visible"> + <path + id="path7816" + d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMb" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMb"> + <path + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path9491" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendX" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendX" + style="overflow:visible"> + <path + id="path9494" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareM8" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareM8"> + <path + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path10143" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendT" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendT" + style="overflow:visible"> + <path + id="path10146" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMNT" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMNT"> + <path + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path12195" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LstartPJ" + orient="auto" + refY="0" + refX="0" + id="Arrow1LstartPJ" + style="overflow:visible"> + <path + id="path12198" + d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMNTL" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMNTL"> + <path + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path12907" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lendx" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lendx" + style="overflow:visible"> + <path + id="path12910" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondMoY" + orient="auto" + refY="0" + refX="0" + id="DiamondMoY" + style="overflow:visible"> + <path + id="path13187" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendOe" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendOe" + style="overflow:visible"> + <path + id="path13190" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <linearGradient + id="linearGradient3928-8"> + <stop + offset="0" + style="stop-color:#7c7c7c" + id="stop3930-2" /> + <stop + offset="1" + style="stop-color:#e6e3e3" + id="stop3932-0" /> + </linearGradient> + <linearGradient + id="linearGradient8877"> + <stop + style="stop-color:#cecece;stop-opacity:1;" + offset="0" + id="stop8879" /> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="1" + id="stop8881" /> + </linearGradient> + <linearGradient + id="linearGradient8869"> + <stop + id="stop8871" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop8873" + offset="1" + style="stop-color:#000000;stop-opacity:1;" /> + </linearGradient> + <linearGradient + id="linearGradient7421"> + <stop + id="stop7423" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop7425" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient7405"> + <stop + style="stop-color:#9e9e9e;stop-opacity:1;" + offset="0" + id="stop7407" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop7409" /> + </linearGradient> + <linearGradient + id="linearGradient7378"> + <stop + id="stop7380" + offset="0" + style="stop-color:#9e9e9e;stop-opacity:1;" /> + <stop + id="stop7382" + offset="1" + style="stop-color:#ffffff;stop-opacity:1;" /> + </linearGradient> + <inkscape:perspective + id="perspective6864" + inkscape:persp3d-origin="32 : 21.333333 : 1" + inkscape:vp_z="64 : 32 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 32 : 1" + sodipodi:type="inkscape:persp3d" /> + <filter + id="imagebot_16" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_21" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14" + y2="-235.34229" + xlink:href="#linearGradient3928-8" + x2="33.162106" + y1="-192.16943" + x1="32.287571" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_18" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_16-6" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_21-1" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-8" + y2="-235.34229" + xlink:href="#linearGradient3928-8" + x2="33.162106" + y1="-192.16943" + x1="32.287571" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12-7" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_18-9" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-2" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_16-2" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_21-8" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-9" + y2="-235.34229" + xlink:href="#linearGradient3928-8" + x2="33.162106" + y1="-192.16943" + x1="32.287571" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12-73" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_18-6" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-1" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + style="color-interpolation-filters:sRGB" + id="imagebot_16-0"> + <feGaussianBlur + id="imagebot_21-7" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-5" + y2="-235.34229" + xlink:href="#linearGradient3928-8" + x2="33.162106" + y1="-192.16943" + x1="32.287571" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + style="color-interpolation-filters:sRGB" + id="imagebot_12-0" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215"> + <feGaussianBlur + id="imagebot_18-4" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-8" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_16-02" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_21-9" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-4" + y2="0.73097426" + xlink:href="#linearGradient3928-8" + x2="36.048218" + y1="43.90382" + x1="35.173683" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12-3" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_18-5" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-17" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker6793-6" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> + <path + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + id="path6795-8" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="marker17735-0" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path17472-68" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + transform="matrix(0.8,0,0,0.8,10,0)" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker2318-9" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path2316-2" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" /> + </marker> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="marker17735-3" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path17472-1" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + transform="matrix(0.8,0,0,0.8,10,0)" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker2318-4" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path2316-9" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" /> + </marker> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="marker17735-8" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path17472-6" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + transform="matrix(0.8,0,0,0.8,10,0)" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker2318-8" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path2316-8" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" /> + </marker> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="marker17735" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path17472" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + transform="matrix(0.8,0,0,0.8,10,0)" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker2318-3" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path2316-6" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lend-6" + style="overflow:visible"> + <path + id="path3844-5" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <linearGradient + spreadMethod="pad" + id="linearGradient1" + y2="28" + y1="0" + x2="0" + gradientUnits="userSpaceOnUse" + x1="0"> + <stop + id="stop663" + offset="0%" + stop-color="rgb(255,255,245)" + stop-opacity="1" /> + <stop + id="stop665" + offset="100%" + stop-color="rgb(215,213,172)" + stop-opacity="1" /> + </linearGradient> + <clipPath + id="clipPath1" + clipPathUnits="userSpaceOnUse"> + <path + id="path673" + d="M0 0 L300 0 L300 194 L0 194 L0 0 Z" /> + </clipPath> + <clipPath + id="clipPath2" + clipPathUnits="userSpaceOnUse"> + <path + id="path676" + d="M-244 -363 L56 -363 L56 -169 L-244 -169 L-244 -363 Z" /> + </clipPath> + <clipPath + id="clipPath3" + clipPathUnits="userSpaceOnUse"> + <path + id="path679" + d="M-20 -20 L280 -20 L280 174 L-20 174 L-20 -20 Z" /> + </clipPath> + <clipPath + id="clipPath4" + clipPathUnits="userSpaceOnUse"> + <path + id="path682" + d="M0 0 L0 154 L260 154 L260 0 Z" /> + </clipPath> + <clipPath + id="clipPath5" + clipPathUnits="userSpaceOnUse"> + <path + id="path685" + d="M0 0 L0 152 L258 152 L258 0 Z" /> + </clipPath> + <clipPath + id="clipPath6" + clipPathUnits="userSpaceOnUse"> + <path + id="path688" + d="M0 0 L0 150 L256 150 L256 0 Z" /> + </clipPath> + <clipPath + id="clipPath7" + clipPathUnits="userSpaceOnUse"> + <path + id="path691" + d="M0 0 L0 122 L256 122 L256 0 Z" /> + </clipPath> + <clipPath + id="clipPath8" + clipPathUnits="userSpaceOnUse"> + <path + id="path694" + d="M0 0 L0 24 L256 24 L256 0 Z" /> + </clipPath> + <clipPath + id="clipPath9" + clipPathUnits="userSpaceOnUse"> + <path + id="path697" + d="M0 0 L0 22 L25 22 L25 0 Z" /> + </clipPath> + <clipPath + id="clipPath10" + clipPathUnits="userSpaceOnUse"> + <path + id="path700" + d="M0 0 L0 22 L80 22 L80 0 Z" /> + </clipPath> + <clipPath + id="clipPath11" + clipPathUnits="userSpaceOnUse"> + <path + id="path703" + d="M0 24 L0 48 L256 48 L256 24 Z" /> + </clipPath> + <clipPath + id="clipPath12" + clipPathUnits="userSpaceOnUse"> + <path + id="path706" + d="M0 0 L0 22 L85 22 L85 0 Z" /> + </clipPath> + <clipPath + id="clipPath13" + clipPathUnits="userSpaceOnUse"> + <path + id="path709" + d="M0 48 L0 72 L256 72 L256 48 Z" /> + </clipPath> + <clipPath + id="clipPath14" + clipPathUnits="userSpaceOnUse"> + <path + id="path712" + d="M0 0 L0 22 L62 22 L62 0 Z" /> + </clipPath> + <clipPath + id="clipPath15" + clipPathUnits="userSpaceOnUse"> + <path + id="path715" + d="M0 0 L0 22 L146 22 L146 0 Z" /> + </clipPath> + <clipPath + id="clipPath16" + clipPathUnits="userSpaceOnUse"> + <path + id="path718" + d="M0 72 L0 73 L256 73 L256 72 Z" /> + </clipPath> + <clipPath + id="clipPath17" + clipPathUnits="userSpaceOnUse"> + <path + id="path721" + d="M0 0 L0 1 L256 1 L256 0 Z" /> + </clipPath> + <clipPath + id="clipPath18" + clipPathUnits="userSpaceOnUse"> + <path + id="path724" + d="M0 73 L0 97 L256 97 L256 73 Z" /> + </clipPath> + <clipPath + id="clipPath19" + clipPathUnits="userSpaceOnUse"> + <path + id="path727" + d="M0 0 L0 22 L6 22 L6 0 Z" /> + </clipPath> + <clipPath + id="clipPath20" + clipPathUnits="userSpaceOnUse"> + <path + id="path730" + d="M0 0 L0 22 L226 22 L226 0 Z" /> + </clipPath> + <clipPath + id="clipPath21" + clipPathUnits="userSpaceOnUse"> + <path + id="path733" + d="M0 97 L0 98 L256 98 L256 97 Z" /> + </clipPath> + <clipPath + id="clipPath22" + clipPathUnits="userSpaceOnUse"> + <path + id="path736" + d="M0 98 L0 122 L256 122 L256 98 Z" /> + </clipPath> + <clipPath + id="clipPath23" + clipPathUnits="userSpaceOnUse"> + <path + id="path739" + d="M0 0 L0 22 L36 22 L36 0 Z" /> + </clipPath> + <clipPath + id="clipPath24" + clipPathUnits="userSpaceOnUse"> + <path + id="path742" + d="M0 0 L0 22 L90 22 L90 0 Z" /> + </clipPath> + <clipPath + id="clipPath25" + clipPathUnits="userSpaceOnUse"> + <path + id="path745" + d="M0 0 L0 28 L256 28 L256 0 Z" /> + </clipPath> + <clipPath + id="clipPath26" + clipPathUnits="userSpaceOnUse"> + <path + id="path748" + d="M0 0 L0 22 L250 22 L250 0 Z" /> + </clipPath> + </defs> + <metadata + id="metadata7"> + <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> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,-822.51971)"> + <rect + style="fill:#ccffaa;stroke:none;stroke-width:1.0795145;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect4062-1-7" + width="267.51447" + height="89.999985" + x="70" + y="1002.5198" + ry="8.4374905" /> + <rect + style="fill:#e9c6af;stroke:none;stroke-width:1.19266081;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect4062" + width="270" + height="120.00005" + x="70" + y="882.51971" /> + <rect + style="fill:#ffeeaa;stroke:none;stroke-width:0.6885829;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect4062-1" + width="270" + height="39.999992" + x="70" + y="842.51978" + ry="3.3333299" /> + <text + xml:space="preserve" + style="font-style:normal;font-weight:normal;font-size:12.80000019px;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.06666672" + x="104.51711" + y="415.68225" + id="text3004"><tspan + sodipodi:role="line" + id="tspan3006" + x="104.51711" + y="415.68225" + style="font-size:42.66666794px;line-height:1.25;font-family:sans-serif;stroke-width:1.06666672">Â </tspan></text> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + x="80" + y="872.51978" + id="text10501"><tspan + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold';fill:#000000" + sodipodi:role="line" + x="80" + y="872.51978" + id="tspan10507">Rectangle</tspan><tspan + id="tspan198" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#000000" + sodipodi:role="line" + x="80" + y="912.51978">width</tspan><tspan + id="tspan200" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#000000" + sodipodi:role="line" + x="80" + y="952.51978">height</tspan><tspan + id="tspan202" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#000000" + sodipodi:role="line" + x="80" + y="992.51978">hasSolidBorder</tspan><tspan + id="tspan196" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold';fill:#000000" + sodipodi:role="line" + x="80" + y="1032.5198" /></text> + <rect + ry="14.705871" + style="fill:none;stroke:#000000;stroke-width:5.052248;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + id="rect11548" + width="270" + height="250" + x="70" + y="842.51978" /> + <path + style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 70,882.51976 H 340" + id="path11550" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cc" /> + <path + style="fill:none;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="M 70,1002.5198 H 340" + id="path11550-2" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cc" /> + </g> + <script + ns1:version="14.10-05142318" + id="sozi-script">function namespace(b,d,a){var c=b;d.split(".").forEach(function(e){if(typeof c[e]==="undefined"){c[e]={}}c=c[e]});if(a){a(c,b)}return c}namespace(this,"sozi.events",function(b){var a={};b.listen=function(c,d){if(!a.hasOwnProperty(c)){a[c]=[]}a[c].push(d)};b.fire=function(d){var c=Array.prototype.slice.call(arguments,1);if(a.hasOwnProperty(d)){a[d].forEach(function(e){e.apply(null,c)})}}});namespace(this,"sozi.proto",function(a){a.Object={installConstructors:function(){function b(){}b.prototype=this;this.instance=function(){var c=new b();c.construct.apply(c,arguments);return c};this.subtype=function(d){var c=new b();c.augment(d);c.installConstructors();return c}},construct:function(){},augment:function(c){for(var b in c){if(c.hasOwnProperty(b)){this[b]=c[b]}}return this},bind:function(c){var b=this;return function(){return c.apply(b,arguments)}}};a.Object.installConstructors()});namespace(this,"sozi.actions",function(A,g){var u=namespace(g,"sozi.player");var v=namespace(g,"sozi.display");var n=g.document;var o=0;var w=1;var t=1.05;var y=5;var m=5;var r=false;var i=0;var h=0;function a(C,B,D){u.stop();v.viewPorts.player.zoom(C>0?t:1/t,B,D)}function x(B){u.stop();v.viewPorts.player.rotate(B>0?y:-y)}function s(){if(sozi.framelist.isVisible()){sozi.framelist.hide();u.restart()}else{u.stop();sozi.framelist.show()}}function d(B){return v.viewPorts.player.contains(B.clientX,B.clientY)}function f(B){if(!d(B)){return}if(B.button===o){n.documentElement.addEventListener("mousemove",q,false);r=false;i=B.clientX;h=B.clientY}else{if(B.button===w){s()}}B.stopPropagation();B.preventDefault()}function q(B){if(!d(B)){return}u.stop();if(!r&&(Math.abs(B.clientX-i)>m||Math.abs(B.clientY-h)>m)){r=true}if(r){sozi.events.fire("sozi.player.cleanup");v.viewPorts.player.drag(B.clientX-i,B.clientY-h);i=B.clientX;h=B.clientY}B.stopPropagation()}function c(B){if(!d(B)){return}if(B.button===o){n.documentElement.removeEventListener("mousemove",q,false)}B.stopPropagation();B.preventDefault()}function p(B){if(!d(B)){return}u.moveToPrevious();B.stopPropagation();B.preventDefault()}function e(B){if(!d(B)){return}if(!r&&B.button!==w){u.moveToNext()}B.stopPropagation();B.preventDefault()}function j(B){if(!d(B)){return}if(!B){B=g.event}var C=0;if(B.wheelDelta){C=B.wheelDelta}else{if(B.detail){C=-B.detail}}if(C!==0){if(B.shiftKey){x(C)}else{a(C,B.clientX,B.clientY)}}B.stopPropagation();B.preventDefault()}function l(B){if(B.altKey||B.ctrlKey||B.metaKey){return}switch(B.charCode||B.which){case 43:a(1,g.innerWidth/2,g.innerHeight/2);break;case 45:a(-1,g.innerWidth/2,g.innerHeight/2);break;case 61:u.moveToCurrent();break;case 70:case 102:u.showAll();break;case 84:case 116:s();break;case 82:x(-1);break;case 114:x(1);break;default:return}B.stopPropagation();B.preventDefault()}function b(B){if(B.altKey||B.ctrlKey||B.metaKey){return}switch(B.keyCode){case 36:if(B.shiftKey){u.jumpToFirst()}else{u.moveToFirst()}break;case 35:if(B.shiftKey){u.jumpToLast()}else{u.moveToLast()}break;case 38:case 33:case 37:if(B.shiftKey){u.jumpToPrevious()}else{u.moveToPrevious()}break;case 40:case 34:case 39:case 13:case 32:if(B.shiftKey){u.jumpToNext()}else{u.moveToNext()}break;default:return}B.stopPropagation();B.preventDefault()}function z(B){B.stopPropagation()}function k(){var C=n.getElementsByTagName("a");for(var D=0;D<C.length;D+=1){C[D].addEventListener("click",z,false);C[D].addEventListener("contextmenu",z,false)}var B=n.documentElement;B.addEventListener("click",e,false);B.addEventListener("mousedown",f,false);B.addEventListener("mouseup",c,false);B.addEventListener("contextmenu",p,false);B.addEventListener("DOMMouseScroll",j,false);g.onmousewheel=j;B.addEventListener("keypress",l,false);B.addEventListener("keydown",b,false)}sozi.events.listen("sozi.display.ready",k)});namespace(this,"sozi.animation",function(d,g){var h=g.mozRequestAnimationFrame||g.webkitRequestAnimationFrame||g.msRequestAnimationFrame||g.oRequestAnimationFrame;var k=function(){return g.performance&&g.performance.now?g.performance.now():Date.now()};d.setAnimationFrameHandlers=function(l,m){h=l;k=m};var i=40;var c;var j=[];function e(){if(j.length>0){if(h){h(e)}j.forEach(function(l){l.step(k())})}else{if(!h){g.clearInterval(c)}}}function b(){if(h){h(e)}else{c=g.setInterval(function(){e(k())},i)}}function a(l){j.push(l);if(j.length===1){b()}}function f(l){j.splice(j.indexOf(l),1)}d.Animator=sozi.proto.Object.subtype({construct:function(){this.durationMs=0;this.data=null;this.initialTime=0;this.started=false},start:function(l,m){this.durationMs=l;this.data=m;this.initialTime=k();this.onStep(0);if(!this.started){this.started=true;a(this)}},stop:function(){if(this.started){f(this);this.started=false}},step:function(m){var l=m-this.initialTime;if(l>=this.durationMs){this.stop();this.onStep(1);this.onDone()}else{this.onStep(l/this.durationMs)}},onStep:function(l){},onDone:function(){}});d.profiles={linear:function(l){return l},accelerate:function(l){return Math.pow(l,3)},"strong-accelerate":function(l){return Math.pow(l,5)},decelerate:function(l){return 1-Math.pow(1-l,3)},"strong-decelerate":function(l){return 1-Math.pow(1-l,5)},"accelerate-decelerate":function(l){var m=l<=0.5?l:1-l,n=Math.pow(2*m,3)/2;return l<=0.5?n:1-n},"strong-accelerate-decelerate":function(l){var m=l<=0.5?l:1-l,n=Math.pow(2*m,5)/2;return l<=0.5?n:1-n},"decelerate-accelerate":function(l){var m=l<=0.5?l:1-l,n=(1-Math.pow(1-2*m,2))/2;return l<=0.5?n:1-n},"strong-decelerate-accelerate":function(l){var m=l<=0.5?l:1-l,n=(1-Math.pow(1-2*m,3))/2;return l<=0.5?n:1-n},"immediate-beginning":function(l){return 1},"immediate-end":function(l){return l===1?1:0},"immediate-middle":function(l){return l>=0.5?1:0}}});namespace(this,"sozi.display",function(c,g){var f="http://www.w3.org/2000/svg";var b="http://www.w3.org/1999/xlink";var i=g.document;var k;var h;var j;c.viewPorts={};var e;c.CameraState=sozi.proto.Object.subtype({construct:function(){this.cx=this.cy=0;this.width=this.height=1;this.angle=0;this.clipped=true;this.transitionZoomPercent=0;this.transitionProfile=sozi.animation.profiles.linear;this.transitionPath=null},setCenter:function(l,m){this.cx=l;this.cy=m;return this},setSize:function(m,l){this.width=m;this.height=l;return this},setClipped:function(l){this.clipped=l;return this},setAngle:function(l){this.angle=(l+180)%360-180;return this},setRawAngle:function(l){this.angle=l;return this},setTransitionZoomPercent:function(l){this.transitionZoomPercent=l;return this},setTransitionProfile:function(l){this.transitionProfile=l;return this},setTransitionPath:function(l){this.transitionPath=l;return this},setAtElement:function(p){var s,o,t,m;if(p.nodeName==="rect"){s=p.x.baseVal.value;o=p.y.baseVal.value;t=p.width.baseVal.value;m=p.height.baseVal.value}else{var q=p.getBBox();s=q.x;o=q.y;t=q.width;m=q.height}var n=i.documentElement.createSVGPoint();n.x=s+t/2;n.y=o+m/2;var r=p.getCTM();n=n.matrixTransform(r);var l=Math.sqrt(r.a*r.a+r.b*r.b);return this.setCenter(n.x,n.y).setSize(t*l,m*l).setAngle(Math.atan2(r.b,r.a)*180/Math.PI)},setAtState:function(l){return this.setCenter(l.cx,l.cy).setSize(l.width,l.height).setAngle(l.angle).setClipped(l.clipped).setTransitionZoomPercent(l.transitionZoomPercent).setTransitionProfile(l.transitionProfile).setTransitionPath(l.transitionPath)},interpolatableAttributes:["width","height","angle"],interpolate:function(n,o,t,v,r){var p=1-t;for(var q=0;q<this.interpolatableAttributes.length;q+=1){var s=this.interpolatableAttributes[q];this[s]=o[s]*t+n[s]*p}var l=r?n.transitionPath:o.transitionPath;if(v&&l){var x=l.getTotalLength();if(r){var m=l.getPointAtLength(x);var u=l.getPointAtLength(0);var w=l.getPointAtLength(x*p)}else{var m=l.getPointAtLength(0);var u=l.getPointAtLength(x);var w=l.getPointAtLength(x*t)}this.cx=w.x+(o.cx-u.x)*t+(n.cx-m.x)*p;this.cy=w.y+(o.cy-u.y)*t+(n.cy-m.y)*p}else{this.cx=o.cx*t+n.cx*p;this.cy=o.cy*t+n.cy*p}}});c.Camera=c.CameraState.subtype({construct:function(n,o){c.CameraState.construct.call(this);this.viewPort=n;this.svgClipRect=i.createElementNS(f,"rect");var m=i.createElementNS(f,"clipPath");m.setAttribute("id","sozi-clip-path-"+n.id+"-"+o);m.appendChild(this.svgClipRect);n.svgGroup.appendChild(m);var l=i.createElementNS(f,"g");l.setAttribute("clip-path","url(#sozi-clip-path-"+n.id+"-"+o+")");n.svgGroup.appendChild(l);if(n.isPrimary){this.svgLayer=i.createElementNS(f,"g");this.svgLayer.appendChild(i.getElementById(o))}else{this.svgLayer=i.createElementNS(f,"use");this.svgLayer.setAttributeNS(b,"href","#"+o)}l.appendChild(this.svgLayer)},setAtState:function(l){return c.CameraState.setAtState.call(this,l).update()},getScale:function(){return Math.min(this.viewPort.width/this.width,this.viewPort.height/this.height)},rotate:function(l){return this.setAngle(this.angle+l).update()},zoom:function(m,l,n){return this.setSize(this.width/m,this.height/m).drag((1-m)*(l-this.viewPort.width/2),(1-m)*(n-this.viewPort.height/2))},drag:function(m,l){var q=this.getScale();var o=this.angle*Math.PI/180;var n=Math.sin(o);var p=Math.cos(o);return this.setCenter(this.cx-(m*p-l*n)/q,this.cy-(m*n+l*p)/q).setClipped(false).update()},update:function(){var q=this.getScale();var n=this.width*q;var m=this.height*q;var l=(this.viewPort.width-n)/2;var r=(this.viewPort.height-m)/2;this.svgClipRect.setAttribute("x",this.clipped?l:0);this.svgClipRect.setAttribute("y",this.clipped?r:0);this.svgClipRect.setAttribute("width",this.clipped?n:this.viewPort.width);this.svgClipRect.setAttribute("height",this.clipped?m:this.viewPort.height);var p=-this.cx+this.width/2+l/q;var o=-this.cy+this.height/2+r/q;this.svgLayer.setAttribute("transform","scale("+q+")translate("+p+","+o+")rotate("+(-this.angle)+","+this.cx+","+this.cy+")");return this}});c.ViewPort=sozi.proto.Object.subtype({construct:function(n,m,l){this.id=n;c.viewPorts[n]=this;this.isPrimary=!!l;if(this.isPrimary){if(e){throw"Failed to create a primary viewport. A primary viewport already exists."}else{e=this}}this.svgGroup=i.createElementNS(f,"g");this.svgGroup.setAttribute("class","sozi-viewport");this.svgGroup.setAttribute("id","sozi-viewport-"+n);i.documentElement.appendChild(this.svgGroup);this.setLocation(0,0).setSize(g.innerWidth,g.innerHeight);this.cameras={};m.forEach(function(o){this.cameras[o]=c.Camera.instance(this,o)},this)},setSize:function(m,l){this.width=m;this.height=l;return this},setLocation:function(l,m){this.x=l;this.y=m;return this},contains:function(l,m){return l>=this.x&&l<this.x+this.width&&m>=this.y&&m<this.y+this.height},getDocumentState:function(){var m=c.CameraState.instance().setCenter(k.x+k.width/2,k.y+k.height/2).setSize(k.width,k.height).setClipped(false);var l={};for(var n in this.cameras){l[n]=m}return l},update:function(){this.svgGroup.setAttribute("transform","translate("+this.x+","+this.y+")");for(var l in this.cameras){this.cameras[l].update()}return this},showFrame:function(l){for(var m in l.states){this.cameras[m].setAtState(l.states[m])}return this},drag:function(m,l){for(var n in this.cameras){this.cameras[n].drag(m,l)}return this},zoom:function(m,l,o){for(var n in this.cameras){this.cameras[n].zoom(m,l,o)}return this},rotate:function(l){for(var m in this.cameras){this.cameras[m].rotate(l)}return this},onWindowResize:function(m,l){this.setLocation(this.x*m,this.y*l).setSize(this.width*m,this.height*l).update()}});function d(){var l=i.documentElement;k=l.getBBox();h=g.innerWidth;j=g.innerHeight;l.setAttribute("width",h);l.setAttribute("height",j);sozi.events.fire("sozi.display.ready")}function a(){var l=i.documentElement;l.setAttribute("width",g.innerWidth);l.setAttribute("height",g.innerHeight);for(var m in c.viewPorts){c.viewPorts[m].onWindowResize(g.innerWidth/h,g.innerHeight/j)}h=g.innerWidth;j=g.innerHeight}sozi.events.listen("sozi.document.ready",d);g.addEventListener("resize",a,false)});namespace(this,"sozi.document",function(c,e){var g=e.document;var b="http://sozi.baierouge.fr";var d={title:"Untitled",sequence:"0",hide:"true",clip:"true","show-in-frame-list":"true","timeout-enable":"false","timeout-ms":"5000","transition-duration-ms":"1000","transition-zoom-percent":"0","transition-profile":"linear","transition-path-hide":"true"};var h=["g","image","path","rect","circle","ellipse","line","polyline","polygon","text","clippath"];c.frames=[];c.idLayerList=[];function j(l,k){return l.getAttributeNS(b,k)||d[k]}function i(o,p,k){var l=o.states[p]=o.states[p]||sozi.display.CameraState.instance();if(typeof l.transitionZoomPercent==="undefined"||k.hasAttributeNS(b,"transition-zoom-percent")){l.setTransitionZoomPercent(parseInt(j(k,"transition-zoom-percent"),10))}if(typeof l.transitionProfile==="undefined"||k.hasAttributeNS(b,"transition-profile")){l.setTransitionProfile(sozi.animation.profiles[j(k,"transition-profile")])}if(typeof l.transitionPath==="undefined"||k.hasAttributeNS(b,"transition-path")){var n=g.getElementById(k.getAttributeNS(b,"transition-path"));if(n&&n.nodeName==="path"){l.setTransitionPath(n);if(j(k,"transition-path-hide")==="true"){n.style.visibility="hidden"}}}if(k.hasAttributeNS(b,"refid")){var m=g.getElementById(k.getAttributeNS(b,"refid"));if(m){l.setAtElement(m);if(j(k,"hide")==="true"){m.style.visibility="hidden"}}}if(k.hasAttributeNS(b,"clip")){l.setClipped(j(k,"clip")==="true")}}function a(){var l=[];var p=g.getElementsByTagNameNS(b,"layer");for(var n=0;n<p.length;n+=1){var s=p[n].getAttributeNS(b,"group");if(s&&l.indexOf(s)===-1){l.push(s)}}var r=g.documentElement;var o="http://www.w3.org/2000/svg";var q=g.createElementNS(o,"g");var k=Array.prototype.slice.call(r.childNodes);k.forEach(function(u,t){if(!u.getAttribute){r.removeChild(u)}else{if(l.indexOf(u.getAttribute("id"))!==-1){if(q.firstChild){q.setAttribute("id","sozi-wrapper-"+t);c.idLayerList.push("sozi-wrapper-"+t);r.insertBefore(q,u);q=g.createElementNS(o,"g")}c.idLayerList.push(u.getAttribute("id"))}else{if(h.indexOf(u.localName.toLowerCase())!==-1){r.removeChild(u);q.appendChild(u)}}}});if(q.firstChild){q.setAttribute("id","sozi-wrapper-"+k.length);c.idLayerList.push("sozi-wrapper-"+k.length);r.appendChild(q)}var m=Array.prototype.slice.call(g.getElementsByTagNameNS(b,"frame"));m.sort(function(u,t){var w=parseInt(j(u,"sequence"),10);var v=parseInt(j(t,"sequence"),10);return w-v});m.forEach(function(v,u){var x={id:v.getAttribute("id"),title:j(v,"title"),showInFrameList:j(v,"show-in-frame-list")==="true",sequence:parseInt(j(v,"sequence"),10),timeoutEnable:j(v,"timeout-enable")==="true",timeoutMs:parseInt(j(v,"timeout-ms"),10),transitionDurationMs:parseInt(j(v,"transition-duration-ms"),10),states:{}};c.idLayerList.forEach(function(A){if(u===0||A.search("sozi-wrapper-[0-9]+")!==-1){i(x,A,v)}else{var z=x.states[A]=sozi.display.CameraState.instance();var y=c.frames[c.frames.length-1].states[A];z.setAtState(y)}});var t=Array.prototype.slice.call(v.getElementsByTagNameNS(b,"layer"));t.forEach(function(y){var z=y.getAttributeNS(b,"group");if(z&&c.idLayerList.indexOf(z)!==-1){i(x,z,y)}});for(var w in x.states){if(x.states.hasOwnProperty(w)){c.frames.push(x);break}}})}c.getFrameIndexForId=function(l){for(var k=0;k<c.frames.length;k+=1){if(c.frames[k].id===l){return k}}return -1};function f(){g.documentElement.removeAttribute("viewBox");a();sozi.events.fire("sozi.document.ready")}e.addEventListener("load",f,false)});namespace(this,"sozi.framelist",function(u,k){var o=k.document;var c=5;var i;var p;var j=0;var h;var s;var b;var v;var w;var t;var e=300;var f="decelerate";var a="http://www.w3.org/2000/svg";function n(z){var x=z.relatedTarget,y=o.documentElement;while(x&&x!==i&&x!==y){x=x.parentNode}if(x!==i){u.hide();sozi.player.restart();z.stopPropagation()}}function r(y){var x=p.getCTM().f;if(x<=-k.innerHeight/2){x+=k.innerHeight/2}else{if(x<0){x=0}}p.setAttribute("transform","translate(0,"+x+")");y.stopPropagation()}function d(y){var x=p.getCTM().f;if(x+j>=k.innerHeight*3/2){x-=k.innerHeight/2}else{if(x+j>k.innerHeight+2*c){x=k.innerHeight-j-4*c}}p.setAttribute("transform","translate(0,"+x+")");y.stopPropagation()}function g(x){return function(y){sozi.player.previewFrame(x);y.stopPropagation()}}function l(x){x.stopPropagation()}function q(){i=o.createElementNS(a,"g");i.setAttribute("id","sozi-toc");o.documentElement.appendChild(i);p=o.createElementNS(a,"g");i.appendChild(p);var y=o.createElementNS(a,"rect");y.setAttribute("id","sozi-toc-background");y.setAttribute("x",c);y.setAttribute("y",c);y.setAttribute("rx",c);y.setAttribute("ry",c);y.addEventListener("click",l,false);y.addEventListener("mousedown",l,false);y.addEventListener("mouseout",n,false);p.appendChild(y);var A=0;sozi.document.frames.forEach(function(D,E){if(D.showInFrameList){var C=o.createElementNS(a,"text");C.appendChild(o.createTextNode(D.title));C.setAttribute("id","sozi-toc-"+D.id);p.appendChild(C);if(E===sozi.player.currentFrameIndex){C.setAttribute("class","sozi-toc-current")}var B=C.getBBox().width;j+=C.getBBox().height;if(B>A){A=B}C.setAttribute("x",2*c);C.setAttribute("y",j+c);C.addEventListener("click",g(E),false);C.addEventListener("mousedown",l,false)}});var x=o.createElementNS(a,"path");x.setAttribute("class","sozi-toc-arrow");x.setAttribute("d","M"+(A+3*c)+","+(5*c)+" l"+(4*c)+",0 l-"+(2*c)+",-"+(3*c)+" z");x.addEventListener("click",r,false);x.addEventListener("mousedown",l,false);i.appendChild(x);var z=o.createElementNS(a,"path");z.setAttribute("class","sozi-toc-arrow");z.setAttribute("d","M"+(A+3*c)+","+(7*c)+" l"+(4*c)+",0 l-"+(2*c)+","+(3*c)+" z");z.addEventListener("click",d,false);z.addEventListener("mousedown",l,false);i.appendChild(z);y.setAttribute("width",A+7*c);y.setAttribute("height",j+2*c);h=-A-9*c;s=0;w=v=h;i.setAttribute("transform","translate("+h+",0)");t=sozi.animation.Animator.instance().augment({onStep:function(B){var D=sozi.animation.profiles[f](B),C=1-D;w=v*D+b*C;i.setAttribute("transform","translate("+w+",0)")}})}function m(x){var y=Array.prototype.slice.call(o.getElementsByClassName("sozi-toc-current"));y.forEach(function(A){A.removeAttribute("class")});var z=sozi.document.frames[x];if(z.showInFrameList){o.getElementById("sozi-toc-"+z.id).setAttribute("class","sozi-toc-current")}}u.show=function(){o.documentElement.appendChild(i);b=w;v=s;t.start(e)};u.hide=function(){b=w;v=h;t.start(e)};u.isVisible=function(){return v===s};sozi.events.listen("sozi.player.ready",q);sozi.events.listen("sozi.player.cleanup",u.hide);sozi.events.listen("sozi.player.framechange",m)});namespace(this,"sozi.framenumber",function(a,d){var g=d.document;var e;var k,i;var f;var b="http://www.w3.org/2000/svg";function h(){var m=k.getBBox(),n=Math.max(m.width,m.height)*0.75,l=n*1.25;f.setAttribute("r",n);e.setAttribute("transform","translate("+l+","+l+")")}function c(){e=g.createElementNS(b,"g");k=g.createElementNS(b,"text");f=g.createElementNS(b,"circle");e.setAttribute("id","sozi-framenumber");f.setAttribute("cx",0);f.setAttribute("cy",0);e.appendChild(f);i=g.createTextNode(sozi.player.currentFrameIndex+1);k.setAttribute("text-anchor","middle");k.setAttribute("dominant-baseline","central");k.setAttribute("x",0);k.setAttribute("y",0);k.appendChild(i);e.appendChild(k);g.documentElement.appendChild(e);h()}function j(l){i.nodeValue=l+1}sozi.events.listen("sozi.player.ready",c);sozi.events.listen("sozi.player.framechange",j)});namespace(this,"sozi.links",function(c,e){var b="http://www.w3.org/2000/svg";var a="http://www.w3.org/1999/xlink";function f(g){return function(h){sozi.player.moveToFrame(g);h.preventDefault();h.stopPropagation()}}function d(){var h=e.document.getElementsByTagNameNS(b,"a");for(var j=0;j<h.length;j+=1){var g=h[j].getAttributeNS(a,"href");if(g&&g[0]==="#"){h[j].addEventListener("click",f(sozi.location.getFrameIndexForHash(g)),false)}}}sozi.events.listen("sozi.document.ready",d)});namespace(this,"sozi.location",function(a,d){var b=false;a.getFrameIndex=function(){return a.getFrameIndexForHash(d.location.hash)};a.getFrameIndexForHash=function(g){var h=g?g.slice(1):"1";var f;if(/^[0-9]+$/.test(h)){f=parseInt(h,10)-1}else{f=sozi.document.getFrameIndexForId(h)}if(f<0){return 0}else{if(f>=sozi.document.frames.length){return sozi.document.frames.length-1}else{return f}}};function e(){var f=a.getFrameIndex();if(!b){sozi.player.moveToFrame(f)}b=false}function c(f){b=true;d.location.hash="#"+sozi.document.frames[f].id}d.addEventListener("hashchange",e,false);sozi.events.listen("sozi.player.framechange",c)});namespace(this,"sozi.player",function(d,g){var l;var c;var i;var e=500;var n=-10;var j="linear";var f=0;d.currentFrameIndex=0;var k=false;var m=false;function h(){if(sozi.document.frames[d.currentFrameIndex].timeoutEnable){m=true;var o=(d.currentFrameIndex+1)%sozi.document.frames.length;i=g.setTimeout(function(){d.moveToFrame(o)},sozi.document.frames[d.currentFrameIndex].timeoutMs)}}d.startFromIndex=function(o){k=true;m=false;f=o;d.currentFrameIndex=o;l.showFrame(sozi.document.frames[o]);h()};d.restart=function(){d.startFromIndex(d.currentFrameIndex)};d.stop=function(){c.stop();if(m){g.clearTimeout(i);m=false}k=false;f=d.currentFrameIndex};function b(o,y,w){var z={ss:((o<0)?Math.max(y,w):Math.min(y,w))*(100-o)/100,ts:0.5,k:0};if(o!==0){var s=y-w;var r=y-z.ss;var q=w-z.ss;if(s!==0){var p=Math.sqrt(r*q);var x=(r-p)/s;var t=(r+p)/s;z.ts=(x>0&&x<=1)?x:t}z.k=r/z.ts/z.ts}return z}d.jumpToFrame=function(o){d.stop();sozi.events.fire("sozi.player.cleanup");f=o;d.currentFrameIndex=o;l.showFrame(sozi.document.frames[o]);sozi.events.fire("sozi.player.framechange",o)};d.getAnimationData=function(o,q,s,p,v,t){var r={};for(var w in o){r[w]={initialState:sozi.display.CameraState.instance(),finalState:sozi.display.CameraState.instance(),useTransitionPath:v,reverseTransitionPath:t};r[w].profile=p||q[w].transitionProfile;r[w].initialState.setAtState(o[w]);if(q.hasOwnProperty(w)){r[w].finalState.setAtState(q[w])}else{r[w].finalState.setAtState(o[w])}if(r[w].finalState.angle-r[w].initialState.angle>180){r[w].finalState.setRawAngle(r[w].finalState.angle-360)}else{if(r[w].finalState.angle-r[w].initialState.angle<-180){r[w].initialState.setRawAngle(r[w].initialState.angle-360)}}var u=s||q[w].transitionZoomPercent;if(u&&q.hasOwnProperty(w)){r[w].zoomWidth=b(u,o[w].width,q[w].width);r[w].zoomHeight=b(u,o[w].height,q[w].height)}}return r};d.previewFrame=function(o){d.currentFrameIndex=o;c.start(e,d.getAnimationData(l.cameras,sozi.document.frames[o].states,n,sozi.animation.profiles[j]),false,false);sozi.events.fire("sozi.player.framechange",o)};d.moveToFrame=function(r){if(m){g.clearTimeout(i);m=false}var q,t,s,p,o;if(r===(d.currentFrameIndex-1)%sozi.document.frames.length){q=sozi.document.frames[d.currentFrameIndex].transitionDurationMs;t=undefined;s=undefined;p=true;o=true}else{if(r===(d.currentFrameIndex+1)%sozi.document.frames.length){q=sozi.document.frames[r].transitionDurationMs;t=undefined;s=undefined;p=true;o=false}else{q=e;t=n;s=sozi.animation.profiles[j];p=false;o=false}}sozi.events.fire("sozi.player.cleanup");k=true;d.currentFrameIndex=r;c.start(q,d.getAnimationData(l.cameras,sozi.document.frames[r].states,t,s,p,o));sozi.events.fire("sozi.player.framechange",r)};d.jumpToFirst=function(){d.jumpToFrame(0)};d.moveToFirst=function(){d.moveToFrame(0)};d.jumpToPrevious=function(){var o=d.currentFrameIndex;if(!c.started||f<=d.currentFrameIndex){o-=1}if(o>=0){d.jumpToFrame(o)}};d.moveToPrevious=function(){for(var o=d.currentFrameIndex-1;o>=0;o-=1){var p=sozi.document.frames[o];if(!p.timeoutEnable||p.timeoutMs!==0){d.moveToFrame(o);break}}};d.jumpToNext=function(){var o=d.currentFrameIndex;if(!c.started||f>=d.currentFrameIndex){o+=1}if(o<sozi.document.frames.length){d.jumpToFrame(o)}};d.moveToNext=function(){if(d.currentFrameIndex<sozi.document.frames.length-1||sozi.document.frames[d.currentFrameIndex].timeoutEnable){d.moveToFrame((d.currentFrameIndex+1)%sozi.document.frames.length)}};d.jumpToLast=function(){d.jumpToFrame(sozi.document.frames.length-1)};d.moveToLast=function(){d.moveToFrame(sozi.document.frames.length-1)};d.moveToCurrent=function(){d.moveToFrame(d.currentFrameIndex)};d.showAll=function(){d.stop();sozi.events.fire("sozi.player.cleanup");c.start(e,d.getAnimationData(l.cameras,l.getDocumentState(),n,sozi.animation.profiles[j],false,false))};function a(){l=sozi.display.ViewPort.instance("player",sozi.document.idLayerList,true);d.startFromIndex(sozi.location.getFrameIndex());g.setTimeout(l.bind(l.update),1);sozi.events.fire("sozi.player.ready")}d.onAnimationStep=function(o,q){for(var s in q){var p=l.cameras[s];p.interpolate(q[s].initialState,q[s].finalState,q[s].profile(o),q[s].useTransitionPath,q[s].reverseTransitionPath);var r;if(q[s].zoomWidth&&q[s].zoomWidth.k!==0){r=o-q[s].zoomWidth.ts;p.width=q[s].zoomWidth.k*r*r+q[s].zoomWidth.ss}if(q[s].zoomHeight&&q[s].zoomHeight.k!==0){r=o-q[s].zoomHeight.ts;p.height=q[s].zoomHeight.k*r*r+q[s].zoomHeight.ss}p.setClipped(q[s].finalState.clipped)}l.update()};c=sozi.animation.Animator.instance().augment({onStep:function(o){d.onAnimationStep(o,this.data)},onDone:function(){for(var o in this.data){l.cameras[o].setAtState(this.data[o].finalState)}l.update();f=d.currentFrameIndex;if(k){h()}}});sozi.events.listen("sozi.display.ready",a)});</script> + <style + ns1:version="14.10-05142318" + id="sozi-style">#sozi-toc text{fill:#eff;font-family:Verdana,sans-serif;font-size:12pt}#sozi-toc text:hover{fill:#0cf;cursor:pointer}#sozi-toc text.sozi-toc-current{fill:#fa4}#sozi-toc-background{stroke:#222;stroke-opacity:.1;stroke-width:10;fill:#222;fill-opacity:.9}.sozi-toc-arrow{fill:#eff;fill-opacity:.75;stroke:none}.sozi-toc-arrow:hover{fill:#0cf}#sozi-framenumber circle{stroke:#222;stroke-opacity:.1;stroke-width:4;fill:#222;fill-opacity:.9}#sozi-framenumber text{fill:#eff;font-family:Verdana,sans-serif;font-size:12pt}</style> + <ns1:frame + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="1" + ns1:title="Gcd implementation" + ns1:refid="rect10351" /> + <ns1:frame + ns1:refid="rect10841" + ns1:title="Gcd maven packaging" + ns1:sequence="2" + ns1:hide="true" + ns1:clip="true" + ns1:show-in-frame-list="true" + ns1:timeout-enable="false" + ns1:timeout-ms="5000.0" + ns1:transition-duration-ms="1000.0" + ns1:transition-zoom-percent="0.0" + ns1:transition-profile="linear" + ns1:transition-path-hide="true" /> + <ns1:frame + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="3" + ns1:title="Using Math.getGcd()" + ns1:refid="rect11089" /> + <ns1:frame + ns1:refid="rect11381" + ns1:title="Fraction project" + ns1:sequence="4" + ns1:hide="true" + ns1:clip="true" + ns1:show-in-frame-list="true" + ns1:timeout-enable="false" + ns1:timeout-ms="5000.0" + ns1:transition-duration-ms="1000.0" + ns1:transition-zoom-percent="0.0" + ns1:transition-profile="linear" + ns1:transition-path-hide="true" /> + <ns1:frame + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="5" + ns1:title="Maven dependency definition" + ns1:refid="rect11637" /> + <ns1:frame + ns1:refid="rect11895" + ns1:title="Fraction depends on Gcd" + ns1:sequence="6" + ns1:hide="true" + ns1:clip="true" + ns1:show-in-frame-list="true" + ns1:timeout-enable="false" + ns1:timeout-ms="5000" + ns1:transition-duration-ms="1000" + ns1:transition-zoom-percent="0" + ns1:transition-profile="linear" + ns1:transition-path-hide="true" /> +</svg> diff --git a/Doc/Sd1/Ref/ObjectsAndClasses/rectangleAttribsUml.svg b/Doc/Sd1/Ref/ObjectsAndClasses/rectangleAttribsUml.svg new file mode 100644 index 0000000000000000000000000000000000000000..150c66a44c62527fbb0df812dc056054bfb600bb --- /dev/null +++ b/Doc/Sd1/Ref/ObjectsAndClasses/rectangleAttribsUml.svg @@ -0,0 +1,190 @@ +<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill-opacity="1" color-rendering="auto" color-interpolation="auto" text-rendering="auto" stroke="black" stroke-linecap="square" width="276" stroke-miterlimit="10" shape-rendering="auto" stroke-opacity="1" fill="black" stroke-dasharray="none" font-weight="normal" stroke-width="1" height="144" font-family="'Dialog'" font-style="normal" stroke-linejoin="miter" font-size="12" stroke-dashoffset="0" image-rendering="auto"> + <!--Generated by ySVG--> + <defs id="genericDefs"/> + <g> + <defs id="defs1"> + <linearGradient x1="0" gradientUnits="userSpaceOnUse" x2="0" y1="0" y2="28" id="linearGradient1" spreadMethod="pad"> + <stop stop-opacity="1" stop-color="rgb(255,255,245)" offset="0%"/> + <stop stop-opacity="1" stop-color="rgb(215,213,172)" offset="100%"/> + </linearGradient> + <linearGradient x1="0" gradientUnits="userSpaceOnUse" x2="0" y1="0" y2="28" id="linearGradient2" spreadMethod="pad"> + <stop stop-opacity="1" stop-color="rgb(255,255,245)" offset="0%"/> + <stop stop-opacity="1" stop-color="rgb(215,213,172)" offset="100%"/> + </linearGradient> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath1"> + <path d="M0 0 L276 0 L276 144 L0 144 L0 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath2"> + <path d="M-20 -20 L256 -20 L256 124 L-20 124 L-20 -20 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath3"> + <path d="M0 0 L0 104 L236 104 L236 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath4"> + <path d="M0 0 L0 102 L234 102 L234 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath5"> + <path d="M0 0 L0 100 L232 100 L232 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath6"> + <path d="M0 0 L0 72 L232 72 L232 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath7"> + <path d="M0 0 L0 24 L232 24 L232 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath8"> + <path d="M0 0 L0 22 L25 22 L25 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath9"> + <path d="M0 0 L0 22 L80 22 L80 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath10"> + <path d="M0 24 L0 48 L232 48 L232 24 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath11"> + <path d="M0 0 L0 22 L85 22 L85 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath12"> + <path d="M0 48 L0 72 L232 72 L232 48 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath13"> + <path d="M0 0 L0 22 L62 22 L62 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath14"> + <path d="M0 0 L0 22 L146 22 L146 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath15"> + <path d="M0 0 L0 28 L232 28 L232 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath16"> + <path d="M0 0 L0 22 L226 22 L226 0 Z"/> + </clipPath> + </defs> + <g fill="white" transform="translate(20,20)" stroke="white"> + <rect x="-20" width="276" height="144" y="-20" clip-path="url(#clipPath2)" stroke="none"/> + </g> + + <g fill="gray" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20)" stroke="gray"> + <rect x="2" width="234" height="1" y="103" clip-path="url(#clipPath3)" stroke="none"/> + <rect x="235" width="1" height="102" y="2" clip-path="url(#clipPath3)" stroke="none"/> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(1,1)" stroke="rgb(232,232,232)"> + <rect x="0" width="234" height="102" y="0" clip-path="url(#clipPath4)" stroke="none"/> + </g> + <g fill="silver" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(1,1)" stroke="silver"> + <path d="M0 0 L234 0 L234 102 L0 102 L0 0 ZM1 1 L233 1 L233 101 L1 101 L1 1 Z" fill-rule="evenodd" clip-path="url(#clipPath4)" stroke="none"/> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="rgb(232,232,232)"> + <rect x="0" width="232" height="100" y="0" clip-path="url(#clipPath5)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="white"> + <rect x="0" width="232" height="72" y="0" clip-path="url(#clipPath6)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(207,31)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,31)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath9)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath9)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath9)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="44" height="22" y="0" clip-path="url(#clipPath9)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath9)" stroke="none">width</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,54)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(207,55)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,55)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath11)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath11)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath11)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="49" height="22" y="0" clip-path="url(#clipPath11)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath11)" stroke="none">height</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,78)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(170,79)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath13)" stroke="none">boolean</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,79)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath14)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath14)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath14)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="110" height="22" y="0" clip-path="url(#clipPath14)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath14)" stroke="none">hasSolidBorder</text> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="rgb(232,232,232)"> + <rect x="0" width="232" height="28" y="0" clip-path="url(#clipPath15)" stroke="none"/> + </g> + <g fill="url(#linearGradient1)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="url(#linearGradient1)"> + <rect x="0" width="232" height="28" y="0" clip-path="url(#clipPath15)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(5,5)"> + <image x="2" y="3" clip-path="url(#clipPath16)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABGElEQVR42mNgoBAw ogs4b72r9oeRyRnINECTusDy/9/evd7Kt3Aa4Lj1Ydg/xn/OeG1kZDh+wFNxAYzP DGM4bL+f8J/hvx0RrpZViirierBswlUQhwnm7P//GSyJ9TfIlSA9IDYLiID6GQ7+ f/3M8n7lRMM/L58IgZ3Nxv5HtHjiXmQ1UD23WKB8lAADaf737ROncEr9IWZRye84 HGIA9wI6ANnMaeJ8F49mOGCiNB1gNYBFXObd9zN7lf++fs5JyABYGFxADgfB8Pzz oHB4O6fRDlcgQvVADAClMGCowg1g5Ob9I5RUcxqvzUA98IR0f9mkt6DE8Z/xvxJR /v7PtHeft+IhlJQISlnEGALSvN9bfhXVMhPFAABj9nS+zu6R5QAAAABJRU5ErkJg gg==" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath16)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAjElEQVR42mNgGAWM 6ALJW11q/jP+lwVL/md8PNd7Tws+A1jQBUCamf8z9ILYfxn/FxNyAQs2wdnee2+B 6KRtzgxkGQD3CsN/kCEz4f7F4iUmdI3zvPamx61zFoaFA7r30MWYsNm+KGjvWzjn L8MCRkamVSR7AQ6YGRL+//+HU5oJZ/wC/UuM2ChgYAAAYjIvl7Ex+6kAAAAASUVO RK5CYII=" height="16" preserveAspectRatio="none"/> + <text x="37" xml:space="preserve" y="17" clip-path="url(#clipPath16)" stroke="none">Rectangle</text> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="rgb(232,232,232)"> + <rect x="0" width="232" height="100" y="0" clip-path="url(#clipPath5)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="white"> + <rect x="0" width="232" height="72" y="0" clip-path="url(#clipPath6)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(207,31)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,31)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath9)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath9)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath9)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="44" height="22" y="0" clip-path="url(#clipPath9)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath9)" stroke="none">width</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,54)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(207,55)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,55)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath11)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath11)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath11)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="49" height="22" y="0" clip-path="url(#clipPath11)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath11)" stroke="none">height</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,78)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(170,79)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath13)" stroke="none">boolean</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,79)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath14)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath14)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath14)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="110" height="22" y="0" clip-path="url(#clipPath14)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath14)" stroke="none">hasSolidBorder</text> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="rgb(232,232,232)"> + <rect x="0" width="232" height="28" y="0" clip-path="url(#clipPath15)" stroke="none"/> + </g> + <g fill="url(#linearGradient2)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="url(#linearGradient2)"> + <rect x="0" width="232" height="28" y="0" clip-path="url(#clipPath15)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(5,5)"> + <image x="2" y="3" clip-path="url(#clipPath16)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABGElEQVR42mNgoBAw ogs4b72r9oeRyRnINECTusDy/9/evd7Kt3Aa4Lj1Ydg/xn/OeG1kZDh+wFNxAYzP DGM4bL+f8J/hvx0RrpZViirierBswlUQhwnm7P//GSyJ9TfIlSA9IDYLiID6GQ7+ f/3M8n7lRMM/L58IgZ3Nxv5HtHjiXmQ1UD23WKB8lAADaf737ROncEr9IWZRye84 HGIA9wI6ANnMaeJ8F49mOGCiNB1gNYBFXObd9zN7lf++fs5JyABYGFxADgfB8Pzz oHB4O6fRDlcgQvVADAClMGCowg1g5Ob9I5RUcxqvzUA98IR0f9mkt6DE8Z/xvxJR /v7PtHeft+IhlJQISlnEGALSvN9bfhXVMhPFAABj9nS+zu6R5QAAAABJRU5ErkJg gg==" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath16)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAjElEQVR42mNgGAWM 6ALJW11q/jP+lwVL/md8PNd7Tws+A1jQBUCamf8z9ILYfxn/FxNyAQs2wdnee2+B 6KRtzgxkGQD3CsN/kCEz4f7F4iUmdI3zvPamx61zFoaFA7r30MWYsNm+KGjvWzjn L8MCRkamVSR7AQ6YGRL+//+HU5oJZ/wC/UuM2ChgYAAAYjIvl7Ex+6kAAAAASUVO RK5CYII=" height="16" preserveAspectRatio="none"/> + <text x="37" xml:space="preserve" y="17" clip-path="url(#clipPath16)" stroke="none">Rectangle</text> + </g> + </g> +</svg> diff --git a/Doc/Sd1/Ref/ObjectsAndClasses/rectangleGetPerimeter.svg b/Doc/Sd1/Ref/ObjectsAndClasses/rectangleGetPerimeter.svg new file mode 100644 index 0000000000000000000000000000000000000000..cf55ca11da0274dad7eea2d6a490a786f825c0ec --- /dev/null +++ b/Doc/Sd1/Ref/ObjectsAndClasses/rectangleGetPerimeter.svg @@ -0,0 +1,885 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:ns1="http://sozi.baierouge.fr" + 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" + sodipodi:docname="rectangleGetPerimeter.svg" + inkscape:version="0.92.1 r15371" + version="1.2" + id="svg2" + height="300" + width="821.33331"> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.2077062" + inkscape:cx="346.59726" + inkscape:cy="89.776511" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="true" + inkscape:window-width="1600" + inkscape:window-height="1105" + inkscape:window-x="0" + inkscape:window-y="0" + inkscape:window-maximized="1" + showguides="true" + inkscape:guide-bbox="true"> + <inkscape:grid + type="xygrid" + id="grid1569" /> + </sodipodi:namedview> + <defs + id="defs4"> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker11618" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Mend"> + <path + transform="matrix(-0.4,0,0,-0.4,-4,0)" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + id="path11616" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker2318" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path2316" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker4887" + style="overflow:visible" + inkscape:isstock="true"> + <path + id="path4627" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + transform="matrix(-0.8,0,0,-0.8,-10,0)" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker6797" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> + <path + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + id="path6799" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker6793" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> + <path + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + id="path6795" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker6778" + style="overflow:visible" + inkscape:isstock="true"> + <path + id="path6514" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lstart" + style="overflow:visible"> + <path + id="path3841" + d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareM" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareM"> + <path + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path3914" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lend" + style="overflow:visible"> + <path + id="path3844" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondM" + orient="auto" + refY="0" + refX="0" + id="DiamondM" + style="overflow:visible"> + <path + id="path3923" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondMH" + orient="auto" + refY="0" + refX="0" + id="DiamondMH" + style="overflow:visible"> + <path + id="path4656" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendB" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendB" + style="overflow:visible"> + <path + id="path4659" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMU" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMU"> + <path + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path5221" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend3" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lend3" + style="overflow:visible"> + <path + id="path5224" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondMo" + orient="auto" + refY="0" + refX="0" + id="DiamondMo" + style="overflow:visible"> + <path + id="path5799" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendO" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendO" + style="overflow:visible"> + <path + id="path5802" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondM1" + orient="auto" + refY="0" + refX="0" + id="DiamondM1" + style="overflow:visible"> + <path + id="path6393" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendV" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendV" + style="overflow:visible"> + <path + id="path6396" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMN" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMN"> + <path + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path7813" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LstartP" + orient="auto" + refY="0" + refX="0" + id="Arrow1LstartP" + style="overflow:visible"> + <path + id="path7816" + d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMb" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMb"> + <path + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path9491" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendX" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendX" + style="overflow:visible"> + <path + id="path9494" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareM8" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareM8"> + <path + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path10143" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendT" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendT" + style="overflow:visible"> + <path + id="path10146" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMNT" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMNT"> + <path + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path12195" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LstartPJ" + orient="auto" + refY="0" + refX="0" + id="Arrow1LstartPJ" + style="overflow:visible"> + <path + id="path12198" + d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMNTL" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMNTL"> + <path + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path12907" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lendx" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lendx" + style="overflow:visible"> + <path + id="path12910" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondMoY" + orient="auto" + refY="0" + refX="0" + id="DiamondMoY" + style="overflow:visible"> + <path + id="path13187" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendOe" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendOe" + style="overflow:visible"> + <path + id="path13190" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <linearGradient + id="linearGradient3928-8"> + <stop + offset="0" + style="stop-color:#7c7c7c" + id="stop3930-2" /> + <stop + offset="1" + style="stop-color:#e6e3e3" + id="stop3932-0" /> + </linearGradient> + <linearGradient + id="linearGradient8877"> + <stop + style="stop-color:#cecece;stop-opacity:1;" + offset="0" + id="stop8879" /> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="1" + id="stop8881" /> + </linearGradient> + <linearGradient + id="linearGradient8869"> + <stop + id="stop8871" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop8873" + offset="1" + style="stop-color:#000000;stop-opacity:1;" /> + </linearGradient> + <linearGradient + id="linearGradient7421"> + <stop + id="stop7423" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop7425" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient7405"> + <stop + style="stop-color:#9e9e9e;stop-opacity:1;" + offset="0" + id="stop7407" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop7409" /> + </linearGradient> + <linearGradient + id="linearGradient7378"> + <stop + id="stop7380" + offset="0" + style="stop-color:#9e9e9e;stop-opacity:1;" /> + <stop + id="stop7382" + offset="1" + style="stop-color:#ffffff;stop-opacity:1;" /> + </linearGradient> + <inkscape:perspective + id="perspective6864" + inkscape:persp3d-origin="32 : 21.333333 : 1" + inkscape:vp_z="64 : 32 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 32 : 1" + sodipodi:type="inkscape:persp3d" /> + <filter + id="imagebot_16" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_21" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14" + y2="-235.34229" + xlink:href="#linearGradient3928-8" + x2="33.162106" + y1="-192.16943" + x1="32.287571" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_18" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_16-6" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_21-1" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-8" + y2="-235.34229" + xlink:href="#linearGradient3928-8" + x2="33.162106" + y1="-192.16943" + x1="32.287571" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12-7" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_18-9" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-2" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_16-2" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_21-8" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-9" + y2="-235.34229" + xlink:href="#linearGradient3928-8" + x2="33.162106" + y1="-192.16943" + x1="32.287571" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12-73" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_18-6" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-1" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + style="color-interpolation-filters:sRGB" + id="imagebot_16-0"> + <feGaussianBlur + id="imagebot_21-7" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-5" + y2="-235.34229" + xlink:href="#linearGradient3928-8" + x2="33.162106" + y1="-192.16943" + x1="32.287571" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + style="color-interpolation-filters:sRGB" + id="imagebot_12-0" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215"> + <feGaussianBlur + id="imagebot_18-4" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-8" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_16-02" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_21-9" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-4" + y2="0.73097426" + xlink:href="#linearGradient3928-8" + x2="36.048218" + y1="43.90382" + x1="35.173683" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12-3" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_18-5" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-17" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker6793-6" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> + <path + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + id="path6795-8" + inkscape:connector-curvature="0" /> + </marker> + </defs> + <metadata + id="metadata7"> + <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> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,-822.51971)"> + <text + xml:space="preserve" + style="font-style:normal;font-weight:normal;font-size:12.80000019px;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.06666672" + x="104.51711" + y="415.68225" + id="text3004"><tspan + sodipodi:role="line" + id="tspan3006" + x="104.51711" + y="415.68225" + style="font-size:42.66666794px;line-height:1.25;font-family:sans-serif;stroke-width:1.06666672">Â </tspan></text> + <rect + style="fill:#f4e3d7;stroke:#000000;stroke-width:3.87298346;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect1184" + width="100" + height="140" + x="150" + y="902.51971" + ry="0" /> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + x="110.68594" + y="889.32806" + id="text1196"><tspan + sodipodi:role="line" + id="tspan1194" + x="110.68594" + y="889.32806" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#0000ff">width=20</tspan></text> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:1.25;font-family:monospace;-inkscape-font-specification:monospace;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + x="5.3691359" + y="963.10437" + id="text1200-6"><tspan + sodipodi:role="line" + id="tspan1198-2" + x="5.3691359" + y="963.10437" + style="fill:#008000">height</tspan><tspan + sodipodi:role="line" + x="5.3691359" + y="1009.7711" + style="fill:#008000" + id="tspan1718-9"> =30</tspan></text> + <g + id="g2964" + transform="translate(70,4.3890188e-6)"> + <path + sodipodi:nodetypes="cccccccc" + inkscape:connector-curvature="0" + id="path1751" + d="m 320,952.51972 h 180 l -40,-40 110,59.99998 -110,60 40,-40 H 320 Z" + style="fill:#ffaaaa;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" /> + <text + id="text1745" + y="981.34784" + x="326.05136" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + xml:space="preserve"><tspan + id="tspan1747" + y="981.34784" + x="326.05136" + sodipodi:role="line">get perimeter</tspan></text> + </g> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + x="755.73083" + y="984.16815" + id="text2959"><tspan + sodipodi:role="line" + id="tspan2957" + x="755.73083" + y="984.16815">100</tspan></text> + </g> + <script + ns1:version="14.10-05142318" + id="sozi-script">function namespace(b,d,a){var c=b;d.split(".").forEach(function(e){if(typeof c[e]==="undefined"){c[e]={}}c=c[e]});if(a){a(c,b)}return c}namespace(this,"sozi.events",function(b){var a={};b.listen=function(c,d){if(!a.hasOwnProperty(c)){a[c]=[]}a[c].push(d)};b.fire=function(d){var c=Array.prototype.slice.call(arguments,1);if(a.hasOwnProperty(d)){a[d].forEach(function(e){e.apply(null,c)})}}});namespace(this,"sozi.proto",function(a){a.Object={installConstructors:function(){function b(){}b.prototype=this;this.instance=function(){var c=new b();c.construct.apply(c,arguments);return c};this.subtype=function(d){var c=new b();c.augment(d);c.installConstructors();return c}},construct:function(){},augment:function(c){for(var b in c){if(c.hasOwnProperty(b)){this[b]=c[b]}}return this},bind:function(c){var b=this;return function(){return c.apply(b,arguments)}}};a.Object.installConstructors()});namespace(this,"sozi.actions",function(A,g){var u=namespace(g,"sozi.player");var v=namespace(g,"sozi.display");var n=g.document;var o=0;var w=1;var t=1.05;var y=5;var m=5;var r=false;var i=0;var h=0;function a(C,B,D){u.stop();v.viewPorts.player.zoom(C>0?t:1/t,B,D)}function x(B){u.stop();v.viewPorts.player.rotate(B>0?y:-y)}function s(){if(sozi.framelist.isVisible()){sozi.framelist.hide();u.restart()}else{u.stop();sozi.framelist.show()}}function d(B){return v.viewPorts.player.contains(B.clientX,B.clientY)}function f(B){if(!d(B)){return}if(B.button===o){n.documentElement.addEventListener("mousemove",q,false);r=false;i=B.clientX;h=B.clientY}else{if(B.button===w){s()}}B.stopPropagation();B.preventDefault()}function q(B){if(!d(B)){return}u.stop();if(!r&&(Math.abs(B.clientX-i)>m||Math.abs(B.clientY-h)>m)){r=true}if(r){sozi.events.fire("sozi.player.cleanup");v.viewPorts.player.drag(B.clientX-i,B.clientY-h);i=B.clientX;h=B.clientY}B.stopPropagation()}function c(B){if(!d(B)){return}if(B.button===o){n.documentElement.removeEventListener("mousemove",q,false)}B.stopPropagation();B.preventDefault()}function p(B){if(!d(B)){return}u.moveToPrevious();B.stopPropagation();B.preventDefault()}function e(B){if(!d(B)){return}if(!r&&B.button!==w){u.moveToNext()}B.stopPropagation();B.preventDefault()}function j(B){if(!d(B)){return}if(!B){B=g.event}var C=0;if(B.wheelDelta){C=B.wheelDelta}else{if(B.detail){C=-B.detail}}if(C!==0){if(B.shiftKey){x(C)}else{a(C,B.clientX,B.clientY)}}B.stopPropagation();B.preventDefault()}function l(B){if(B.altKey||B.ctrlKey||B.metaKey){return}switch(B.charCode||B.which){case 43:a(1,g.innerWidth/2,g.innerHeight/2);break;case 45:a(-1,g.innerWidth/2,g.innerHeight/2);break;case 61:u.moveToCurrent();break;case 70:case 102:u.showAll();break;case 84:case 116:s();break;case 82:x(-1);break;case 114:x(1);break;default:return}B.stopPropagation();B.preventDefault()}function b(B){if(B.altKey||B.ctrlKey||B.metaKey){return}switch(B.keyCode){case 36:if(B.shiftKey){u.jumpToFirst()}else{u.moveToFirst()}break;case 35:if(B.shiftKey){u.jumpToLast()}else{u.moveToLast()}break;case 38:case 33:case 37:if(B.shiftKey){u.jumpToPrevious()}else{u.moveToPrevious()}break;case 40:case 34:case 39:case 13:case 32:if(B.shiftKey){u.jumpToNext()}else{u.moveToNext()}break;default:return}B.stopPropagation();B.preventDefault()}function z(B){B.stopPropagation()}function k(){var C=n.getElementsByTagName("a");for(var D=0;D<C.length;D+=1){C[D].addEventListener("click",z,false);C[D].addEventListener("contextmenu",z,false)}var B=n.documentElement;B.addEventListener("click",e,false);B.addEventListener("mousedown",f,false);B.addEventListener("mouseup",c,false);B.addEventListener("contextmenu",p,false);B.addEventListener("DOMMouseScroll",j,false);g.onmousewheel=j;B.addEventListener("keypress",l,false);B.addEventListener("keydown",b,false)}sozi.events.listen("sozi.display.ready",k)});namespace(this,"sozi.animation",function(d,g){var h=g.mozRequestAnimationFrame||g.webkitRequestAnimationFrame||g.msRequestAnimationFrame||g.oRequestAnimationFrame;var k=function(){return g.performance&&g.performance.now?g.performance.now():Date.now()};d.setAnimationFrameHandlers=function(l,m){h=l;k=m};var i=40;var c;var j=[];function e(){if(j.length>0){if(h){h(e)}j.forEach(function(l){l.step(k())})}else{if(!h){g.clearInterval(c)}}}function b(){if(h){h(e)}else{c=g.setInterval(function(){e(k())},i)}}function a(l){j.push(l);if(j.length===1){b()}}function f(l){j.splice(j.indexOf(l),1)}d.Animator=sozi.proto.Object.subtype({construct:function(){this.durationMs=0;this.data=null;this.initialTime=0;this.started=false},start:function(l,m){this.durationMs=l;this.data=m;this.initialTime=k();this.onStep(0);if(!this.started){this.started=true;a(this)}},stop:function(){if(this.started){f(this);this.started=false}},step:function(m){var l=m-this.initialTime;if(l>=this.durationMs){this.stop();this.onStep(1);this.onDone()}else{this.onStep(l/this.durationMs)}},onStep:function(l){},onDone:function(){}});d.profiles={linear:function(l){return l},accelerate:function(l){return Math.pow(l,3)},"strong-accelerate":function(l){return Math.pow(l,5)},decelerate:function(l){return 1-Math.pow(1-l,3)},"strong-decelerate":function(l){return 1-Math.pow(1-l,5)},"accelerate-decelerate":function(l){var m=l<=0.5?l:1-l,n=Math.pow(2*m,3)/2;return l<=0.5?n:1-n},"strong-accelerate-decelerate":function(l){var m=l<=0.5?l:1-l,n=Math.pow(2*m,5)/2;return l<=0.5?n:1-n},"decelerate-accelerate":function(l){var m=l<=0.5?l:1-l,n=(1-Math.pow(1-2*m,2))/2;return l<=0.5?n:1-n},"strong-decelerate-accelerate":function(l){var m=l<=0.5?l:1-l,n=(1-Math.pow(1-2*m,3))/2;return l<=0.5?n:1-n},"immediate-beginning":function(l){return 1},"immediate-end":function(l){return l===1?1:0},"immediate-middle":function(l){return l>=0.5?1:0}}});namespace(this,"sozi.display",function(c,g){var f="http://www.w3.org/2000/svg";var b="http://www.w3.org/1999/xlink";var i=g.document;var k;var h;var j;c.viewPorts={};var e;c.CameraState=sozi.proto.Object.subtype({construct:function(){this.cx=this.cy=0;this.width=this.height=1;this.angle=0;this.clipped=true;this.transitionZoomPercent=0;this.transitionProfile=sozi.animation.profiles.linear;this.transitionPath=null},setCenter:function(l,m){this.cx=l;this.cy=m;return this},setSize:function(m,l){this.width=m;this.height=l;return this},setClipped:function(l){this.clipped=l;return this},setAngle:function(l){this.angle=(l+180)%360-180;return this},setRawAngle:function(l){this.angle=l;return this},setTransitionZoomPercent:function(l){this.transitionZoomPercent=l;return this},setTransitionProfile:function(l){this.transitionProfile=l;return this},setTransitionPath:function(l){this.transitionPath=l;return this},setAtElement:function(p){var s,o,t,m;if(p.nodeName==="rect"){s=p.x.baseVal.value;o=p.y.baseVal.value;t=p.width.baseVal.value;m=p.height.baseVal.value}else{var q=p.getBBox();s=q.x;o=q.y;t=q.width;m=q.height}var n=i.documentElement.createSVGPoint();n.x=s+t/2;n.y=o+m/2;var r=p.getCTM();n=n.matrixTransform(r);var l=Math.sqrt(r.a*r.a+r.b*r.b);return this.setCenter(n.x,n.y).setSize(t*l,m*l).setAngle(Math.atan2(r.b,r.a)*180/Math.PI)},setAtState:function(l){return this.setCenter(l.cx,l.cy).setSize(l.width,l.height).setAngle(l.angle).setClipped(l.clipped).setTransitionZoomPercent(l.transitionZoomPercent).setTransitionProfile(l.transitionProfile).setTransitionPath(l.transitionPath)},interpolatableAttributes:["width","height","angle"],interpolate:function(n,o,t,v,r){var p=1-t;for(var q=0;q<this.interpolatableAttributes.length;q+=1){var s=this.interpolatableAttributes[q];this[s]=o[s]*t+n[s]*p}var l=r?n.transitionPath:o.transitionPath;if(v&&l){var x=l.getTotalLength();if(r){var m=l.getPointAtLength(x);var u=l.getPointAtLength(0);var w=l.getPointAtLength(x*p)}else{var m=l.getPointAtLength(0);var u=l.getPointAtLength(x);var w=l.getPointAtLength(x*t)}this.cx=w.x+(o.cx-u.x)*t+(n.cx-m.x)*p;this.cy=w.y+(o.cy-u.y)*t+(n.cy-m.y)*p}else{this.cx=o.cx*t+n.cx*p;this.cy=o.cy*t+n.cy*p}}});c.Camera=c.CameraState.subtype({construct:function(n,o){c.CameraState.construct.call(this);this.viewPort=n;this.svgClipRect=i.createElementNS(f,"rect");var m=i.createElementNS(f,"clipPath");m.setAttribute("id","sozi-clip-path-"+n.id+"-"+o);m.appendChild(this.svgClipRect);n.svgGroup.appendChild(m);var l=i.createElementNS(f,"g");l.setAttribute("clip-path","url(#sozi-clip-path-"+n.id+"-"+o+")");n.svgGroup.appendChild(l);if(n.isPrimary){this.svgLayer=i.createElementNS(f,"g");this.svgLayer.appendChild(i.getElementById(o))}else{this.svgLayer=i.createElementNS(f,"use");this.svgLayer.setAttributeNS(b,"href","#"+o)}l.appendChild(this.svgLayer)},setAtState:function(l){return c.CameraState.setAtState.call(this,l).update()},getScale:function(){return Math.min(this.viewPort.width/this.width,this.viewPort.height/this.height)},rotate:function(l){return this.setAngle(this.angle+l).update()},zoom:function(m,l,n){return this.setSize(this.width/m,this.height/m).drag((1-m)*(l-this.viewPort.width/2),(1-m)*(n-this.viewPort.height/2))},drag:function(m,l){var q=this.getScale();var o=this.angle*Math.PI/180;var n=Math.sin(o);var p=Math.cos(o);return this.setCenter(this.cx-(m*p-l*n)/q,this.cy-(m*n+l*p)/q).setClipped(false).update()},update:function(){var q=this.getScale();var n=this.width*q;var m=this.height*q;var l=(this.viewPort.width-n)/2;var r=(this.viewPort.height-m)/2;this.svgClipRect.setAttribute("x",this.clipped?l:0);this.svgClipRect.setAttribute("y",this.clipped?r:0);this.svgClipRect.setAttribute("width",this.clipped?n:this.viewPort.width);this.svgClipRect.setAttribute("height",this.clipped?m:this.viewPort.height);var p=-this.cx+this.width/2+l/q;var o=-this.cy+this.height/2+r/q;this.svgLayer.setAttribute("transform","scale("+q+")translate("+p+","+o+")rotate("+(-this.angle)+","+this.cx+","+this.cy+")");return this}});c.ViewPort=sozi.proto.Object.subtype({construct:function(n,m,l){this.id=n;c.viewPorts[n]=this;this.isPrimary=!!l;if(this.isPrimary){if(e){throw"Failed to create a primary viewport. A primary viewport already exists."}else{e=this}}this.svgGroup=i.createElementNS(f,"g");this.svgGroup.setAttribute("class","sozi-viewport");this.svgGroup.setAttribute("id","sozi-viewport-"+n);i.documentElement.appendChild(this.svgGroup);this.setLocation(0,0).setSize(g.innerWidth,g.innerHeight);this.cameras={};m.forEach(function(o){this.cameras[o]=c.Camera.instance(this,o)},this)},setSize:function(m,l){this.width=m;this.height=l;return this},setLocation:function(l,m){this.x=l;this.y=m;return this},contains:function(l,m){return l>=this.x&&l<this.x+this.width&&m>=this.y&&m<this.y+this.height},getDocumentState:function(){var m=c.CameraState.instance().setCenter(k.x+k.width/2,k.y+k.height/2).setSize(k.width,k.height).setClipped(false);var l={};for(var n in this.cameras){l[n]=m}return l},update:function(){this.svgGroup.setAttribute("transform","translate("+this.x+","+this.y+")");for(var l in this.cameras){this.cameras[l].update()}return this},showFrame:function(l){for(var m in l.states){this.cameras[m].setAtState(l.states[m])}return this},drag:function(m,l){for(var n in this.cameras){this.cameras[n].drag(m,l)}return this},zoom:function(m,l,o){for(var n in this.cameras){this.cameras[n].zoom(m,l,o)}return this},rotate:function(l){for(var m in this.cameras){this.cameras[m].rotate(l)}return this},onWindowResize:function(m,l){this.setLocation(this.x*m,this.y*l).setSize(this.width*m,this.height*l).update()}});function d(){var l=i.documentElement;k=l.getBBox();h=g.innerWidth;j=g.innerHeight;l.setAttribute("width",h);l.setAttribute("height",j);sozi.events.fire("sozi.display.ready")}function a(){var l=i.documentElement;l.setAttribute("width",g.innerWidth);l.setAttribute("height",g.innerHeight);for(var m in c.viewPorts){c.viewPorts[m].onWindowResize(g.innerWidth/h,g.innerHeight/j)}h=g.innerWidth;j=g.innerHeight}sozi.events.listen("sozi.document.ready",d);g.addEventListener("resize",a,false)});namespace(this,"sozi.document",function(c,e){var g=e.document;var b="http://sozi.baierouge.fr";var d={title:"Untitled",sequence:"0",hide:"true",clip:"true","show-in-frame-list":"true","timeout-enable":"false","timeout-ms":"5000","transition-duration-ms":"1000","transition-zoom-percent":"0","transition-profile":"linear","transition-path-hide":"true"};var h=["g","image","path","rect","circle","ellipse","line","polyline","polygon","text","clippath"];c.frames=[];c.idLayerList=[];function j(l,k){return l.getAttributeNS(b,k)||d[k]}function i(o,p,k){var l=o.states[p]=o.states[p]||sozi.display.CameraState.instance();if(typeof l.transitionZoomPercent==="undefined"||k.hasAttributeNS(b,"transition-zoom-percent")){l.setTransitionZoomPercent(parseInt(j(k,"transition-zoom-percent"),10))}if(typeof l.transitionProfile==="undefined"||k.hasAttributeNS(b,"transition-profile")){l.setTransitionProfile(sozi.animation.profiles[j(k,"transition-profile")])}if(typeof l.transitionPath==="undefined"||k.hasAttributeNS(b,"transition-path")){var n=g.getElementById(k.getAttributeNS(b,"transition-path"));if(n&&n.nodeName==="path"){l.setTransitionPath(n);if(j(k,"transition-path-hide")==="true"){n.style.visibility="hidden"}}}if(k.hasAttributeNS(b,"refid")){var m=g.getElementById(k.getAttributeNS(b,"refid"));if(m){l.setAtElement(m);if(j(k,"hide")==="true"){m.style.visibility="hidden"}}}if(k.hasAttributeNS(b,"clip")){l.setClipped(j(k,"clip")==="true")}}function a(){var l=[];var p=g.getElementsByTagNameNS(b,"layer");for(var n=0;n<p.length;n+=1){var s=p[n].getAttributeNS(b,"group");if(s&&l.indexOf(s)===-1){l.push(s)}}var r=g.documentElement;var o="http://www.w3.org/2000/svg";var q=g.createElementNS(o,"g");var k=Array.prototype.slice.call(r.childNodes);k.forEach(function(u,t){if(!u.getAttribute){r.removeChild(u)}else{if(l.indexOf(u.getAttribute("id"))!==-1){if(q.firstChild){q.setAttribute("id","sozi-wrapper-"+t);c.idLayerList.push("sozi-wrapper-"+t);r.insertBefore(q,u);q=g.createElementNS(o,"g")}c.idLayerList.push(u.getAttribute("id"))}else{if(h.indexOf(u.localName.toLowerCase())!==-1){r.removeChild(u);q.appendChild(u)}}}});if(q.firstChild){q.setAttribute("id","sozi-wrapper-"+k.length);c.idLayerList.push("sozi-wrapper-"+k.length);r.appendChild(q)}var m=Array.prototype.slice.call(g.getElementsByTagNameNS(b,"frame"));m.sort(function(u,t){var w=parseInt(j(u,"sequence"),10);var v=parseInt(j(t,"sequence"),10);return w-v});m.forEach(function(v,u){var x={id:v.getAttribute("id"),title:j(v,"title"),showInFrameList:j(v,"show-in-frame-list")==="true",sequence:parseInt(j(v,"sequence"),10),timeoutEnable:j(v,"timeout-enable")==="true",timeoutMs:parseInt(j(v,"timeout-ms"),10),transitionDurationMs:parseInt(j(v,"transition-duration-ms"),10),states:{}};c.idLayerList.forEach(function(A){if(u===0||A.search("sozi-wrapper-[0-9]+")!==-1){i(x,A,v)}else{var z=x.states[A]=sozi.display.CameraState.instance();var y=c.frames[c.frames.length-1].states[A];z.setAtState(y)}});var t=Array.prototype.slice.call(v.getElementsByTagNameNS(b,"layer"));t.forEach(function(y){var z=y.getAttributeNS(b,"group");if(z&&c.idLayerList.indexOf(z)!==-1){i(x,z,y)}});for(var w in x.states){if(x.states.hasOwnProperty(w)){c.frames.push(x);break}}})}c.getFrameIndexForId=function(l){for(var k=0;k<c.frames.length;k+=1){if(c.frames[k].id===l){return k}}return -1};function f(){g.documentElement.removeAttribute("viewBox");a();sozi.events.fire("sozi.document.ready")}e.addEventListener("load",f,false)});namespace(this,"sozi.framelist",function(u,k){var o=k.document;var c=5;var i;var p;var j=0;var h;var s;var b;var v;var w;var t;var e=300;var f="decelerate";var a="http://www.w3.org/2000/svg";function n(z){var x=z.relatedTarget,y=o.documentElement;while(x&&x!==i&&x!==y){x=x.parentNode}if(x!==i){u.hide();sozi.player.restart();z.stopPropagation()}}function r(y){var x=p.getCTM().f;if(x<=-k.innerHeight/2){x+=k.innerHeight/2}else{if(x<0){x=0}}p.setAttribute("transform","translate(0,"+x+")");y.stopPropagation()}function d(y){var x=p.getCTM().f;if(x+j>=k.innerHeight*3/2){x-=k.innerHeight/2}else{if(x+j>k.innerHeight+2*c){x=k.innerHeight-j-4*c}}p.setAttribute("transform","translate(0,"+x+")");y.stopPropagation()}function g(x){return function(y){sozi.player.previewFrame(x);y.stopPropagation()}}function l(x){x.stopPropagation()}function q(){i=o.createElementNS(a,"g");i.setAttribute("id","sozi-toc");o.documentElement.appendChild(i);p=o.createElementNS(a,"g");i.appendChild(p);var y=o.createElementNS(a,"rect");y.setAttribute("id","sozi-toc-background");y.setAttribute("x",c);y.setAttribute("y",c);y.setAttribute("rx",c);y.setAttribute("ry",c);y.addEventListener("click",l,false);y.addEventListener("mousedown",l,false);y.addEventListener("mouseout",n,false);p.appendChild(y);var A=0;sozi.document.frames.forEach(function(D,E){if(D.showInFrameList){var C=o.createElementNS(a,"text");C.appendChild(o.createTextNode(D.title));C.setAttribute("id","sozi-toc-"+D.id);p.appendChild(C);if(E===sozi.player.currentFrameIndex){C.setAttribute("class","sozi-toc-current")}var B=C.getBBox().width;j+=C.getBBox().height;if(B>A){A=B}C.setAttribute("x",2*c);C.setAttribute("y",j+c);C.addEventListener("click",g(E),false);C.addEventListener("mousedown",l,false)}});var x=o.createElementNS(a,"path");x.setAttribute("class","sozi-toc-arrow");x.setAttribute("d","M"+(A+3*c)+","+(5*c)+" l"+(4*c)+",0 l-"+(2*c)+",-"+(3*c)+" z");x.addEventListener("click",r,false);x.addEventListener("mousedown",l,false);i.appendChild(x);var z=o.createElementNS(a,"path");z.setAttribute("class","sozi-toc-arrow");z.setAttribute("d","M"+(A+3*c)+","+(7*c)+" l"+(4*c)+",0 l-"+(2*c)+","+(3*c)+" z");z.addEventListener("click",d,false);z.addEventListener("mousedown",l,false);i.appendChild(z);y.setAttribute("width",A+7*c);y.setAttribute("height",j+2*c);h=-A-9*c;s=0;w=v=h;i.setAttribute("transform","translate("+h+",0)");t=sozi.animation.Animator.instance().augment({onStep:function(B){var D=sozi.animation.profiles[f](B),C=1-D;w=v*D+b*C;i.setAttribute("transform","translate("+w+",0)")}})}function m(x){var y=Array.prototype.slice.call(o.getElementsByClassName("sozi-toc-current"));y.forEach(function(A){A.removeAttribute("class")});var z=sozi.document.frames[x];if(z.showInFrameList){o.getElementById("sozi-toc-"+z.id).setAttribute("class","sozi-toc-current")}}u.show=function(){o.documentElement.appendChild(i);b=w;v=s;t.start(e)};u.hide=function(){b=w;v=h;t.start(e)};u.isVisible=function(){return v===s};sozi.events.listen("sozi.player.ready",q);sozi.events.listen("sozi.player.cleanup",u.hide);sozi.events.listen("sozi.player.framechange",m)});namespace(this,"sozi.framenumber",function(a,d){var g=d.document;var e;var k,i;var f;var b="http://www.w3.org/2000/svg";function h(){var m=k.getBBox(),n=Math.max(m.width,m.height)*0.75,l=n*1.25;f.setAttribute("r",n);e.setAttribute("transform","translate("+l+","+l+")")}function c(){e=g.createElementNS(b,"g");k=g.createElementNS(b,"text");f=g.createElementNS(b,"circle");e.setAttribute("id","sozi-framenumber");f.setAttribute("cx",0);f.setAttribute("cy",0);e.appendChild(f);i=g.createTextNode(sozi.player.currentFrameIndex+1);k.setAttribute("text-anchor","middle");k.setAttribute("dominant-baseline","central");k.setAttribute("x",0);k.setAttribute("y",0);k.appendChild(i);e.appendChild(k);g.documentElement.appendChild(e);h()}function j(l){i.nodeValue=l+1}sozi.events.listen("sozi.player.ready",c);sozi.events.listen("sozi.player.framechange",j)});namespace(this,"sozi.links",function(c,e){var b="http://www.w3.org/2000/svg";var a="http://www.w3.org/1999/xlink";function f(g){return function(h){sozi.player.moveToFrame(g);h.preventDefault();h.stopPropagation()}}function d(){var h=e.document.getElementsByTagNameNS(b,"a");for(var j=0;j<h.length;j+=1){var g=h[j].getAttributeNS(a,"href");if(g&&g[0]==="#"){h[j].addEventListener("click",f(sozi.location.getFrameIndexForHash(g)),false)}}}sozi.events.listen("sozi.document.ready",d)});namespace(this,"sozi.location",function(a,d){var b=false;a.getFrameIndex=function(){return a.getFrameIndexForHash(d.location.hash)};a.getFrameIndexForHash=function(g){var h=g?g.slice(1):"1";var f;if(/^[0-9]+$/.test(h)){f=parseInt(h,10)-1}else{f=sozi.document.getFrameIndexForId(h)}if(f<0){return 0}else{if(f>=sozi.document.frames.length){return sozi.document.frames.length-1}else{return f}}};function e(){var f=a.getFrameIndex();if(!b){sozi.player.moveToFrame(f)}b=false}function c(f){b=true;d.location.hash="#"+sozi.document.frames[f].id}d.addEventListener("hashchange",e,false);sozi.events.listen("sozi.player.framechange",c)});namespace(this,"sozi.player",function(d,g){var l;var c;var i;var e=500;var n=-10;var j="linear";var f=0;d.currentFrameIndex=0;var k=false;var m=false;function h(){if(sozi.document.frames[d.currentFrameIndex].timeoutEnable){m=true;var o=(d.currentFrameIndex+1)%sozi.document.frames.length;i=g.setTimeout(function(){d.moveToFrame(o)},sozi.document.frames[d.currentFrameIndex].timeoutMs)}}d.startFromIndex=function(o){k=true;m=false;f=o;d.currentFrameIndex=o;l.showFrame(sozi.document.frames[o]);h()};d.restart=function(){d.startFromIndex(d.currentFrameIndex)};d.stop=function(){c.stop();if(m){g.clearTimeout(i);m=false}k=false;f=d.currentFrameIndex};function b(o,y,w){var z={ss:((o<0)?Math.max(y,w):Math.min(y,w))*(100-o)/100,ts:0.5,k:0};if(o!==0){var s=y-w;var r=y-z.ss;var q=w-z.ss;if(s!==0){var p=Math.sqrt(r*q);var x=(r-p)/s;var t=(r+p)/s;z.ts=(x>0&&x<=1)?x:t}z.k=r/z.ts/z.ts}return z}d.jumpToFrame=function(o){d.stop();sozi.events.fire("sozi.player.cleanup");f=o;d.currentFrameIndex=o;l.showFrame(sozi.document.frames[o]);sozi.events.fire("sozi.player.framechange",o)};d.getAnimationData=function(o,q,s,p,v,t){var r={};for(var w in o){r[w]={initialState:sozi.display.CameraState.instance(),finalState:sozi.display.CameraState.instance(),useTransitionPath:v,reverseTransitionPath:t};r[w].profile=p||q[w].transitionProfile;r[w].initialState.setAtState(o[w]);if(q.hasOwnProperty(w)){r[w].finalState.setAtState(q[w])}else{r[w].finalState.setAtState(o[w])}if(r[w].finalState.angle-r[w].initialState.angle>180){r[w].finalState.setRawAngle(r[w].finalState.angle-360)}else{if(r[w].finalState.angle-r[w].initialState.angle<-180){r[w].initialState.setRawAngle(r[w].initialState.angle-360)}}var u=s||q[w].transitionZoomPercent;if(u&&q.hasOwnProperty(w)){r[w].zoomWidth=b(u,o[w].width,q[w].width);r[w].zoomHeight=b(u,o[w].height,q[w].height)}}return r};d.previewFrame=function(o){d.currentFrameIndex=o;c.start(e,d.getAnimationData(l.cameras,sozi.document.frames[o].states,n,sozi.animation.profiles[j]),false,false);sozi.events.fire("sozi.player.framechange",o)};d.moveToFrame=function(r){if(m){g.clearTimeout(i);m=false}var q,t,s,p,o;if(r===(d.currentFrameIndex-1)%sozi.document.frames.length){q=sozi.document.frames[d.currentFrameIndex].transitionDurationMs;t=undefined;s=undefined;p=true;o=true}else{if(r===(d.currentFrameIndex+1)%sozi.document.frames.length){q=sozi.document.frames[r].transitionDurationMs;t=undefined;s=undefined;p=true;o=false}else{q=e;t=n;s=sozi.animation.profiles[j];p=false;o=false}}sozi.events.fire("sozi.player.cleanup");k=true;d.currentFrameIndex=r;c.start(q,d.getAnimationData(l.cameras,sozi.document.frames[r].states,t,s,p,o));sozi.events.fire("sozi.player.framechange",r)};d.jumpToFirst=function(){d.jumpToFrame(0)};d.moveToFirst=function(){d.moveToFrame(0)};d.jumpToPrevious=function(){var o=d.currentFrameIndex;if(!c.started||f<=d.currentFrameIndex){o-=1}if(o>=0){d.jumpToFrame(o)}};d.moveToPrevious=function(){for(var o=d.currentFrameIndex-1;o>=0;o-=1){var p=sozi.document.frames[o];if(!p.timeoutEnable||p.timeoutMs!==0){d.moveToFrame(o);break}}};d.jumpToNext=function(){var o=d.currentFrameIndex;if(!c.started||f>=d.currentFrameIndex){o+=1}if(o<sozi.document.frames.length){d.jumpToFrame(o)}};d.moveToNext=function(){if(d.currentFrameIndex<sozi.document.frames.length-1||sozi.document.frames[d.currentFrameIndex].timeoutEnable){d.moveToFrame((d.currentFrameIndex+1)%sozi.document.frames.length)}};d.jumpToLast=function(){d.jumpToFrame(sozi.document.frames.length-1)};d.moveToLast=function(){d.moveToFrame(sozi.document.frames.length-1)};d.moveToCurrent=function(){d.moveToFrame(d.currentFrameIndex)};d.showAll=function(){d.stop();sozi.events.fire("sozi.player.cleanup");c.start(e,d.getAnimationData(l.cameras,l.getDocumentState(),n,sozi.animation.profiles[j],false,false))};function a(){l=sozi.display.ViewPort.instance("player",sozi.document.idLayerList,true);d.startFromIndex(sozi.location.getFrameIndex());g.setTimeout(l.bind(l.update),1);sozi.events.fire("sozi.player.ready")}d.onAnimationStep=function(o,q){for(var s in q){var p=l.cameras[s];p.interpolate(q[s].initialState,q[s].finalState,q[s].profile(o),q[s].useTransitionPath,q[s].reverseTransitionPath);var r;if(q[s].zoomWidth&&q[s].zoomWidth.k!==0){r=o-q[s].zoomWidth.ts;p.width=q[s].zoomWidth.k*r*r+q[s].zoomWidth.ss}if(q[s].zoomHeight&&q[s].zoomHeight.k!==0){r=o-q[s].zoomHeight.ts;p.height=q[s].zoomHeight.k*r*r+q[s].zoomHeight.ss}p.setClipped(q[s].finalState.clipped)}l.update()};c=sozi.animation.Animator.instance().augment({onStep:function(o){d.onAnimationStep(o,this.data)},onDone:function(){for(var o in this.data){l.cameras[o].setAtState(this.data[o].finalState)}l.update();f=d.currentFrameIndex;if(k){h()}}});sozi.events.listen("sozi.display.ready",a)});</script> + <style + ns1:version="14.10-05142318" + id="sozi-style">#sozi-toc text{fill:#eff;font-family:Verdana,sans-serif;font-size:12pt}#sozi-toc text:hover{fill:#0cf;cursor:pointer}#sozi-toc text.sozi-toc-current{fill:#fa4}#sozi-toc-background{stroke:#222;stroke-opacity:.1;stroke-width:10;fill:#222;fill-opacity:.9}.sozi-toc-arrow{fill:#eff;fill-opacity:.75;stroke:none}.sozi-toc-arrow:hover{fill:#0cf}#sozi-framenumber circle{stroke:#222;stroke-opacity:.1;stroke-width:4;fill:#222;fill-opacity:.9}#sozi-framenumber text{fill:#eff;font-family:Verdana,sans-serif;font-size:12pt}</style> + <ns1:frame + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="1" + ns1:title="Gcd implementation" + ns1:refid="rect10351" /> + <ns1:frame + ns1:refid="rect10841" + ns1:title="Gcd maven packaging" + ns1:sequence="2" + ns1:hide="true" + ns1:clip="true" + ns1:show-in-frame-list="true" + ns1:timeout-enable="false" + ns1:timeout-ms="5000.0" + ns1:transition-duration-ms="1000.0" + ns1:transition-zoom-percent="0.0" + ns1:transition-profile="linear" + ns1:transition-path-hide="true" /> + <ns1:frame + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="3" + ns1:title="Using Math.getGcd()" + ns1:refid="rect11089" /> + <ns1:frame + ns1:refid="rect11381" + ns1:title="Fraction project" + ns1:sequence="4" + ns1:hide="true" + ns1:clip="true" + ns1:show-in-frame-list="true" + ns1:timeout-enable="false" + ns1:timeout-ms="5000.0" + ns1:transition-duration-ms="1000.0" + ns1:transition-zoom-percent="0.0" + ns1:transition-profile="linear" + ns1:transition-path-hide="true" /> + <ns1:frame + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="5" + ns1:title="Maven dependency definition" + ns1:refid="rect11637" /> + <ns1:frame + ns1:refid="rect11895" + ns1:title="Fraction depends on Gcd" + ns1:sequence="6" + ns1:hide="true" + ns1:clip="true" + ns1:show-in-frame-list="true" + ns1:timeout-enable="false" + ns1:timeout-ms="5000" + ns1:transition-duration-ms="1000" + ns1:transition-zoom-percent="0" + ns1:transition-profile="linear" + ns1:transition-path-hide="true" /> +</svg> diff --git a/Doc/Sd1/Ref/ObjectsAndClasses/rectangleGetPerimeterMethodUml.svg b/Doc/Sd1/Ref/ObjectsAndClasses/rectangleGetPerimeterMethodUml.svg new file mode 100644 index 0000000000000000000000000000000000000000..13bc3ef1cd1fd475fc77994047fc9821dee7e5d2 --- /dev/null +++ b/Doc/Sd1/Ref/ObjectsAndClasses/rectangleGetPerimeterMethodUml.svg @@ -0,0 +1,274 @@ +<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill-opacity="1" color-rendering="auto" color-interpolation="auto" text-rendering="auto" stroke="black" stroke-linecap="square" width="276" stroke-miterlimit="10" shape-rendering="auto" stroke-opacity="1" fill="black" stroke-dasharray="none" font-weight="normal" stroke-width="1" height="193" font-family="'Dialog'" font-style="normal" stroke-linejoin="miter" font-size="12" stroke-dashoffset="0" image-rendering="auto"> + <!--Generated by ySVG--> + <defs id="genericDefs"/> + <g> + <defs id="defs1"> + <linearGradient x1="0" gradientUnits="userSpaceOnUse" x2="0" y1="0" y2="28" id="linearGradient1" spreadMethod="pad"> + <stop stop-opacity="1" stop-color="rgb(255,255,245)" offset="0%"/> + <stop stop-opacity="1" stop-color="rgb(215,213,172)" offset="100%"/> + </linearGradient> + <linearGradient x1="0" gradientUnits="userSpaceOnUse" x2="0" y1="0" y2="28" id="linearGradient2" spreadMethod="pad"> + <stop stop-opacity="1" stop-color="rgb(255,255,245)" offset="0%"/> + <stop stop-opacity="1" stop-color="rgb(215,213,172)" offset="100%"/> + </linearGradient> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath1"> + <path d="M0 0 L276 0 L276 193 L0 193 L0 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath2"> + <path d="M-20 -20 L256 -20 L256 173 L-20 173 L-20 -20 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath3"> + <path d="M0 0 L0 153 L236 153 L236 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath4"> + <path d="M0 0 L0 151 L234 151 L234 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath5"> + <path d="M0 0 L0 149 L232 149 L232 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath6"> + <path d="M0 0 L0 121 L232 121 L232 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath7"> + <path d="M0 0 L0 24 L232 24 L232 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath8"> + <path d="M0 0 L0 22 L25 22 L25 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath9"> + <path d="M0 0 L0 22 L80 22 L80 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath10"> + <path d="M0 24 L0 48 L232 48 L232 24 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath11"> + <path d="M0 0 L0 22 L85 22 L85 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath12"> + <path d="M0 48 L0 72 L232 72 L232 48 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath13"> + <path d="M0 0 L0 22 L62 22 L62 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath14"> + <path d="M0 0 L0 22 L146 22 L146 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath15"> + <path d="M0 72 L0 73 L232 73 L232 72 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath16"> + <path d="M0 0 L0 1 L232 1 L232 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath17"> + <path d="M0 73 L0 97 L232 97 L232 73 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath18"> + <path d="M0 0 L0 22 L36 22 L36 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath19"> + <path d="M0 0 L0 22 L103 22 L103 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath20"> + <path d="M0 97 L0 121 L232 121 L232 97 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath21"> + <path d="M0 0 L0 22 L141 22 L141 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath22"> + <path d="M0 0 L0 28 L232 28 L232 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath23"> + <path d="M0 0 L0 22 L226 22 L226 0 Z"/> + </clipPath> + </defs> + <g fill="white" transform="translate(20,20)" stroke="white"> + <rect x="-20" width="276" height="193" y="-20" clip-path="url(#clipPath2)" stroke="none"/> + </g> + <g fill="gray" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20)" stroke="gray"> + <rect x="2" width="234" height="1" y="152" clip-path="url(#clipPath3)" stroke="none"/> + <rect x="235" width="1" height="151" y="2" clip-path="url(#clipPath3)" stroke="none"/> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(1,1)" stroke="rgb(232,232,232)"> + <rect x="0" width="234" height="151" y="0" clip-path="url(#clipPath4)" stroke="none"/> + </g> + <g fill="silver" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(1,1)" stroke="silver"> + <path d="M0 0 L234 0 L234 151 L0 151 L0 0 ZM1 1 L233 1 L233 150 L1 150 L1 1 Z" fill-rule="evenodd" clip-path="url(#clipPath4)" stroke="none"/> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="rgb(232,232,232)"> + <rect x="0" width="232" height="149" y="0" clip-path="url(#clipPath5)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="white"> + <rect x="0" width="232" height="121" y="0" clip-path="url(#clipPath6)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(207,31)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,31)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath9)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath9)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath9)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="44" height="22" y="0" clip-path="url(#clipPath9)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath9)" stroke="none">width</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,54)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(207,55)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,55)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath11)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath11)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath11)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="49" height="22" y="0" clip-path="url(#clipPath11)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath11)" stroke="none">height</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,78)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(170,79)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath13)" stroke="none">boolean</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,79)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath14)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath14)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath14)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="110" height="22" y="0" clip-path="url(#clipPath14)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath14)" stroke="none">hasSolidBorder</text> + </g> + <g fill="gray" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="gray"> + <rect x="0" width="232" height="1" y="72" clip-path="url(#clipPath15)" stroke="none"/> + </g> + <g fill="gray" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,102)" stroke="gray"> + <rect x="0" width="232" height="1" y="0" clip-path="url(#clipPath16)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,103)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(196,104)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath18)" stroke="none">void</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,104)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath19)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath19)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABC0lEQVR42mNgoBAw ogv86F2oxvT3r/M/BgYDZHEmBoYL/5iZ93IUx9/CacDP7rlh//8zOuOzkYnh/3G2 suQFMD4zjPGra27CfwZGO0JOBqqRrXXz42rZvekq1GUQZ/9jYLQk1t8gV4L0wA0A +ZnUwIPpYQERyAF24sl9of4Te01hfAV+4XcPPr4VgrE7XQNPI+thwWVDoYXz6Suv ngrtvndD2V9d/wYPG9ufpZdP62AGKg5gIaP4TkdM+h2IHaVr+lCMm+879lihEDDB EgkZGi/AExI4Sv7+LSbJBGbmXlCqBCekll0b3oISB9A8JaLSP+P/vRwliYdQUiIo ZRFjCEgze2nyKqplJooBAPLmaJ/uO4SyAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath19)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAjElEQVR42mNgGAWM 6ALJW11q/jP+lwVL/md8PNd7Tws+A1jQBUCamf8z9ILYfxn/FxNyAQs2wdnee2+B 6KRtzgxkGQD3CsN/kCEz4f7F4iUmdI3zvPamx61zFoaFA7r30MWYsNm+KGjvWzjn L8MCRkamVSR7AQ6YGRL+//+HU5oJZ/wC/UuM2ChgYAAAYjIvl7Ex+6kAAAAASUVO RK5CYII=" height="16" preserveAspectRatio="none"/> + <rect x="36" width="67" height="22" y="0" clip-path="url(#clipPath19)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath19)" stroke="none">scale(int)</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,127)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(207,128)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,128)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath21)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath21)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABC0lEQVR42mNgoBAw ogv86F2oxvT3r/M/BgYDZHEmBoYL/5iZ93IUx9/CacDP7rlh//8zOuOzkYnh/3G2 suQFMD4zjPGra27CfwZGO0JOBqqRrXXz42rZvekq1GUQZ/9jYLQk1t8gV4L0wA0A +ZnUwIPpYQERyAF24sl9of4Te01hfAV+4XcPPr4VgrE7XQNPI+thwWVDoYXz6Suv ngrtvndD2V9d/wYPG9ufpZdP62AGKg5gIaP4TkdM+h2IHaVr+lCMm+879lihEDDB EgkZGi/AExI4Sv7+LSbJBGbmXlCqBCekll0b3oISB9A8JaLSP+P/vRwliYdQUiIo ZRFjCEgze2nyKqplJooBAPLmaJ/uO4SyAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath21)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAjElEQVR42mNgGAWM 6ALJW11q/jP+lwVL/md8PNd7Tws+A1jQBUCamf8z9ILYfxn/FxNyAQs2wdnee2+B 6KRtzgxkGQD3CsN/kCEz4f7F4iUmdI3zvPamx61zFoaFA7r30MWYsNm+KGjvWzjn L8MCRkamVSR7AQ6YGRL+//+HU5oJZ/wC/UuM2ChgYAAAYjIvl7Ex+6kAAAAASUVO RK5CYII=" height="16" preserveAspectRatio="none"/> + <rect x="36" width="105" height="22" y="0" clip-path="url(#clipPath21)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath21)" stroke="none">getPerimeter()</text> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="rgb(232,232,232)"> + <rect x="0" width="232" height="28" y="0" clip-path="url(#clipPath22)" stroke="none"/> + </g> + <g fill="url(#linearGradient1)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="url(#linearGradient1)"> + <rect x="0" width="232" height="28" y="0" clip-path="url(#clipPath22)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(5,5)"> + <image x="2" y="3" clip-path="url(#clipPath23)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABGElEQVR42mNgoBAw ogs4b72r9oeRyRnINECTusDy/9/evd7Kt3Aa4Lj1Ydg/xn/OeG1kZDh+wFNxAYzP DGM4bL+f8J/hvx0RrpZViirierBswlUQhwnm7P//GSyJ9TfIlSA9IDYLiID6GQ7+ f/3M8n7lRMM/L58IgZ3Nxv5HtHjiXmQ1UD23WKB8lAADaf737ROncEr9IWZRye84 HGIA9wI6ANnMaeJ8F49mOGCiNB1gNYBFXObd9zN7lf++fs5JyABYGFxADgfB8Pzz oHB4O6fRDlcgQvVADAClMGCowg1g5Ob9I5RUcxqvzUA98IR0f9mkt6DE8Z/xvxJR /v7PtHeft+IhlJQISlnEGALSvN9bfhXVMhPFAABj9nS+zu6R5QAAAABJRU5ErkJg gg==" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath23)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAjElEQVR42mNgGAWM 6ALJW11q/jP+lwVL/md8PNd7Tws+A1jQBUCamf8z9ILYfxn/FxNyAQs2wdnee2+B 6KRtzgxkGQD3CsN/kCEz4f7F4iUmdI3zvPamx61zFoaFA7r30MWYsNm+KGjvWzjn L8MCRkamVSR7AQ6YGRL+//+HU5oJZ/wC/UuM2ChgYAAAYjIvl7Ex+6kAAAAASUVO RK5CYII=" height="16" preserveAspectRatio="none"/> + <text x="37" xml:space="preserve" y="17" clip-path="url(#clipPath23)" stroke="none">Rectangle</text> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="rgb(232,232,232)"> + <rect x="0" width="232" height="149" y="0" clip-path="url(#clipPath5)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="white"> + <rect x="0" width="232" height="121" y="0" clip-path="url(#clipPath6)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(207,31)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,31)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath9)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath9)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath9)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="44" height="22" y="0" clip-path="url(#clipPath9)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath9)" stroke="none">width</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,54)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(207,55)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,55)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath11)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath11)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath11)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="49" height="22" y="0" clip-path="url(#clipPath11)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath11)" stroke="none">height</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,78)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(170,79)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath13)" stroke="none">boolean</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,79)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath14)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath14)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath14)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="110" height="22" y="0" clip-path="url(#clipPath14)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath14)" stroke="none">hasSolidBorder</text> + </g> + <g fill="gray" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="gray"> + <rect x="0" width="232" height="1" y="72" clip-path="url(#clipPath15)" stroke="none"/> + </g> + <g fill="gray" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,102)" stroke="gray"> + <rect x="0" width="232" height="1" y="0" clip-path="url(#clipPath16)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,103)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(196,104)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath18)" stroke="none">void</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,104)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath19)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath19)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABC0lEQVR42mNgoBAw ogv86F2oxvT3r/M/BgYDZHEmBoYL/5iZ93IUx9/CacDP7rlh//8zOuOzkYnh/3G2 suQFMD4zjPGra27CfwZGO0JOBqqRrXXz42rZvekq1GUQZ/9jYLQk1t8gV4L0wA0A +ZnUwIPpYQERyAF24sl9of4Te01hfAV+4XcPPr4VgrE7XQNPI+thwWVDoYXz6Suv ngrtvndD2V9d/wYPG9ufpZdP62AGKg5gIaP4TkdM+h2IHaVr+lCMm+879lihEDDB EgkZGi/AExI4Sv7+LSbJBGbmXlCqBCekll0b3oISB9A8JaLSP+P/vRwliYdQUiIo ZRFjCEgze2nyKqplJooBAPLmaJ/uO4SyAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath19)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAjElEQVR42mNgGAWM 6ALJW11q/jP+lwVL/md8PNd7Tws+A1jQBUCamf8z9ILYfxn/FxNyAQs2wdnee2+B 6KRtzgxkGQD3CsN/kCEz4f7F4iUmdI3zvPamx61zFoaFA7r30MWYsNm+KGjvWzjn L8MCRkamVSR7AQ6YGRL+//+HU5oJZ/wC/UuM2ChgYAAAYjIvl7Ex+6kAAAAASUVO RK5CYII=" height="16" preserveAspectRatio="none"/> + <rect x="36" width="67" height="22" y="0" clip-path="url(#clipPath19)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath19)" stroke="none">scale(int)</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,127)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(207,128)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,128)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath21)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath21)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABC0lEQVR42mNgoBAw ogv86F2oxvT3r/M/BgYDZHEmBoYL/5iZ93IUx9/CacDP7rlh//8zOuOzkYnh/3G2 suQFMD4zjPGra27CfwZGO0JOBqqRrXXz42rZvekq1GUQZ/9jYLQk1t8gV4L0wA0A +ZnUwIPpYQERyAF24sl9of4Te01hfAV+4XcPPr4VgrE7XQNPI+thwWVDoYXz6Suv ngrtvndD2V9d/wYPG9ufpZdP62AGKg5gIaP4TkdM+h2IHaVr+lCMm+879lihEDDB EgkZGi/AExI4Sv7+LSbJBGbmXlCqBCekll0b3oISB9A8JaLSP+P/vRwliYdQUiIo ZRFjCEgze2nyKqplJooBAPLmaJ/uO4SyAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath21)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAjElEQVR42mNgGAWM 6ALJW11q/jP+lwVL/md8PNd7Tws+A1jQBUCamf8z9ILYfxn/FxNyAQs2wdnee2+B 6KRtzgxkGQD3CsN/kCEz4f7F4iUmdI3zvPamx61zFoaFA7r30MWYsNm+KGjvWzjn L8MCRkamVSR7AQ6YGRL+//+HU5oJZ/wC/UuM2ChgYAAAYjIvl7Ex+6kAAAAASUVO RK5CYII=" height="16" preserveAspectRatio="none"/> + <rect x="36" width="105" height="22" y="0" clip-path="url(#clipPath21)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath21)" stroke="none">getPerimeter()</text> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="rgb(232,232,232)"> + <rect x="0" width="232" height="28" y="0" clip-path="url(#clipPath22)" stroke="none"/> + </g> + <g fill="url(#linearGradient2)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="url(#linearGradient2)"> + <rect x="0" width="232" height="28" y="0" clip-path="url(#clipPath22)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(5,5)"> + <image x="2" y="3" clip-path="url(#clipPath23)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABGElEQVR42mNgoBAw ogs4b72r9oeRyRnINECTusDy/9/evd7Kt3Aa4Lj1Ydg/xn/OeG1kZDh+wFNxAYzP DGM4bL+f8J/hvx0RrpZViirierBswlUQhwnm7P//GSyJ9TfIlSA9IDYLiID6GQ7+ f/3M8n7lRMM/L58IgZ3Nxv5HtHjiXmQ1UD23WKB8lAADaf737ROncEr9IWZRye84 HGIA9wI6ANnMaeJ8F49mOGCiNB1gNYBFXObd9zN7lf++fs5JyABYGFxADgfB8Pzz oHB4O6fRDlcgQvVADAClMGCowg1g5Ob9I5RUcxqvzUA98IR0f9mkt6DE8Z/xvxJR /v7PtHeft+IhlJQISlnEGALSvN9bfhXVMhPFAABj9nS+zu6R5QAAAABJRU5ErkJg gg==" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath23)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAjElEQVR42mNgGAWM 6ALJW11q/jP+lwVL/md8PNd7Tws+A1jQBUCamf8z9ILYfxn/FxNyAQs2wdnee2+B 6KRtzgxkGQD3CsN/kCEz4f7F4iUmdI3zvPamx61zFoaFA7r30MWYsNm+KGjvWzjn L8MCRkamVSR7AQ6YGRL+//+HU5oJZ/wC/UuM2ChgYAAAYjIvl7Ex+6kAAAAASUVO RK5CYII=" height="16" preserveAspectRatio="none"/> + <text x="37" xml:space="preserve" y="17" clip-path="url(#clipPath23)" stroke="none">Rectangle</text> + </g> + </g> +</svg> diff --git a/Doc/Sd1/Ref/ObjectsAndClasses/rectangleObjects.svg b/Doc/Sd1/Ref/ObjectsAndClasses/rectangleObjects.svg new file mode 100644 index 0000000000000000000000000000000000000000..b79ebc500d7293b458259c886c9082335f41c9af --- /dev/null +++ b/Doc/Sd1/Ref/ObjectsAndClasses/rectangleObjects.svg @@ -0,0 +1,909 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:ns1="http://sozi.baierouge.fr" + 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" + sodipodi:docname="rectangleObjects.svg" + inkscape:version="0.92.1 r15371" + version="1.2" + id="svg2" + height="260" + width="821.33331"> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.2077062" + inkscape:cx="465.83156" + inkscape:cy="288.50034" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="true" + inkscape:window-width="1600" + inkscape:window-height="1105" + inkscape:window-x="0" + inkscape:window-y="0" + inkscape:window-maximized="1" + showguides="true" + inkscape:guide-bbox="true"> + <inkscape:grid + type="xygrid" + id="grid1569" /> + </sodipodi:namedview> + <defs + id="defs4"> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker11618" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Mend"> + <path + transform="matrix(-0.4,0,0,-0.4,-4,0)" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + id="path11616" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker2318" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path2316" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker4887" + style="overflow:visible" + inkscape:isstock="true"> + <path + id="path4627" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + transform="matrix(-0.8,0,0,-0.8,-10,0)" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker6797" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> + <path + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + id="path6799" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker6793" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> + <path + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + id="path6795" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker6778" + style="overflow:visible" + inkscape:isstock="true"> + <path + id="path6514" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lstart" + style="overflow:visible"> + <path + id="path3841" + d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareM" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareM"> + <path + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path3914" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lend" + style="overflow:visible"> + <path + id="path3844" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondM" + orient="auto" + refY="0" + refX="0" + id="DiamondM" + style="overflow:visible"> + <path + id="path3923" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondMH" + orient="auto" + refY="0" + refX="0" + id="DiamondMH" + style="overflow:visible"> + <path + id="path4656" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendB" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendB" + style="overflow:visible"> + <path + id="path4659" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMU" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMU"> + <path + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path5221" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend3" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lend3" + style="overflow:visible"> + <path + id="path5224" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondMo" + orient="auto" + refY="0" + refX="0" + id="DiamondMo" + style="overflow:visible"> + <path + id="path5799" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendO" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendO" + style="overflow:visible"> + <path + id="path5802" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondM1" + orient="auto" + refY="0" + refX="0" + id="DiamondM1" + style="overflow:visible"> + <path + id="path6393" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendV" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendV" + style="overflow:visible"> + <path + id="path6396" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMN" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMN"> + <path + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path7813" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LstartP" + orient="auto" + refY="0" + refX="0" + id="Arrow1LstartP" + style="overflow:visible"> + <path + id="path7816" + d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMb" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMb"> + <path + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path9491" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendX" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendX" + style="overflow:visible"> + <path + id="path9494" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareM8" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareM8"> + <path + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path10143" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendT" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendT" + style="overflow:visible"> + <path + id="path10146" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMNT" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMNT"> + <path + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path12195" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LstartPJ" + orient="auto" + refY="0" + refX="0" + id="Arrow1LstartPJ" + style="overflow:visible"> + <path + id="path12198" + d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMNTL" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMNTL"> + <path + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path12907" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lendx" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lendx" + style="overflow:visible"> + <path + id="path12910" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondMoY" + orient="auto" + refY="0" + refX="0" + id="DiamondMoY" + style="overflow:visible"> + <path + id="path13187" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendOe" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendOe" + style="overflow:visible"> + <path + id="path13190" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <linearGradient + id="linearGradient3928-8"> + <stop + offset="0" + style="stop-color:#7c7c7c" + id="stop3930-2" /> + <stop + offset="1" + style="stop-color:#e6e3e3" + id="stop3932-0" /> + </linearGradient> + <linearGradient + id="linearGradient8877"> + <stop + style="stop-color:#cecece;stop-opacity:1;" + offset="0" + id="stop8879" /> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="1" + id="stop8881" /> + </linearGradient> + <linearGradient + id="linearGradient8869"> + <stop + id="stop8871" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop8873" + offset="1" + style="stop-color:#000000;stop-opacity:1;" /> + </linearGradient> + <linearGradient + id="linearGradient7421"> + <stop + id="stop7423" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop7425" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient7405"> + <stop + style="stop-color:#9e9e9e;stop-opacity:1;" + offset="0" + id="stop7407" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop7409" /> + </linearGradient> + <linearGradient + id="linearGradient7378"> + <stop + id="stop7380" + offset="0" + style="stop-color:#9e9e9e;stop-opacity:1;" /> + <stop + id="stop7382" + offset="1" + style="stop-color:#ffffff;stop-opacity:1;" /> + </linearGradient> + <inkscape:perspective + id="perspective6864" + inkscape:persp3d-origin="32 : 21.333333 : 1" + inkscape:vp_z="64 : 32 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 32 : 1" + sodipodi:type="inkscape:persp3d" /> + <filter + id="imagebot_16" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_21" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14" + y2="-235.34229" + xlink:href="#linearGradient3928-8" + x2="33.162106" + y1="-192.16943" + x1="32.287571" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_18" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_16-6" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_21-1" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-8" + y2="-235.34229" + xlink:href="#linearGradient3928-8" + x2="33.162106" + y1="-192.16943" + x1="32.287571" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12-7" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_18-9" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-2" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_16-2" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_21-8" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-9" + y2="-235.34229" + xlink:href="#linearGradient3928-8" + x2="33.162106" + y1="-192.16943" + x1="32.287571" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12-73" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_18-6" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-1" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + style="color-interpolation-filters:sRGB" + id="imagebot_16-0"> + <feGaussianBlur + id="imagebot_21-7" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-5" + y2="-235.34229" + xlink:href="#linearGradient3928-8" + x2="33.162106" + y1="-192.16943" + x1="32.287571" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + style="color-interpolation-filters:sRGB" + id="imagebot_12-0" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215"> + <feGaussianBlur + id="imagebot_18-4" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-8" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_16-02" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_21-9" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-4" + y2="0.73097426" + xlink:href="#linearGradient3928-8" + x2="36.048218" + y1="43.90382" + x1="35.173683" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12-3" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_18-5" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-17" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker6793-6" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> + <path + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + id="path6795-8" + inkscape:connector-curvature="0" /> + </marker> + </defs> + <metadata + id="metadata7"> + <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> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,-862.51971)"> + <text + xml:space="preserve" + style="font-style:normal;font-weight:normal;font-size:12.80000019px;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.06666672" + x="104.51711" + y="415.68225" + id="text3004"><tspan + sodipodi:role="line" + id="tspan3006" + x="104.51711" + y="415.68225" + style="font-size:42.66666794px;line-height:1.25;font-family:sans-serif;stroke-width:1.06666672">Â </tspan></text> + <g + id="g1612" + transform="translate(-590,330)"> + <rect + ry="0" + y="602.51971" + x="650" + height="140" + width="100" + id="rect1184" + style="fill:none;stroke:#000000;stroke-width:3.87298346;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <text + id="text1196" + y="587.48059" + x="613.74426" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + xml:space="preserve"><tspan + style="fill:#0000ff" + y="587.48059" + x="613.74426" + id="tspan1194" + sodipodi:role="line">width=20</tspan></text> + <text + id="text1200" + y="676.87036" + x="761.92798" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:1.25;font-family:monospace;-inkscape-font-specification:monospace;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + xml:space="preserve"><tspan + style="fill:#008000" + y="676.87036" + x="761.92798" + id="tspan1198" + sodipodi:role="line">height=28</tspan></text> + <text + id="text1210" + y="785.56354" + x="602.00891" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + xml:space="preserve"><tspan + style="fill:#ff00ff" + y="785.56354" + x="602.00891" + id="tspan1208" + sodipodi:role="line">solid border</tspan></text> + </g> + <g + id="g1603" + transform="translate(400,250)"> + <rect + y="682.51971" + x="90" + height="49.999992" + width="140" + id="rect1182" + style="fill:none;stroke:#000000;stroke-width:3;stroke-miterlimit:4;stroke-dasharray:18, 3;stroke-dashoffset:0;stroke-opacity:1" /> + <text + id="text1188" + y="717.76947" + x="239.47336" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + xml:space="preserve"><tspan + style="fill:#008000" + y="717.76947" + x="239.47336" + id="tspan1186" + sodipodi:role="line">heigt=10</tspan></text> + <text + id="text1192" + y="668.52173" + x="69.829247" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + xml:space="preserve"><tspan + style="font-size:37.33333206px;fill:#0000ff" + y="668.52173" + x="69.829247" + id="tspan1190" + sodipodi:role="line">width=28</tspan></text> + <text + id="text1214" + y="786.75623" + x="55.54538" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + xml:space="preserve"><tspan + style="fill:#ff00ff" + y="786.75623" + x="55.54538" + id="tspan1212" + sodipodi:role="line">dashed border</tspan></text> + </g> + </g> + <script + ns1:version="14.10-05142318" + id="sozi-script">function namespace(b,d,a){var c=b;d.split(".").forEach(function(e){if(typeof c[e]==="undefined"){c[e]={}}c=c[e]});if(a){a(c,b)}return c}namespace(this,"sozi.events",function(b){var a={};b.listen=function(c,d){if(!a.hasOwnProperty(c)){a[c]=[]}a[c].push(d)};b.fire=function(d){var c=Array.prototype.slice.call(arguments,1);if(a.hasOwnProperty(d)){a[d].forEach(function(e){e.apply(null,c)})}}});namespace(this,"sozi.proto",function(a){a.Object={installConstructors:function(){function b(){}b.prototype=this;this.instance=function(){var c=new b();c.construct.apply(c,arguments);return c};this.subtype=function(d){var c=new b();c.augment(d);c.installConstructors();return c}},construct:function(){},augment:function(c){for(var b in c){if(c.hasOwnProperty(b)){this[b]=c[b]}}return this},bind:function(c){var b=this;return function(){return c.apply(b,arguments)}}};a.Object.installConstructors()});namespace(this,"sozi.actions",function(A,g){var u=namespace(g,"sozi.player");var v=namespace(g,"sozi.display");var n=g.document;var o=0;var w=1;var t=1.05;var y=5;var m=5;var r=false;var i=0;var h=0;function a(C,B,D){u.stop();v.viewPorts.player.zoom(C>0?t:1/t,B,D)}function x(B){u.stop();v.viewPorts.player.rotate(B>0?y:-y)}function s(){if(sozi.framelist.isVisible()){sozi.framelist.hide();u.restart()}else{u.stop();sozi.framelist.show()}}function d(B){return v.viewPorts.player.contains(B.clientX,B.clientY)}function f(B){if(!d(B)){return}if(B.button===o){n.documentElement.addEventListener("mousemove",q,false);r=false;i=B.clientX;h=B.clientY}else{if(B.button===w){s()}}B.stopPropagation();B.preventDefault()}function q(B){if(!d(B)){return}u.stop();if(!r&&(Math.abs(B.clientX-i)>m||Math.abs(B.clientY-h)>m)){r=true}if(r){sozi.events.fire("sozi.player.cleanup");v.viewPorts.player.drag(B.clientX-i,B.clientY-h);i=B.clientX;h=B.clientY}B.stopPropagation()}function c(B){if(!d(B)){return}if(B.button===o){n.documentElement.removeEventListener("mousemove",q,false)}B.stopPropagation();B.preventDefault()}function p(B){if(!d(B)){return}u.moveToPrevious();B.stopPropagation();B.preventDefault()}function e(B){if(!d(B)){return}if(!r&&B.button!==w){u.moveToNext()}B.stopPropagation();B.preventDefault()}function j(B){if(!d(B)){return}if(!B){B=g.event}var C=0;if(B.wheelDelta){C=B.wheelDelta}else{if(B.detail){C=-B.detail}}if(C!==0){if(B.shiftKey){x(C)}else{a(C,B.clientX,B.clientY)}}B.stopPropagation();B.preventDefault()}function l(B){if(B.altKey||B.ctrlKey||B.metaKey){return}switch(B.charCode||B.which){case 43:a(1,g.innerWidth/2,g.innerHeight/2);break;case 45:a(-1,g.innerWidth/2,g.innerHeight/2);break;case 61:u.moveToCurrent();break;case 70:case 102:u.showAll();break;case 84:case 116:s();break;case 82:x(-1);break;case 114:x(1);break;default:return}B.stopPropagation();B.preventDefault()}function b(B){if(B.altKey||B.ctrlKey||B.metaKey){return}switch(B.keyCode){case 36:if(B.shiftKey){u.jumpToFirst()}else{u.moveToFirst()}break;case 35:if(B.shiftKey){u.jumpToLast()}else{u.moveToLast()}break;case 38:case 33:case 37:if(B.shiftKey){u.jumpToPrevious()}else{u.moveToPrevious()}break;case 40:case 34:case 39:case 13:case 32:if(B.shiftKey){u.jumpToNext()}else{u.moveToNext()}break;default:return}B.stopPropagation();B.preventDefault()}function z(B){B.stopPropagation()}function k(){var C=n.getElementsByTagName("a");for(var D=0;D<C.length;D+=1){C[D].addEventListener("click",z,false);C[D].addEventListener("contextmenu",z,false)}var B=n.documentElement;B.addEventListener("click",e,false);B.addEventListener("mousedown",f,false);B.addEventListener("mouseup",c,false);B.addEventListener("contextmenu",p,false);B.addEventListener("DOMMouseScroll",j,false);g.onmousewheel=j;B.addEventListener("keypress",l,false);B.addEventListener("keydown",b,false)}sozi.events.listen("sozi.display.ready",k)});namespace(this,"sozi.animation",function(d,g){var h=g.mozRequestAnimationFrame||g.webkitRequestAnimationFrame||g.msRequestAnimationFrame||g.oRequestAnimationFrame;var k=function(){return g.performance&&g.performance.now?g.performance.now():Date.now()};d.setAnimationFrameHandlers=function(l,m){h=l;k=m};var i=40;var c;var j=[];function e(){if(j.length>0){if(h){h(e)}j.forEach(function(l){l.step(k())})}else{if(!h){g.clearInterval(c)}}}function b(){if(h){h(e)}else{c=g.setInterval(function(){e(k())},i)}}function a(l){j.push(l);if(j.length===1){b()}}function f(l){j.splice(j.indexOf(l),1)}d.Animator=sozi.proto.Object.subtype({construct:function(){this.durationMs=0;this.data=null;this.initialTime=0;this.started=false},start:function(l,m){this.durationMs=l;this.data=m;this.initialTime=k();this.onStep(0);if(!this.started){this.started=true;a(this)}},stop:function(){if(this.started){f(this);this.started=false}},step:function(m){var l=m-this.initialTime;if(l>=this.durationMs){this.stop();this.onStep(1);this.onDone()}else{this.onStep(l/this.durationMs)}},onStep:function(l){},onDone:function(){}});d.profiles={linear:function(l){return l},accelerate:function(l){return Math.pow(l,3)},"strong-accelerate":function(l){return Math.pow(l,5)},decelerate:function(l){return 1-Math.pow(1-l,3)},"strong-decelerate":function(l){return 1-Math.pow(1-l,5)},"accelerate-decelerate":function(l){var m=l<=0.5?l:1-l,n=Math.pow(2*m,3)/2;return l<=0.5?n:1-n},"strong-accelerate-decelerate":function(l){var m=l<=0.5?l:1-l,n=Math.pow(2*m,5)/2;return l<=0.5?n:1-n},"decelerate-accelerate":function(l){var m=l<=0.5?l:1-l,n=(1-Math.pow(1-2*m,2))/2;return l<=0.5?n:1-n},"strong-decelerate-accelerate":function(l){var m=l<=0.5?l:1-l,n=(1-Math.pow(1-2*m,3))/2;return l<=0.5?n:1-n},"immediate-beginning":function(l){return 1},"immediate-end":function(l){return l===1?1:0},"immediate-middle":function(l){return l>=0.5?1:0}}});namespace(this,"sozi.display",function(c,g){var f="http://www.w3.org/2000/svg";var b="http://www.w3.org/1999/xlink";var i=g.document;var k;var h;var j;c.viewPorts={};var e;c.CameraState=sozi.proto.Object.subtype({construct:function(){this.cx=this.cy=0;this.width=this.height=1;this.angle=0;this.clipped=true;this.transitionZoomPercent=0;this.transitionProfile=sozi.animation.profiles.linear;this.transitionPath=null},setCenter:function(l,m){this.cx=l;this.cy=m;return this},setSize:function(m,l){this.width=m;this.height=l;return this},setClipped:function(l){this.clipped=l;return this},setAngle:function(l){this.angle=(l+180)%360-180;return this},setRawAngle:function(l){this.angle=l;return this},setTransitionZoomPercent:function(l){this.transitionZoomPercent=l;return this},setTransitionProfile:function(l){this.transitionProfile=l;return this},setTransitionPath:function(l){this.transitionPath=l;return this},setAtElement:function(p){var s,o,t,m;if(p.nodeName==="rect"){s=p.x.baseVal.value;o=p.y.baseVal.value;t=p.width.baseVal.value;m=p.height.baseVal.value}else{var q=p.getBBox();s=q.x;o=q.y;t=q.width;m=q.height}var n=i.documentElement.createSVGPoint();n.x=s+t/2;n.y=o+m/2;var r=p.getCTM();n=n.matrixTransform(r);var l=Math.sqrt(r.a*r.a+r.b*r.b);return this.setCenter(n.x,n.y).setSize(t*l,m*l).setAngle(Math.atan2(r.b,r.a)*180/Math.PI)},setAtState:function(l){return this.setCenter(l.cx,l.cy).setSize(l.width,l.height).setAngle(l.angle).setClipped(l.clipped).setTransitionZoomPercent(l.transitionZoomPercent).setTransitionProfile(l.transitionProfile).setTransitionPath(l.transitionPath)},interpolatableAttributes:["width","height","angle"],interpolate:function(n,o,t,v,r){var p=1-t;for(var q=0;q<this.interpolatableAttributes.length;q+=1){var s=this.interpolatableAttributes[q];this[s]=o[s]*t+n[s]*p}var l=r?n.transitionPath:o.transitionPath;if(v&&l){var x=l.getTotalLength();if(r){var m=l.getPointAtLength(x);var u=l.getPointAtLength(0);var w=l.getPointAtLength(x*p)}else{var m=l.getPointAtLength(0);var u=l.getPointAtLength(x);var w=l.getPointAtLength(x*t)}this.cx=w.x+(o.cx-u.x)*t+(n.cx-m.x)*p;this.cy=w.y+(o.cy-u.y)*t+(n.cy-m.y)*p}else{this.cx=o.cx*t+n.cx*p;this.cy=o.cy*t+n.cy*p}}});c.Camera=c.CameraState.subtype({construct:function(n,o){c.CameraState.construct.call(this);this.viewPort=n;this.svgClipRect=i.createElementNS(f,"rect");var m=i.createElementNS(f,"clipPath");m.setAttribute("id","sozi-clip-path-"+n.id+"-"+o);m.appendChild(this.svgClipRect);n.svgGroup.appendChild(m);var l=i.createElementNS(f,"g");l.setAttribute("clip-path","url(#sozi-clip-path-"+n.id+"-"+o+")");n.svgGroup.appendChild(l);if(n.isPrimary){this.svgLayer=i.createElementNS(f,"g");this.svgLayer.appendChild(i.getElementById(o))}else{this.svgLayer=i.createElementNS(f,"use");this.svgLayer.setAttributeNS(b,"href","#"+o)}l.appendChild(this.svgLayer)},setAtState:function(l){return c.CameraState.setAtState.call(this,l).update()},getScale:function(){return Math.min(this.viewPort.width/this.width,this.viewPort.height/this.height)},rotate:function(l){return this.setAngle(this.angle+l).update()},zoom:function(m,l,n){return this.setSize(this.width/m,this.height/m).drag((1-m)*(l-this.viewPort.width/2),(1-m)*(n-this.viewPort.height/2))},drag:function(m,l){var q=this.getScale();var o=this.angle*Math.PI/180;var n=Math.sin(o);var p=Math.cos(o);return this.setCenter(this.cx-(m*p-l*n)/q,this.cy-(m*n+l*p)/q).setClipped(false).update()},update:function(){var q=this.getScale();var n=this.width*q;var m=this.height*q;var l=(this.viewPort.width-n)/2;var r=(this.viewPort.height-m)/2;this.svgClipRect.setAttribute("x",this.clipped?l:0);this.svgClipRect.setAttribute("y",this.clipped?r:0);this.svgClipRect.setAttribute("width",this.clipped?n:this.viewPort.width);this.svgClipRect.setAttribute("height",this.clipped?m:this.viewPort.height);var p=-this.cx+this.width/2+l/q;var o=-this.cy+this.height/2+r/q;this.svgLayer.setAttribute("transform","scale("+q+")translate("+p+","+o+")rotate("+(-this.angle)+","+this.cx+","+this.cy+")");return this}});c.ViewPort=sozi.proto.Object.subtype({construct:function(n,m,l){this.id=n;c.viewPorts[n]=this;this.isPrimary=!!l;if(this.isPrimary){if(e){throw"Failed to create a primary viewport. A primary viewport already exists."}else{e=this}}this.svgGroup=i.createElementNS(f,"g");this.svgGroup.setAttribute("class","sozi-viewport");this.svgGroup.setAttribute("id","sozi-viewport-"+n);i.documentElement.appendChild(this.svgGroup);this.setLocation(0,0).setSize(g.innerWidth,g.innerHeight);this.cameras={};m.forEach(function(o){this.cameras[o]=c.Camera.instance(this,o)},this)},setSize:function(m,l){this.width=m;this.height=l;return this},setLocation:function(l,m){this.x=l;this.y=m;return this},contains:function(l,m){return l>=this.x&&l<this.x+this.width&&m>=this.y&&m<this.y+this.height},getDocumentState:function(){var m=c.CameraState.instance().setCenter(k.x+k.width/2,k.y+k.height/2).setSize(k.width,k.height).setClipped(false);var l={};for(var n in this.cameras){l[n]=m}return l},update:function(){this.svgGroup.setAttribute("transform","translate("+this.x+","+this.y+")");for(var l in this.cameras){this.cameras[l].update()}return this},showFrame:function(l){for(var m in l.states){this.cameras[m].setAtState(l.states[m])}return this},drag:function(m,l){for(var n in this.cameras){this.cameras[n].drag(m,l)}return this},zoom:function(m,l,o){for(var n in this.cameras){this.cameras[n].zoom(m,l,o)}return this},rotate:function(l){for(var m in this.cameras){this.cameras[m].rotate(l)}return this},onWindowResize:function(m,l){this.setLocation(this.x*m,this.y*l).setSize(this.width*m,this.height*l).update()}});function d(){var l=i.documentElement;k=l.getBBox();h=g.innerWidth;j=g.innerHeight;l.setAttribute("width",h);l.setAttribute("height",j);sozi.events.fire("sozi.display.ready")}function a(){var l=i.documentElement;l.setAttribute("width",g.innerWidth);l.setAttribute("height",g.innerHeight);for(var m in c.viewPorts){c.viewPorts[m].onWindowResize(g.innerWidth/h,g.innerHeight/j)}h=g.innerWidth;j=g.innerHeight}sozi.events.listen("sozi.document.ready",d);g.addEventListener("resize",a,false)});namespace(this,"sozi.document",function(c,e){var g=e.document;var b="http://sozi.baierouge.fr";var d={title:"Untitled",sequence:"0",hide:"true",clip:"true","show-in-frame-list":"true","timeout-enable":"false","timeout-ms":"5000","transition-duration-ms":"1000","transition-zoom-percent":"0","transition-profile":"linear","transition-path-hide":"true"};var h=["g","image","path","rect","circle","ellipse","line","polyline","polygon","text","clippath"];c.frames=[];c.idLayerList=[];function j(l,k){return l.getAttributeNS(b,k)||d[k]}function i(o,p,k){var l=o.states[p]=o.states[p]||sozi.display.CameraState.instance();if(typeof l.transitionZoomPercent==="undefined"||k.hasAttributeNS(b,"transition-zoom-percent")){l.setTransitionZoomPercent(parseInt(j(k,"transition-zoom-percent"),10))}if(typeof l.transitionProfile==="undefined"||k.hasAttributeNS(b,"transition-profile")){l.setTransitionProfile(sozi.animation.profiles[j(k,"transition-profile")])}if(typeof l.transitionPath==="undefined"||k.hasAttributeNS(b,"transition-path")){var n=g.getElementById(k.getAttributeNS(b,"transition-path"));if(n&&n.nodeName==="path"){l.setTransitionPath(n);if(j(k,"transition-path-hide")==="true"){n.style.visibility="hidden"}}}if(k.hasAttributeNS(b,"refid")){var m=g.getElementById(k.getAttributeNS(b,"refid"));if(m){l.setAtElement(m);if(j(k,"hide")==="true"){m.style.visibility="hidden"}}}if(k.hasAttributeNS(b,"clip")){l.setClipped(j(k,"clip")==="true")}}function a(){var l=[];var p=g.getElementsByTagNameNS(b,"layer");for(var n=0;n<p.length;n+=1){var s=p[n].getAttributeNS(b,"group");if(s&&l.indexOf(s)===-1){l.push(s)}}var r=g.documentElement;var o="http://www.w3.org/2000/svg";var q=g.createElementNS(o,"g");var k=Array.prototype.slice.call(r.childNodes);k.forEach(function(u,t){if(!u.getAttribute){r.removeChild(u)}else{if(l.indexOf(u.getAttribute("id"))!==-1){if(q.firstChild){q.setAttribute("id","sozi-wrapper-"+t);c.idLayerList.push("sozi-wrapper-"+t);r.insertBefore(q,u);q=g.createElementNS(o,"g")}c.idLayerList.push(u.getAttribute("id"))}else{if(h.indexOf(u.localName.toLowerCase())!==-1){r.removeChild(u);q.appendChild(u)}}}});if(q.firstChild){q.setAttribute("id","sozi-wrapper-"+k.length);c.idLayerList.push("sozi-wrapper-"+k.length);r.appendChild(q)}var m=Array.prototype.slice.call(g.getElementsByTagNameNS(b,"frame"));m.sort(function(u,t){var w=parseInt(j(u,"sequence"),10);var v=parseInt(j(t,"sequence"),10);return w-v});m.forEach(function(v,u){var x={id:v.getAttribute("id"),title:j(v,"title"),showInFrameList:j(v,"show-in-frame-list")==="true",sequence:parseInt(j(v,"sequence"),10),timeoutEnable:j(v,"timeout-enable")==="true",timeoutMs:parseInt(j(v,"timeout-ms"),10),transitionDurationMs:parseInt(j(v,"transition-duration-ms"),10),states:{}};c.idLayerList.forEach(function(A){if(u===0||A.search("sozi-wrapper-[0-9]+")!==-1){i(x,A,v)}else{var z=x.states[A]=sozi.display.CameraState.instance();var y=c.frames[c.frames.length-1].states[A];z.setAtState(y)}});var t=Array.prototype.slice.call(v.getElementsByTagNameNS(b,"layer"));t.forEach(function(y){var z=y.getAttributeNS(b,"group");if(z&&c.idLayerList.indexOf(z)!==-1){i(x,z,y)}});for(var w in x.states){if(x.states.hasOwnProperty(w)){c.frames.push(x);break}}})}c.getFrameIndexForId=function(l){for(var k=0;k<c.frames.length;k+=1){if(c.frames[k].id===l){return k}}return -1};function f(){g.documentElement.removeAttribute("viewBox");a();sozi.events.fire("sozi.document.ready")}e.addEventListener("load",f,false)});namespace(this,"sozi.framelist",function(u,k){var o=k.document;var c=5;var i;var p;var j=0;var h;var s;var b;var v;var w;var t;var e=300;var f="decelerate";var a="http://www.w3.org/2000/svg";function n(z){var x=z.relatedTarget,y=o.documentElement;while(x&&x!==i&&x!==y){x=x.parentNode}if(x!==i){u.hide();sozi.player.restart();z.stopPropagation()}}function r(y){var x=p.getCTM().f;if(x<=-k.innerHeight/2){x+=k.innerHeight/2}else{if(x<0){x=0}}p.setAttribute("transform","translate(0,"+x+")");y.stopPropagation()}function d(y){var x=p.getCTM().f;if(x+j>=k.innerHeight*3/2){x-=k.innerHeight/2}else{if(x+j>k.innerHeight+2*c){x=k.innerHeight-j-4*c}}p.setAttribute("transform","translate(0,"+x+")");y.stopPropagation()}function g(x){return function(y){sozi.player.previewFrame(x);y.stopPropagation()}}function l(x){x.stopPropagation()}function q(){i=o.createElementNS(a,"g");i.setAttribute("id","sozi-toc");o.documentElement.appendChild(i);p=o.createElementNS(a,"g");i.appendChild(p);var y=o.createElementNS(a,"rect");y.setAttribute("id","sozi-toc-background");y.setAttribute("x",c);y.setAttribute("y",c);y.setAttribute("rx",c);y.setAttribute("ry",c);y.addEventListener("click",l,false);y.addEventListener("mousedown",l,false);y.addEventListener("mouseout",n,false);p.appendChild(y);var A=0;sozi.document.frames.forEach(function(D,E){if(D.showInFrameList){var C=o.createElementNS(a,"text");C.appendChild(o.createTextNode(D.title));C.setAttribute("id","sozi-toc-"+D.id);p.appendChild(C);if(E===sozi.player.currentFrameIndex){C.setAttribute("class","sozi-toc-current")}var B=C.getBBox().width;j+=C.getBBox().height;if(B>A){A=B}C.setAttribute("x",2*c);C.setAttribute("y",j+c);C.addEventListener("click",g(E),false);C.addEventListener("mousedown",l,false)}});var x=o.createElementNS(a,"path");x.setAttribute("class","sozi-toc-arrow");x.setAttribute("d","M"+(A+3*c)+","+(5*c)+" l"+(4*c)+",0 l-"+(2*c)+",-"+(3*c)+" z");x.addEventListener("click",r,false);x.addEventListener("mousedown",l,false);i.appendChild(x);var z=o.createElementNS(a,"path");z.setAttribute("class","sozi-toc-arrow");z.setAttribute("d","M"+(A+3*c)+","+(7*c)+" l"+(4*c)+",0 l-"+(2*c)+","+(3*c)+" z");z.addEventListener("click",d,false);z.addEventListener("mousedown",l,false);i.appendChild(z);y.setAttribute("width",A+7*c);y.setAttribute("height",j+2*c);h=-A-9*c;s=0;w=v=h;i.setAttribute("transform","translate("+h+",0)");t=sozi.animation.Animator.instance().augment({onStep:function(B){var D=sozi.animation.profiles[f](B),C=1-D;w=v*D+b*C;i.setAttribute("transform","translate("+w+",0)")}})}function m(x){var y=Array.prototype.slice.call(o.getElementsByClassName("sozi-toc-current"));y.forEach(function(A){A.removeAttribute("class")});var z=sozi.document.frames[x];if(z.showInFrameList){o.getElementById("sozi-toc-"+z.id).setAttribute("class","sozi-toc-current")}}u.show=function(){o.documentElement.appendChild(i);b=w;v=s;t.start(e)};u.hide=function(){b=w;v=h;t.start(e)};u.isVisible=function(){return v===s};sozi.events.listen("sozi.player.ready",q);sozi.events.listen("sozi.player.cleanup",u.hide);sozi.events.listen("sozi.player.framechange",m)});namespace(this,"sozi.framenumber",function(a,d){var g=d.document;var e;var k,i;var f;var b="http://www.w3.org/2000/svg";function h(){var m=k.getBBox(),n=Math.max(m.width,m.height)*0.75,l=n*1.25;f.setAttribute("r",n);e.setAttribute("transform","translate("+l+","+l+")")}function c(){e=g.createElementNS(b,"g");k=g.createElementNS(b,"text");f=g.createElementNS(b,"circle");e.setAttribute("id","sozi-framenumber");f.setAttribute("cx",0);f.setAttribute("cy",0);e.appendChild(f);i=g.createTextNode(sozi.player.currentFrameIndex+1);k.setAttribute("text-anchor","middle");k.setAttribute("dominant-baseline","central");k.setAttribute("x",0);k.setAttribute("y",0);k.appendChild(i);e.appendChild(k);g.documentElement.appendChild(e);h()}function j(l){i.nodeValue=l+1}sozi.events.listen("sozi.player.ready",c);sozi.events.listen("sozi.player.framechange",j)});namespace(this,"sozi.links",function(c,e){var b="http://www.w3.org/2000/svg";var a="http://www.w3.org/1999/xlink";function f(g){return function(h){sozi.player.moveToFrame(g);h.preventDefault();h.stopPropagation()}}function d(){var h=e.document.getElementsByTagNameNS(b,"a");for(var j=0;j<h.length;j+=1){var g=h[j].getAttributeNS(a,"href");if(g&&g[0]==="#"){h[j].addEventListener("click",f(sozi.location.getFrameIndexForHash(g)),false)}}}sozi.events.listen("sozi.document.ready",d)});namespace(this,"sozi.location",function(a,d){var b=false;a.getFrameIndex=function(){return a.getFrameIndexForHash(d.location.hash)};a.getFrameIndexForHash=function(g){var h=g?g.slice(1):"1";var f;if(/^[0-9]+$/.test(h)){f=parseInt(h,10)-1}else{f=sozi.document.getFrameIndexForId(h)}if(f<0){return 0}else{if(f>=sozi.document.frames.length){return sozi.document.frames.length-1}else{return f}}};function e(){var f=a.getFrameIndex();if(!b){sozi.player.moveToFrame(f)}b=false}function c(f){b=true;d.location.hash="#"+sozi.document.frames[f].id}d.addEventListener("hashchange",e,false);sozi.events.listen("sozi.player.framechange",c)});namespace(this,"sozi.player",function(d,g){var l;var c;var i;var e=500;var n=-10;var j="linear";var f=0;d.currentFrameIndex=0;var k=false;var m=false;function h(){if(sozi.document.frames[d.currentFrameIndex].timeoutEnable){m=true;var o=(d.currentFrameIndex+1)%sozi.document.frames.length;i=g.setTimeout(function(){d.moveToFrame(o)},sozi.document.frames[d.currentFrameIndex].timeoutMs)}}d.startFromIndex=function(o){k=true;m=false;f=o;d.currentFrameIndex=o;l.showFrame(sozi.document.frames[o]);h()};d.restart=function(){d.startFromIndex(d.currentFrameIndex)};d.stop=function(){c.stop();if(m){g.clearTimeout(i);m=false}k=false;f=d.currentFrameIndex};function b(o,y,w){var z={ss:((o<0)?Math.max(y,w):Math.min(y,w))*(100-o)/100,ts:0.5,k:0};if(o!==0){var s=y-w;var r=y-z.ss;var q=w-z.ss;if(s!==0){var p=Math.sqrt(r*q);var x=(r-p)/s;var t=(r+p)/s;z.ts=(x>0&&x<=1)?x:t}z.k=r/z.ts/z.ts}return z}d.jumpToFrame=function(o){d.stop();sozi.events.fire("sozi.player.cleanup");f=o;d.currentFrameIndex=o;l.showFrame(sozi.document.frames[o]);sozi.events.fire("sozi.player.framechange",o)};d.getAnimationData=function(o,q,s,p,v,t){var r={};for(var w in o){r[w]={initialState:sozi.display.CameraState.instance(),finalState:sozi.display.CameraState.instance(),useTransitionPath:v,reverseTransitionPath:t};r[w].profile=p||q[w].transitionProfile;r[w].initialState.setAtState(o[w]);if(q.hasOwnProperty(w)){r[w].finalState.setAtState(q[w])}else{r[w].finalState.setAtState(o[w])}if(r[w].finalState.angle-r[w].initialState.angle>180){r[w].finalState.setRawAngle(r[w].finalState.angle-360)}else{if(r[w].finalState.angle-r[w].initialState.angle<-180){r[w].initialState.setRawAngle(r[w].initialState.angle-360)}}var u=s||q[w].transitionZoomPercent;if(u&&q.hasOwnProperty(w)){r[w].zoomWidth=b(u,o[w].width,q[w].width);r[w].zoomHeight=b(u,o[w].height,q[w].height)}}return r};d.previewFrame=function(o){d.currentFrameIndex=o;c.start(e,d.getAnimationData(l.cameras,sozi.document.frames[o].states,n,sozi.animation.profiles[j]),false,false);sozi.events.fire("sozi.player.framechange",o)};d.moveToFrame=function(r){if(m){g.clearTimeout(i);m=false}var q,t,s,p,o;if(r===(d.currentFrameIndex-1)%sozi.document.frames.length){q=sozi.document.frames[d.currentFrameIndex].transitionDurationMs;t=undefined;s=undefined;p=true;o=true}else{if(r===(d.currentFrameIndex+1)%sozi.document.frames.length){q=sozi.document.frames[r].transitionDurationMs;t=undefined;s=undefined;p=true;o=false}else{q=e;t=n;s=sozi.animation.profiles[j];p=false;o=false}}sozi.events.fire("sozi.player.cleanup");k=true;d.currentFrameIndex=r;c.start(q,d.getAnimationData(l.cameras,sozi.document.frames[r].states,t,s,p,o));sozi.events.fire("sozi.player.framechange",r)};d.jumpToFirst=function(){d.jumpToFrame(0)};d.moveToFirst=function(){d.moveToFrame(0)};d.jumpToPrevious=function(){var o=d.currentFrameIndex;if(!c.started||f<=d.currentFrameIndex){o-=1}if(o>=0){d.jumpToFrame(o)}};d.moveToPrevious=function(){for(var o=d.currentFrameIndex-1;o>=0;o-=1){var p=sozi.document.frames[o];if(!p.timeoutEnable||p.timeoutMs!==0){d.moveToFrame(o);break}}};d.jumpToNext=function(){var o=d.currentFrameIndex;if(!c.started||f>=d.currentFrameIndex){o+=1}if(o<sozi.document.frames.length){d.jumpToFrame(o)}};d.moveToNext=function(){if(d.currentFrameIndex<sozi.document.frames.length-1||sozi.document.frames[d.currentFrameIndex].timeoutEnable){d.moveToFrame((d.currentFrameIndex+1)%sozi.document.frames.length)}};d.jumpToLast=function(){d.jumpToFrame(sozi.document.frames.length-1)};d.moveToLast=function(){d.moveToFrame(sozi.document.frames.length-1)};d.moveToCurrent=function(){d.moveToFrame(d.currentFrameIndex)};d.showAll=function(){d.stop();sozi.events.fire("sozi.player.cleanup");c.start(e,d.getAnimationData(l.cameras,l.getDocumentState(),n,sozi.animation.profiles[j],false,false))};function a(){l=sozi.display.ViewPort.instance("player",sozi.document.idLayerList,true);d.startFromIndex(sozi.location.getFrameIndex());g.setTimeout(l.bind(l.update),1);sozi.events.fire("sozi.player.ready")}d.onAnimationStep=function(o,q){for(var s in q){var p=l.cameras[s];p.interpolate(q[s].initialState,q[s].finalState,q[s].profile(o),q[s].useTransitionPath,q[s].reverseTransitionPath);var r;if(q[s].zoomWidth&&q[s].zoomWidth.k!==0){r=o-q[s].zoomWidth.ts;p.width=q[s].zoomWidth.k*r*r+q[s].zoomWidth.ss}if(q[s].zoomHeight&&q[s].zoomHeight.k!==0){r=o-q[s].zoomHeight.ts;p.height=q[s].zoomHeight.k*r*r+q[s].zoomHeight.ss}p.setClipped(q[s].finalState.clipped)}l.update()};c=sozi.animation.Animator.instance().augment({onStep:function(o){d.onAnimationStep(o,this.data)},onDone:function(){for(var o in this.data){l.cameras[o].setAtState(this.data[o].finalState)}l.update();f=d.currentFrameIndex;if(k){h()}}});sozi.events.listen("sozi.display.ready",a)});</script> + <style + ns1:version="14.10-05142318" + id="sozi-style">#sozi-toc text{fill:#eff;font-family:Verdana,sans-serif;font-size:12pt}#sozi-toc text:hover{fill:#0cf;cursor:pointer}#sozi-toc text.sozi-toc-current{fill:#fa4}#sozi-toc-background{stroke:#222;stroke-opacity:.1;stroke-width:10;fill:#222;fill-opacity:.9}.sozi-toc-arrow{fill:#eff;fill-opacity:.75;stroke:none}.sozi-toc-arrow:hover{fill:#0cf}#sozi-framenumber circle{stroke:#222;stroke-opacity:.1;stroke-width:4;fill:#222;fill-opacity:.9}#sozi-framenumber text{fill:#eff;font-family:Verdana,sans-serif;font-size:12pt}</style> + <ns1:frame + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="1" + ns1:title="Gcd implementation" + ns1:refid="rect10351" /> + <ns1:frame + ns1:refid="rect10841" + ns1:title="Gcd maven packaging" + ns1:sequence="2" + ns1:hide="true" + ns1:clip="true" + ns1:show-in-frame-list="true" + ns1:timeout-enable="false" + ns1:timeout-ms="5000.0" + ns1:transition-duration-ms="1000.0" + ns1:transition-zoom-percent="0.0" + ns1:transition-profile="linear" + ns1:transition-path-hide="true" /> + <ns1:frame + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="3" + ns1:title="Using Math.getGcd()" + ns1:refid="rect11089" /> + <ns1:frame + ns1:refid="rect11381" + ns1:title="Fraction project" + ns1:sequence="4" + ns1:hide="true" + ns1:clip="true" + ns1:show-in-frame-list="true" + ns1:timeout-enable="false" + ns1:timeout-ms="5000.0" + ns1:transition-duration-ms="1000.0" + ns1:transition-zoom-percent="0.0" + ns1:transition-profile="linear" + ns1:transition-path-hide="true" /> + <ns1:frame + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="5" + ns1:title="Maven dependency definition" + ns1:refid="rect11637" /> + <ns1:frame + ns1:refid="rect11895" + ns1:title="Fraction depends on Gcd" + ns1:sequence="6" + ns1:hide="true" + ns1:clip="true" + ns1:show-in-frame-list="true" + ns1:timeout-enable="false" + ns1:timeout-ms="5000" + ns1:transition-duration-ms="1000" + ns1:transition-zoom-percent="0" + ns1:transition-profile="linear" + ns1:transition-path-hide="true" /> +</svg> diff --git a/Doc/Sd1/Ref/ObjectsAndClasses/rectangleScaleMethod.svg b/Doc/Sd1/Ref/ObjectsAndClasses/rectangleScaleMethod.svg new file mode 100644 index 0000000000000000000000000000000000000000..ccccffabd0102fb63e92f5b498edd2822d8ce4d7 --- /dev/null +++ b/Doc/Sd1/Ref/ObjectsAndClasses/rectangleScaleMethod.svg @@ -0,0 +1,277 @@ +<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" fill-opacity="1" color-rendering="auto" color-interpolation="auto" text-rendering="auto" stroke="black" stroke-linecap="square" width="276" stroke-miterlimit="10" shape-rendering="auto" stroke-opacity="1" fill="black" stroke-dasharray="none" font-weight="normal" stroke-width="1" height="193" font-family="'Dialog'" font-style="normal" stroke-linejoin="miter" font-size="12" stroke-dashoffset="0" image-rendering="auto"> + <!--Generated by ySVG--> + <defs id="genericDefs"/> + <g> + <defs id="defs1"> + <linearGradient x1="0" gradientUnits="userSpaceOnUse" x2="0" y1="0" y2="28" id="linearGradient1" spreadMethod="pad"> + <stop stop-opacity="1" stop-color="rgb(255,255,245)" offset="0%"/> + <stop stop-opacity="1" stop-color="rgb(215,213,172)" offset="100%"/> + </linearGradient> + <linearGradient x1="0" gradientUnits="userSpaceOnUse" x2="0" y1="0" y2="28" id="linearGradient2" spreadMethod="pad"> + <stop stop-opacity="1" stop-color="rgb(255,255,245)" offset="0%"/> + <stop stop-opacity="1" stop-color="rgb(215,213,172)" offset="100%"/> + </linearGradient> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath1"> + <path d="M0 0 L276 0 L276 193 L0 193 L0 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath2"> + <path d="M-20 -20 L256 -20 L256 173 L-20 173 L-20 -20 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath3"> + <path d="M0 0 L0 153 L236 153 L236 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath4"> + <path d="M0 0 L0 151 L234 151 L234 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath5"> + <path d="M0 0 L0 149 L232 149 L232 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath6"> + <path d="M0 0 L0 121 L232 121 L232 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath7"> + <path d="M0 0 L0 24 L232 24 L232 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath8"> + <path d="M0 0 L0 22 L25 22 L25 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath9"> + <path d="M0 0 L0 22 L80 22 L80 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath10"> + <path d="M0 24 L0 48 L232 48 L232 24 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath11"> + <path d="M0 0 L0 22 L85 22 L85 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath12"> + <path d="M0 48 L0 72 L232 72 L232 48 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath13"> + <path d="M0 0 L0 22 L62 22 L62 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath14"> + <path d="M0 0 L0 22 L146 22 L146 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath15"> + <path d="M0 72 L0 73 L232 73 L232 72 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath16"> + <path d="M0 0 L0 1 L232 1 L232 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath17"> + <path d="M0 73 L0 97 L232 97 L232 73 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath18"> + <path d="M0 0 L0 22 L36 22 L36 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath19"> + <path d="M0 0 L0 22 L103 22 L103 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath20"> + <path d="M0 97 L0 121 L232 121 L232 97 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath21"> + <path d="M0 0 L0 22 L141 22 L141 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath22"> + <path d="M0 0 L0 28 L232 28 L232 0 Z"/> + </clipPath> + <clipPath clipPathUnits="userSpaceOnUse" id="clipPath23"> + <path d="M0 0 L0 22 L226 22 L226 0 Z"/> + </clipPath> + </defs> + <g fill="white" transform="translate(20,20)" stroke="white"> + <rect x="-20" width="276" height="193" y="-20" clip-path="url(#clipPath2)" stroke="none"/> + </g> + <g fill="silver" stroke="silver"> + <path d="M12.3594 173.0156 L12.3594 176.0938 L13.8438 176.0938 Q14.6719 176.0938 15.125 175.6953 Q15.5781 175.2969 15.5781 174.5469 Q15.5781 173.8125 15.125 173.4141 Q14.6719 173.0156 13.8438 173.0156 L12.3594 173.0156 ZM11.1719 172 L13.8438 172 Q15.3281 172 16.0781 172.6406 Q16.8281 173.2812 16.8281 174.5469 Q16.8281 175.7969 16.0781 176.4453 Q15.3281 177.0938 13.8438 177.0938 L12.3594 177.0938 L12.3594 181 L11.1719 181 L11.1719 172 ZM20.9082 174.9531 Q20.0488 174.9531 19.541 175.6328 Q19.0332 176.3125 19.0332 177.5 Q19.0332 178.6875 19.5332 179.3672 Q20.0332 180.0469 20.9082 180.0469 Q21.7676 180.0469 22.2754 179.3672 Q22.7832 178.6875 22.7832 177.5 Q22.7832 176.3281 22.2754 175.6406 Q21.7676 174.9531 20.9082 174.9531 ZM20.9082 174 Q22.3145 174 23.1191 174.9297 Q23.9238 175.8594 23.9238 177.5 Q23.9238 179.1406 23.1191 180.0703 Q22.3145 181 20.9082 181 Q19.502 181 18.6973 180.0703 Q17.8926 179.1406 17.8926 177.5 Q17.8926 175.8594 18.6973 174.9297 Q19.502 174 20.9082 174 ZM25.0781 174 L26.1562 174 L27.5156 179.4688 L28.8438 174 L30.125 174 L31.4688 179.4688 L32.8125 174 L33.8906 174 L32.1719 181 L30.9062 181 L29.4844 175.2656 L28.0781 181 L26.7969 181 L25.0781 174 ZM41.1426 177.3594 L41.1426 177.9219 L36.1738 177.9219 Q36.252 178.9688 36.8535 179.5078 Q37.4551 180.0469 38.5176 180.0469 Q39.1426 180.0469 39.7285 179.9062 Q40.3145 179.7656 40.8926 179.4844 L40.8926 180.4688 Q40.2988 180.7188 39.6895 180.8594 Q39.0801 181 38.4551 181 Q36.8926 181 35.9707 180.0703 Q35.0488 179.1406 35.0488 177.5625 Q35.0488 175.9219 35.9238 174.9609 Q36.7988 174 38.2676 174 Q39.5957 174 40.3691 174.9062 Q41.1426 175.8125 41.1426 177.3594 ZM40.0645 177.0781 Q40.0488 176.1094 39.5645 175.5312 Q39.0801 174.9531 38.2832 174.9531 Q37.377 174.9531 36.8379 175.5078 Q36.2988 176.0625 36.2207 177.0781 L40.0645 177.0781 ZM46.7129 175.0625 Q46.5254 174.9531 46.3145 174.8984 Q46.1035 174.8438 45.8379 174.8438 Q44.9316 174.8438 44.4395 175.4766 Q43.9473 176.1094 43.9473 177.2969 L43.9473 181 L42.8691 181 L42.8691 174 L43.9473 174 L43.9473 175.0781 Q44.291 174.5469 44.8379 174.2734 Q45.3848 174 46.166 174 Q46.2754 174 46.4082 173.9766 Q46.541 173.9531 46.6973 173.9062 L46.7129 175.0625 ZM53.459 177.3594 L53.459 177.9219 L48.4902 177.9219 Q48.5684 178.9688 49.1699 179.5078 Q49.7715 180.0469 50.834 180.0469 Q51.459 180.0469 52.0449 179.9062 Q52.6309 179.7656 53.209 179.4844 L53.209 180.4688 Q52.6152 180.7188 52.0059 180.8594 Q51.3965 181 50.7715 181 Q49.209 181 48.2871 180.0703 Q47.3652 179.1406 47.3652 177.5625 Q47.3652 175.9219 48.2402 174.9609 Q49.1152 174 50.584 174 Q51.9121 174 52.6855 174.9062 Q53.459 175.8125 53.459 177.3594 ZM52.3809 177.0781 Q52.3652 176.1094 51.8809 175.5312 Q51.3965 174.9531 50.5996 174.9531 Q49.6934 174.9531 49.1543 175.5078 Q48.6152 176.0625 48.5371 177.0781 L52.3809 177.0781 ZM59.5449 175.2031 L59.5449 171 L60.623 171 L60.623 181 L59.5449 181 L59.5449 179.9688 Q59.2012 180.4844 58.6855 180.7422 Q58.1699 181 57.4355 181 Q56.248 181 55.498 180.0391 Q54.748 179.0781 54.748 177.5 Q54.748 175.9219 55.498 174.9609 Q56.248 174 57.4355 174 Q58.1699 174 58.6855 174.2969 Q59.2012 174.5938 59.5449 175.2031 ZM55.873 177.5938 Q55.873 178.8281 56.3574 179.5312 Q56.8418 180.2344 57.7012 180.2344 Q58.5605 180.2344 59.0527 179.5312 Q59.5449 178.8281 59.5449 177.5938 Q59.5449 176.3438 59.0527 175.6406 Q58.5605 174.9375 57.7012 174.9375 Q56.8418 174.9375 56.3574 175.6406 Q55.873 176.3438 55.873 177.5938 ZM71.3672 177.5 Q71.3672 176.2969 70.875 175.6172 Q70.3828 174.9375 69.5391 174.9375 Q68.6797 174.9375 68.1875 175.6172 Q67.6953 176.2969 67.6953 177.5 Q67.6953 178.7031 68.1875 179.3828 Q68.6797 180.0625 69.5391 180.0625 Q70.3828 180.0625 70.875 179.3828 Q71.3672 178.7031 71.3672 177.5 ZM67.6953 175.1875 Q68.0391 174.5938 68.5547 174.2969 Q69.0703 174 69.7891 174 Q70.9922 174 71.7422 174.9609 Q72.4922 175.9219 72.4922 177.5 Q72.4922 179.0781 71.7422 180.0391 Q70.9922 181 69.7891 181 Q69.0703 181 68.5547 180.7031 Q68.0391 180.4062 67.6953 179.8125 L67.6953 181 L66.6172 181 L66.6172 171 L67.6953 171 L67.6953 175.1875 ZM77 181.9375 Q76.5469 183.2188 76.1094 183.6094 Q75.6719 184 74.9531 184 L74.0938 184 L74.0938 183.0625 L74.7188 183.0625 Q75.1719 183.0625 75.4141 182.8281 Q75.6562 182.5938 75.9531 181.7188 L76.1562 181.1719 L73.5 174 L74.6406 174 L76.6875 179.7031 L78.75 174 L79.8906 174 L77 181.9375 ZM87.916 181.9375 Q87.4629 183.2188 87.0254 183.6094 Q86.5879 184 85.8691 184 L85.0098 184 L85.0098 183.0625 L85.6348 183.0625 Q86.0879 183.0625 86.3301 182.8281 Q86.5723 182.5938 86.8691 181.7188 L87.0723 181.1719 L84.416 174 L85.5566 174 L87.6035 179.7031 L89.666 174 L90.8066 174 L87.916 181.9375 ZM92.3301 172 L97.3613 172 L97.3613 173.0312 L93.5176 173.0312 L93.5176 176.0781 L96.9863 176.0781 L96.9863 177.1094 L93.5176 177.1094 L93.5176 181 L92.3301 181 L92.3301 172 ZM99.1855 174 L100.2637 174 L100.2637 181 L99.1855 181 L99.1855 174 ZM99.1855 171 L100.2637 171 L100.2637 172.4219 L99.1855 172.4219 L99.1855 171 ZM102.5195 171 L103.5977 171 L103.5977 181 L102.5195 181 L102.5195 171 ZM111.4785 177.3594 L111.4785 177.9219 L106.5098 177.9219 Q106.5879 178.9688 107.1895 179.5078 Q107.791 180.0469 108.8535 180.0469 Q109.4785 180.0469 110.0645 179.9062 Q110.6504 179.7656 111.2285 179.4844 L111.2285 180.4688 Q110.6348 180.7188 110.0254 180.8594 Q109.416 181 108.791 181 Q107.2285 181 106.3066 180.0703 Q105.3848 179.1406 105.3848 177.5625 Q105.3848 175.9219 106.2598 174.9609 Q107.1348 174 108.6035 174 Q109.9316 174 110.7051 174.9062 Q111.4785 175.8125 111.4785 177.3594 ZM110.4004 177.0781 Q110.3848 176.1094 109.9004 175.5312 Q109.416 174.9531 108.6191 174.9531 Q107.7129 174.9531 107.1738 175.5078 Q106.6348 176.0625 106.5566 177.0781 L110.4004 177.0781 ZM117.4238 174.3594 L117.4238 175.4062 Q116.9707 175.1719 116.4785 175.0547 Q115.9863 174.9375 115.4551 174.9375 Q114.6582 174.9375 114.252 175.1875 Q113.8457 175.4375 113.8457 175.9375 Q113.8457 176.3125 114.1348 176.5312 Q114.4238 176.75 115.2988 176.9375 L115.6582 177.0312 Q116.8145 177.2812 117.2988 177.7344 Q117.7832 178.1875 117.7832 179 Q117.7832 179.9219 117.0566 180.4609 Q116.3301 181 115.0645 181 Q114.5332 181 113.9629 180.8984 Q113.3926 180.7969 112.7676 180.5781 L112.7676 179.4375 Q113.3613 179.75 113.9395 179.9062 Q114.5176 180.0625 115.0957 180.0625 Q115.8457 180.0625 116.2598 179.7969 Q116.6738 179.5312 116.6738 179.0625 Q116.6738 178.6094 116.377 178.375 Q116.0801 178.1406 115.0801 177.9219 L114.7051 177.8281 Q113.7051 177.6094 113.2598 177.1719 Q112.8145 176.7344 112.8145 175.9531 Q112.8145 175.0156 113.4707 174.5078 Q114.127 174 115.3301 174 Q115.9238 174 116.4551 174.0938 Q116.9863 174.1875 117.4238 174.3594 Z" stroke="none" clip-path="url(#clipPath1)"/> + </g> + <g fill="gray" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20)" stroke="gray"> + <rect x="2" width="234" height="1" y="152" clip-path="url(#clipPath3)" stroke="none"/> + <rect x="235" width="1" height="151" y="2" clip-path="url(#clipPath3)" stroke="none"/> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(1,1)" stroke="rgb(232,232,232)"> + <rect x="0" width="234" height="151" y="0" clip-path="url(#clipPath4)" stroke="none"/> + </g> + <g fill="silver" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(1,1)" stroke="silver"> + <path d="M0 0 L234 0 L234 151 L0 151 L0 0 ZM1 1 L233 1 L233 150 L1 150 L1 1 Z" fill-rule="evenodd" clip-path="url(#clipPath4)" stroke="none"/> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="rgb(232,232,232)"> + <rect x="0" width="232" height="149" y="0" clip-path="url(#clipPath5)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="white"> + <rect x="0" width="232" height="121" y="0" clip-path="url(#clipPath6)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(207,31)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,31)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath9)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath9)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath9)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="44" height="22" y="0" clip-path="url(#clipPath9)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath9)" stroke="none">width</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,54)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(207,55)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,55)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath11)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath11)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath11)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="49" height="22" y="0" clip-path="url(#clipPath11)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath11)" stroke="none">height</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,78)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(170,79)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath13)" stroke="none">boolean</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,79)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath14)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath14)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath14)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="110" height="22" y="0" clip-path="url(#clipPath14)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath14)" stroke="none">hasSolidBorder</text> + </g> + <g fill="gray" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="gray"> + <rect x="0" width="232" height="1" y="72" clip-path="url(#clipPath15)" stroke="none"/> + </g> + <g fill="gray" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,102)" stroke="gray"> + <rect x="0" width="232" height="1" y="0" clip-path="url(#clipPath16)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,103)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(196,104)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath18)" stroke="none">void</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,104)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath19)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath19)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABC0lEQVR42mNgoBAw ogv86F2oxvT3r/M/BgYDZHEmBoYL/5iZ93IUx9/CacDP7rlh//8zOuOzkYnh/3G2 suQFMD4zjPGra27CfwZGO0JOBqqRrXXz42rZvekq1GUQZ/9jYLQk1t8gV4L0wA0A +ZnUwIPpYQERyAF24sl9of4Te01hfAV+4XcPPr4VgrE7XQNPI+thwWVDoYXz6Suv ngrtvndD2V9d/wYPG9ufpZdP62AGKg5gIaP4TkdM+h2IHaVr+lCMm+879lihEDDB EgkZGi/AExI4Sv7+LSbJBGbmXlCqBCekll0b3oISB9A8JaLSP+P/vRwliYdQUiIo ZRFjCEgze2nyKqplJooBAPLmaJ/uO4SyAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath19)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAjElEQVR42mNgGAWM 6ALJW11q/jP+lwVL/md8PNd7Tws+A1jQBUCamf8z9ILYfxn/FxNyAQs2wdnee2+B 6KRtzgxkGQD3CsN/kCEz4f7F4iUmdI3zvPamx61zFoaFA7r30MWYsNm+KGjvWzjn L8MCRkamVSR7AQ6YGRL+//+HU5oJZ/wC/UuM2ChgYAAAYjIvl7Ex+6kAAAAASUVO RK5CYII=" height="16" preserveAspectRatio="none"/> + <rect x="36" width="67" height="22" y="0" clip-path="url(#clipPath19)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath19)" stroke="none">scale(int)</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,127)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(207,128)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,128)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath21)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath21)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABC0lEQVR42mNgoBAw ogv86F2oxvT3r/M/BgYDZHEmBoYL/5iZ93IUx9/CacDP7rlh//8zOuOzkYnh/3G2 suQFMD4zjPGra27CfwZGO0JOBqqRrXXz42rZvekq1GUQZ/9jYLQk1t8gV4L0wA0A +ZnUwIPpYQERyAF24sl9of4Te01hfAV+4XcPPr4VgrE7XQNPI+thwWVDoYXz6Suv ngrtvndD2V9d/wYPG9ufpZdP62AGKg5gIaP4TkdM+h2IHaVr+lCMm+879lihEDDB EgkZGi/AExI4Sv7+LSbJBGbmXlCqBCekll0b3oISB9A8JaLSP+P/vRwliYdQUiIo ZRFjCEgze2nyKqplJooBAPLmaJ/uO4SyAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath21)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAjElEQVR42mNgGAWM 6ALJW11q/jP+lwVL/md8PNd7Tws+A1jQBUCamf8z9ILYfxn/FxNyAQs2wdnee2+B 6KRtzgxkGQD3CsN/kCEz4f7F4iUmdI3zvPamx61zFoaFA7r30MWYsNm+KGjvWzjn L8MCRkamVSR7AQ6YGRL+//+HU5oJZ/wC/UuM2ChgYAAAYjIvl7Ex+6kAAAAASUVO RK5CYII=" height="16" preserveAspectRatio="none"/> + <rect x="36" width="105" height="22" y="0" clip-path="url(#clipPath21)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath21)" stroke="none">getPerimeter()</text> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="rgb(232,232,232)"> + <rect x="0" width="232" height="28" y="0" clip-path="url(#clipPath22)" stroke="none"/> + </g> + <g fill="url(#linearGradient1)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="url(#linearGradient1)"> + <rect x="0" width="232" height="28" y="0" clip-path="url(#clipPath22)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(5,5)"> + <image x="2" y="3" clip-path="url(#clipPath23)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABGElEQVR42mNgoBAw ogs4b72r9oeRyRnINECTusDy/9/evd7Kt3Aa4Lj1Ydg/xn/OeG1kZDh+wFNxAYzP DGM4bL+f8J/hvx0RrpZViirierBswlUQhwnm7P//GSyJ9TfIlSA9IDYLiID6GQ7+ f/3M8n7lRMM/L58IgZ3Nxv5HtHjiXmQ1UD23WKB8lAADaf737ROncEr9IWZRye84 HGIA9wI6ANnMaeJ8F49mOGCiNB1gNYBFXObd9zN7lf++fs5JyABYGFxADgfB8Pzz oHB4O6fRDlcgQvVADAClMGCowg1g5Ob9I5RUcxqvzUA98IR0f9mkt6DE8Z/xvxJR /v7PtHeft+IhlJQISlnEGALSvN9bfhXVMhPFAABj9nS+zu6R5QAAAABJRU5ErkJg gg==" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath23)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAjElEQVR42mNgGAWM 6ALJW11q/jP+lwVL/md8PNd7Tws+A1jQBUCamf8z9ILYfxn/FxNyAQs2wdnee2+B 6KRtzgxkGQD3CsN/kCEz4f7F4iUmdI3zvPamx61zFoaFA7r30MWYsNm+KGjvWzjn L8MCRkamVSR7AQ6YGRL+//+HU5oJZ/wC/UuM2ChgYAAAYjIvl7Ex+6kAAAAASUVO RK5CYII=" height="16" preserveAspectRatio="none"/> + <text x="37" xml:space="preserve" y="17" clip-path="url(#clipPath23)" stroke="none">Rectangle</text> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="rgb(232,232,232)"> + <rect x="0" width="232" height="149" y="0" clip-path="url(#clipPath5)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="white"> + <rect x="0" width="232" height="121" y="0" clip-path="url(#clipPath6)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(207,31)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,31)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath9)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath9)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath9)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="44" height="22" y="0" clip-path="url(#clipPath9)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath9)" stroke="none">width</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,54)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(207,55)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,55)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath11)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath11)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath11)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="49" height="22" y="0" clip-path="url(#clipPath11)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath11)" stroke="none">height</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,78)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(170,79)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath13)" stroke="none">boolean</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,79)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath14)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath14)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAA3UlEQVR42mNgoBAw ogt8WmejxsjI6AyUMkCV+X/h////e/mCjtzCacDn9XZhQMoZv43/j/MEHl4A4zPD GF/W2yYApe2IcLRsVYQ8V/vKh1fhLoA4m6kYXWnVwjemj978EQKxlxRL7ETx0P9/ vSDvsIBNAfsZFVx7/JMXpBldI9wdED23mKBcA3QFc3d90gXRxXNfW+HwClgPEy6f htvy3gDRvcmix/CFCBOl6YBaBvy/QLpWiB4mSJT830uydqgeRlJSIRLYyxt4aBVK SgSlLFAKAzKViNVMlcxEMQAA0HVXcKsiv9IAAAAASUVORK5CYII=" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath14)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 I7arHRvdAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <rect x="36" width="110" height="22" y="0" clip-path="url(#clipPath14)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath14)" stroke="none">hasSolidBorder</text> + </g> + <g fill="gray" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,30)" stroke="gray"> + <rect x="0" width="232" height="1" y="72" clip-path="url(#clipPath15)" stroke="none"/> + </g> + <g fill="gray" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,102)" stroke="gray"> + <rect x="0" width="232" height="1" y="0" clip-path="url(#clipPath16)" stroke="none"/> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,103)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(196,104)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath18)" stroke="none">void</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,104)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath19)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath19)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABC0lEQVR42mNgoBAw ogv86F2oxvT3r/M/BgYDZHEmBoYL/5iZ93IUx9/CacDP7rlh//8zOuOzkYnh/3G2 suQFMD4zjPGra27CfwZGO0JOBqqRrXXz42rZvekq1GUQZ/9jYLQk1t8gV4L0wA0A +ZnUwIPpYQERyAF24sl9of4Te01hfAV+4XcPPr4VgrE7XQNPI+thwWVDoYXz6Suv ngrtvndD2V9d/wYPG9ufpZdP62AGKg5gIaP4TkdM+h2IHaVr+lCMm+879lihEDDB EgkZGi/AExI4Sv7+LSbJBGbmXlCqBCekll0b3oISB9A8JaLSP+P/vRwliYdQUiIo ZRFjCEgze2nyKqplJooBAPLmaJ/uO4SyAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath19)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAjElEQVR42mNgGAWM 6ALJW11q/jP+lwVL/md8PNd7Tws+A1jQBUCamf8z9ILYfxn/FxNyAQs2wdnee2+B 6KRtzgxkGQD3CsN/kCEz4f7F4iUmdI3zvPamx61zFoaFA7r30MWYsNm+KGjvWzjn L8MCRkamVSR7AQ6YGRL+//+HU5oJZ/wC/UuM2ChgYAAAYjIvl7Ex+6kAAAAASUVO RK5CYII=" height="16" preserveAspectRatio="none"/> + <rect x="36" width="67" height="22" y="0" clip-path="url(#clipPath19)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath19)" stroke="none">scale(int)</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,127)" stroke="white"> + <rect x="0" width="232" height="24" y="0" clip-path="url(#clipPath7)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(207,128)"> + <text x="3" xml:space="preserve" y="17" clip-path="url(#clipPath8)" stroke="none">int</text> + </g> + <g fill="white" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(4,128)" stroke="white"> + <rect x="0" width="36" height="22" y="0" clip-path="url(#clipPath21)" stroke="none"/> + <image x="2" y="3" clip-path="url(#clipPath21)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABC0lEQVR42mNgoBAw ogv86F2oxvT3r/M/BgYDZHEmBoYL/5iZ93IUx9/CacDP7rlh//8zOuOzkYnh/3G2 suQFMD4zjPGra27CfwZGO0JOBqqRrXXz42rZvekq1GUQZ/9jYLQk1t8gV4L0wA0A +ZnUwIPpYQERyAF24sl9of4Te01hfAV+4XcPPr4VgrE7XQNPI+thwWVDoYXz6Suv ngrtvndD2V9d/wYPG9ufpZdP62AGKg5gIaP4TkdM+h2IHaVr+lCMm+879lihEDDB EgkZGi/AExI4Sv7+LSbJBGbmXlCqBCekll0b3oISB9A8JaLSP+P/vRwliYdQUiIo ZRFjCEgze2nyKqplJooBAPLmaJ/uO4SyAAAAAElFTkSuQmCC" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath21)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAjElEQVR42mNgGAWM 6ALJW11q/jP+lwVL/md8PNd7Tws+A1jQBUCamf8z9ILYfxn/FxNyAQs2wdnee2+B 6KRtzgxkGQD3CsN/kCEz4f7F4iUmdI3zvPamx61zFoaFA7r30MWYsNm+KGjvWzjn L8MCRkamVSR7AQ6YGRL+//+HU5oJZ/wC/UuM2ChgYAAAYjIvl7Ex+6kAAAAASUVO RK5CYII=" height="16" preserveAspectRatio="none"/> + <rect x="36" width="105" height="22" y="0" clip-path="url(#clipPath21)" stroke="none"/> + <text fill="black" x="37" xml:space="preserve" y="17" clip-path="url(#clipPath21)" stroke="none">getPerimeter()</text> + </g> + <g fill="rgb(232,232,232)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="rgb(232,232,232)"> + <rect x="0" width="232" height="28" y="0" clip-path="url(#clipPath22)" stroke="none"/> + </g> + <g fill="url(#linearGradient2)" font-size="15" font-family="'Ubuntu'" transform="matrix(1,0,0,1,20,20) translate(2,2)" stroke="url(#linearGradient2)"> + <rect x="0" width="232" height="28" y="0" clip-path="url(#clipPath22)" stroke="none"/> + </g> + <g font-family="'Ubuntu'" font-size="15" transform="matrix(1,0,0,1,20,20) translate(5,5)"> + <image x="2" y="3" clip-path="url(#clipPath23)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABGElEQVR42mNgoBAw ogs4b72r9oeRyRnINECTusDy/9/evd7Kt3Aa4Lj1Ydg/xn/OeG1kZDh+wFNxAYzP DGM4bL+f8J/hvx0RrpZViirierBswlUQhwnm7P//GSyJ9TfIlSA9IDYLiID6GQ7+ f/3M8n7lRMM/L58IgZ3Nxv5HtHjiXmQ1UD23WKB8lAADaf737ROncEr9IWZRye84 HGIA9wI6ANnMaeJ8F49mOGCiNB1gNYBFXObd9zN7lf++fs5JyABYGFxADgfB8Pzz oHB4O6fRDlcgQvVADAClMGCowg1g5Ob9I5RUcxqvzUA98IR0f9mkt6DE8Z/xvxJR /v7PtHeft+IhlJQISlnEGALSvN9bfhXVMhPFAABj9nS+zu6R5QAAAABJRU5ErkJg gg==" height="16" preserveAspectRatio="none"/> + <image x="18" y="3" clip-path="url(#clipPath23)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAjElEQVR42mNgGAWM 6ALJW11q/jP+lwVL/md8PNd7Tws+A1jQBUCamf8z9ILYfxn/FxNyAQs2wdnee2+B 6KRtzgxkGQD3CsN/kCEz4f7F4iUmdI3zvPamx61zFoaFA7r30MWYsNm+KGjvWzjn L8MCRkamVSR7AQ6YGRL+//+HU5oJZ/wC/UuM2ChgYAAAYjIvl7Ex+6kAAAAASUVO RK5CYII=" height="16" preserveAspectRatio="none"/> + <text x="37" xml:space="preserve" y="17" clip-path="url(#clipPath23)" stroke="none">Rectangle</text> + </g> + </g> +</svg> diff --git a/Doc/Sd1/Ref/ObjectsAndClasses/scaleRectangle.svg b/Doc/Sd1/Ref/ObjectsAndClasses/scaleRectangle.svg new file mode 100644 index 0000000000000000000000000000000000000000..5467da39d9a7da1464ffe676821aae5ee9e6c81d --- /dev/null +++ b/Doc/Sd1/Ref/ObjectsAndClasses/scaleRectangle.svg @@ -0,0 +1,906 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- Created with Inkscape (http://www.inkscape.org/) --> + +<svg + xmlns:ns1="http://sozi.baierouge.fr" + 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" + sodipodi:docname="scaleRectangle.svg" + inkscape:version="0.92.1 r15371" + version="1.2" + id="svg2" + height="300" + width="821.33331"> + <sodipodi:namedview + id="base" + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1.0" + inkscape:pageopacity="0.0" + inkscape:pageshadow="2" + inkscape:zoom="1.2077062" + inkscape:cx="346.59726" + inkscape:cy="89.776511" + inkscape:document-units="px" + inkscape:current-layer="layer1" + showgrid="true" + inkscape:window-width="1600" + inkscape:window-height="1105" + inkscape:window-x="0" + inkscape:window-y="0" + inkscape:window-maximized="1" + showguides="true" + inkscape:guide-bbox="true"> + <inkscape:grid + type="xygrid" + id="grid1569" /> + </sodipodi:namedview> + <defs + id="defs4"> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker11618" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Mend"> + <path + transform="matrix(-0.4,0,0,-0.4,-4,0)" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + id="path11616" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker2318" + style="overflow:visible" + inkscape:isstock="true"> + <path + inkscape:connector-curvature="0" + id="path2316" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker4887" + style="overflow:visible" + inkscape:isstock="true"> + <path + id="path4627" + d="M 0,0 5,-5 -12.5,0 5,5 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1" + transform="matrix(-0.8,0,0,-0.8,-10,0)" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker6797" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> + <path + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + id="path6799" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker6793" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> + <path + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + id="path6795" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="marker6778" + style="overflow:visible" + inkscape:isstock="true"> + <path + id="path6514" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lstart" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lstart" + style="overflow:visible"> + <path + id="path3841" + d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareM" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareM"> + <path + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path3914" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lend" + style="overflow:visible"> + <path + id="path3844" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondM" + orient="auto" + refY="0" + refX="0" + id="DiamondM" + style="overflow:visible"> + <path + id="path3923" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill-rule:evenodd;stroke:#000000;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondMH" + orient="auto" + refY="0" + refX="0" + id="DiamondMH" + style="overflow:visible"> + <path + id="path4656" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendB" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendB" + style="overflow:visible"> + <path + id="path4659" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMU" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMU"> + <path + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path5221" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lend3" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lend3" + style="overflow:visible"> + <path + id="path5224" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondMo" + orient="auto" + refY="0" + refX="0" + id="DiamondMo" + style="overflow:visible"> + <path + id="path5799" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendO" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendO" + style="overflow:visible"> + <path + id="path5802" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondM1" + orient="auto" + refY="0" + refX="0" + id="DiamondM1" + style="overflow:visible"> + <path + id="path6393" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendV" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendV" + style="overflow:visible"> + <path + id="path6396" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMN" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMN"> + <path + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path7813" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LstartP" + orient="auto" + refY="0" + refX="0" + id="Arrow1LstartP" + style="overflow:visible"> + <path + id="path7816" + d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMb" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMb"> + <path + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path9491" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendX" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendX" + style="overflow:visible"> + <path + id="path9494" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareM8" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareM8"> + <path + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path10143" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendT" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendT" + style="overflow:visible"> + <path + id="path10146" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMNT" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMNT"> + <path + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path12195" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LstartPJ" + orient="auto" + refY="0" + refX="0" + id="Arrow1LstartPJ" + style="overflow:visible"> + <path + id="path12198" + d="M 10.666667,0 14.933333,-4.2666667 0,0 14.933333,4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + style="overflow:visible" + id="SquareMNTL" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="SquareMNTL"> + <path + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.42666668pt" + d="M -2.1333333,-2.1333333 V 2.1333333 H 2.1333333 V -2.1333333 Z" + id="path12907" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1Lendx" + orient="auto" + refY="0" + refX="0" + id="Arrow1Lendx" + style="overflow:visible"> + <path + id="path12910" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#ff0000;fill-rule:evenodd;stroke:#ff0000;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="DiamondMoY" + orient="auto" + refY="0" + refX="0" + id="DiamondMoY" + style="overflow:visible"> + <path + id="path13187" + d="M 0,-3.0169928 -3.0169981,0 0,3.0169851 3.0169797,0 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.42666668pt" + inkscape:connector-curvature="0" /> + </marker> + <marker + inkscape:stockid="Arrow1LendOe" + orient="auto" + refY="0" + refX="0" + id="Arrow1LendOe" + style="overflow:visible"> + <path + id="path13190" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + style="fill:#00ff00;fill-rule:evenodd;stroke:#00ff00;stroke-width:0.85333335pt" + inkscape:connector-curvature="0" /> + </marker> + <linearGradient + id="linearGradient3928-8"> + <stop + offset="0" + style="stop-color:#7c7c7c" + id="stop3930-2" /> + <stop + offset="1" + style="stop-color:#e6e3e3" + id="stop3932-0" /> + </linearGradient> + <linearGradient + id="linearGradient8877"> + <stop + style="stop-color:#cecece;stop-opacity:1;" + offset="0" + id="stop8879" /> + <stop + style="stop-color:#ffffff;stop-opacity:1;" + offset="1" + id="stop8881" /> + </linearGradient> + <linearGradient + id="linearGradient8869"> + <stop + id="stop8871" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop8873" + offset="1" + style="stop-color:#000000;stop-opacity:1;" /> + </linearGradient> + <linearGradient + id="linearGradient7421"> + <stop + id="stop7423" + offset="0" + style="stop-color:#000000;stop-opacity:1;" /> + <stop + id="stop7425" + offset="1" + style="stop-color:#000000;stop-opacity:0;" /> + </linearGradient> + <linearGradient + id="linearGradient7405"> + <stop + style="stop-color:#9e9e9e;stop-opacity:1;" + offset="0" + id="stop7407" /> + <stop + style="stop-color:#ffffff;stop-opacity:0;" + offset="1" + id="stop7409" /> + </linearGradient> + <linearGradient + id="linearGradient7378"> + <stop + id="stop7380" + offset="0" + style="stop-color:#9e9e9e;stop-opacity:1;" /> + <stop + id="stop7382" + offset="1" + style="stop-color:#ffffff;stop-opacity:1;" /> + </linearGradient> + <inkscape:perspective + id="perspective6864" + inkscape:persp3d-origin="32 : 21.333333 : 1" + inkscape:vp_z="64 : 32 : 1" + inkscape:vp_y="0 : 1000 : 0" + inkscape:vp_x="0 : 32 : 1" + sodipodi:type="inkscape:persp3d" /> + <filter + id="imagebot_16" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_21" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14" + y2="-235.34229" + xlink:href="#linearGradient3928-8" + x2="33.162106" + y1="-192.16943" + x1="32.287571" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_18" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_16-6" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_21-1" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-8" + y2="-235.34229" + xlink:href="#linearGradient3928-8" + x2="33.162106" + y1="-192.16943" + x1="32.287571" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12-7" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_18-9" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-2" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_16-2" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_21-8" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-9" + y2="-235.34229" + xlink:href="#linearGradient3928-8" + x2="33.162106" + y1="-192.16943" + x1="32.287571" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12-73" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_18-6" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-1" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + style="color-interpolation-filters:sRGB" + id="imagebot_16-0"> + <feGaussianBlur + id="imagebot_21-7" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-5" + y2="-235.34229" + xlink:href="#linearGradient3928-8" + x2="33.162106" + y1="-192.16943" + x1="32.287571" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + style="color-interpolation-filters:sRGB" + id="imagebot_12-0" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215"> + <feGaussianBlur + id="imagebot_18-4" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-8" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_16-02" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_21-9" + stdDeviation="1.2625" /> + </filter> + <linearGradient + id="imagebot_14-4" + y2="0.73097426" + xlink:href="#linearGradient3928-8" + x2="36.048218" + y1="43.90382" + x1="35.173683" + gradientTransform="scale(0.90019155,1.1108747)" + gradientUnits="userSpaceOnUse" /> + <filter + id="imagebot_12-3" + width="1.0832" + y="-0.1075" + x="-0.041609999" + height="1.215" + style="color-interpolation-filters:sRGB"> + <feGaussianBlur + id="imagebot_18-5" + stdDeviation="0.5375" /> + </filter> + <linearGradient + id="imagebot_9-17" + y2="-245.02541" + xlink:href="#linearGradient3928-8" + x2="34.572056" + y1="-254.4969" + x1="43.709675" + gradientUnits="userSpaceOnUse" /> + <marker + inkscape:isstock="true" + style="overflow:visible" + id="marker6793-6" + refX="0" + refY="0" + orient="auto" + inkscape:stockid="Arrow1Lend"> + <path + style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.85333335pt;stroke-opacity:1" + d="M -10.666667,0 -14.933333,4.2666667 0,0 -14.933333,-4.2666667 Z" + id="path6795-8" + inkscape:connector-curvature="0" /> + </marker> + </defs> + <metadata + id="metadata7"> + <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> + <g + inkscape:label="Layer 1" + inkscape:groupmode="layer" + id="layer1" + transform="translate(0,-822.51971)"> + <rect + style="fill:#f4e3d7;stroke:#000000;stroke-width:3.87298346;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect1184-6" + width="200" + height="280" + x="610" + y="832.51971" + ry="0" /> + <text + xml:space="preserve" + style="font-style:normal;font-weight:normal;font-size:12.80000019px;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.06666672" + x="104.51711" + y="415.68225" + id="text3004"><tspan + sodipodi:role="line" + id="tspan3006" + x="104.51711" + y="415.68225" + style="font-size:42.66666794px;line-height:1.25;font-family:sans-serif;stroke-width:1.06666672">Â </tspan></text> + <rect + style="fill:#f4e3d7;stroke:#000000;stroke-width:3.87298346;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" + id="rect1184" + width="100" + height="140" + x="150" + y="902.51971" + ry="0" /> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + x="110.68594" + y="889.32806" + id="text1196"><tspan + sodipodi:role="line" + id="tspan1194" + x="110.68594" + y="889.32806" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#0000ff">width=20</tspan></text> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:1.25;font-family:monospace;-inkscape-font-specification:monospace;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + x="661.92346" + y="963.10437" + id="text1200"><tspan + sodipodi:role="line" + id="tspan1198" + x="661.92346" + y="963.10437" + style="fill:#008000">height</tspan><tspan + sodipodi:role="line" + x="661.92346" + y="1009.7711" + style="fill:#008000" + id="tspan1718"> =60</tspan></text> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + x="619.4068" + y="873.02295" + id="text1196-3"><tspan + sodipodi:role="line" + id="tspan1194-5" + x="619.4068" + y="873.02295" + style="fill:#0000ff">width=40</tspan></text> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:37.33333206px;line-height:1.25;font-family:monospace;-inkscape-font-specification:monospace;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + x="5.3691359" + y="963.10437" + id="text1200-6"><tspan + sodipodi:role="line" + id="tspan1198-2" + x="5.3691359" + y="963.10437" + style="fill:#008000">height</tspan><tspan + sodipodi:role="line" + x="5.3691359" + y="1009.771" + style="fill:#008000" + id="tspan1718-9"> =30</tspan></text> + <path + style="fill:#ffaaaa;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" + d="m 320,952.51972 h 180 l -40,-40 110,59.99998 -110,60 40,-40 H 320 Z" + id="path1751" + inkscape:connector-curvature="0" + sodipodi:nodetypes="cccccccc" /> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:32px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + x="326.05136" + y="981.34784" + id="text1745"><tspan + sodipodi:role="line" + x="326.05136" + y="981.34784" + id="tspan1747">scale by 2</tspan></text> + </g> + <script + ns1:version="14.10-05142318" + id="sozi-script">function namespace(b,d,a){var c=b;d.split(".").forEach(function(e){if(typeof c[e]==="undefined"){c[e]={}}c=c[e]});if(a){a(c,b)}return c}namespace(this,"sozi.events",function(b){var a={};b.listen=function(c,d){if(!a.hasOwnProperty(c)){a[c]=[]}a[c].push(d)};b.fire=function(d){var c=Array.prototype.slice.call(arguments,1);if(a.hasOwnProperty(d)){a[d].forEach(function(e){e.apply(null,c)})}}});namespace(this,"sozi.proto",function(a){a.Object={installConstructors:function(){function b(){}b.prototype=this;this.instance=function(){var c=new b();c.construct.apply(c,arguments);return c};this.subtype=function(d){var c=new b();c.augment(d);c.installConstructors();return c}},construct:function(){},augment:function(c){for(var b in c){if(c.hasOwnProperty(b)){this[b]=c[b]}}return this},bind:function(c){var b=this;return function(){return c.apply(b,arguments)}}};a.Object.installConstructors()});namespace(this,"sozi.actions",function(A,g){var u=namespace(g,"sozi.player");var v=namespace(g,"sozi.display");var n=g.document;var o=0;var w=1;var t=1.05;var y=5;var m=5;var r=false;var i=0;var h=0;function a(C,B,D){u.stop();v.viewPorts.player.zoom(C>0?t:1/t,B,D)}function x(B){u.stop();v.viewPorts.player.rotate(B>0?y:-y)}function s(){if(sozi.framelist.isVisible()){sozi.framelist.hide();u.restart()}else{u.stop();sozi.framelist.show()}}function d(B){return v.viewPorts.player.contains(B.clientX,B.clientY)}function f(B){if(!d(B)){return}if(B.button===o){n.documentElement.addEventListener("mousemove",q,false);r=false;i=B.clientX;h=B.clientY}else{if(B.button===w){s()}}B.stopPropagation();B.preventDefault()}function q(B){if(!d(B)){return}u.stop();if(!r&&(Math.abs(B.clientX-i)>m||Math.abs(B.clientY-h)>m)){r=true}if(r){sozi.events.fire("sozi.player.cleanup");v.viewPorts.player.drag(B.clientX-i,B.clientY-h);i=B.clientX;h=B.clientY}B.stopPropagation()}function c(B){if(!d(B)){return}if(B.button===o){n.documentElement.removeEventListener("mousemove",q,false)}B.stopPropagation();B.preventDefault()}function p(B){if(!d(B)){return}u.moveToPrevious();B.stopPropagation();B.preventDefault()}function e(B){if(!d(B)){return}if(!r&&B.button!==w){u.moveToNext()}B.stopPropagation();B.preventDefault()}function j(B){if(!d(B)){return}if(!B){B=g.event}var C=0;if(B.wheelDelta){C=B.wheelDelta}else{if(B.detail){C=-B.detail}}if(C!==0){if(B.shiftKey){x(C)}else{a(C,B.clientX,B.clientY)}}B.stopPropagation();B.preventDefault()}function l(B){if(B.altKey||B.ctrlKey||B.metaKey){return}switch(B.charCode||B.which){case 43:a(1,g.innerWidth/2,g.innerHeight/2);break;case 45:a(-1,g.innerWidth/2,g.innerHeight/2);break;case 61:u.moveToCurrent();break;case 70:case 102:u.showAll();break;case 84:case 116:s();break;case 82:x(-1);break;case 114:x(1);break;default:return}B.stopPropagation();B.preventDefault()}function b(B){if(B.altKey||B.ctrlKey||B.metaKey){return}switch(B.keyCode){case 36:if(B.shiftKey){u.jumpToFirst()}else{u.moveToFirst()}break;case 35:if(B.shiftKey){u.jumpToLast()}else{u.moveToLast()}break;case 38:case 33:case 37:if(B.shiftKey){u.jumpToPrevious()}else{u.moveToPrevious()}break;case 40:case 34:case 39:case 13:case 32:if(B.shiftKey){u.jumpToNext()}else{u.moveToNext()}break;default:return}B.stopPropagation();B.preventDefault()}function z(B){B.stopPropagation()}function k(){var C=n.getElementsByTagName("a");for(var D=0;D<C.length;D+=1){C[D].addEventListener("click",z,false);C[D].addEventListener("contextmenu",z,false)}var B=n.documentElement;B.addEventListener("click",e,false);B.addEventListener("mousedown",f,false);B.addEventListener("mouseup",c,false);B.addEventListener("contextmenu",p,false);B.addEventListener("DOMMouseScroll",j,false);g.onmousewheel=j;B.addEventListener("keypress",l,false);B.addEventListener("keydown",b,false)}sozi.events.listen("sozi.display.ready",k)});namespace(this,"sozi.animation",function(d,g){var h=g.mozRequestAnimationFrame||g.webkitRequestAnimationFrame||g.msRequestAnimationFrame||g.oRequestAnimationFrame;var k=function(){return g.performance&&g.performance.now?g.performance.now():Date.now()};d.setAnimationFrameHandlers=function(l,m){h=l;k=m};var i=40;var c;var j=[];function e(){if(j.length>0){if(h){h(e)}j.forEach(function(l){l.step(k())})}else{if(!h){g.clearInterval(c)}}}function b(){if(h){h(e)}else{c=g.setInterval(function(){e(k())},i)}}function a(l){j.push(l);if(j.length===1){b()}}function f(l){j.splice(j.indexOf(l),1)}d.Animator=sozi.proto.Object.subtype({construct:function(){this.durationMs=0;this.data=null;this.initialTime=0;this.started=false},start:function(l,m){this.durationMs=l;this.data=m;this.initialTime=k();this.onStep(0);if(!this.started){this.started=true;a(this)}},stop:function(){if(this.started){f(this);this.started=false}},step:function(m){var l=m-this.initialTime;if(l>=this.durationMs){this.stop();this.onStep(1);this.onDone()}else{this.onStep(l/this.durationMs)}},onStep:function(l){},onDone:function(){}});d.profiles={linear:function(l){return l},accelerate:function(l){return Math.pow(l,3)},"strong-accelerate":function(l){return Math.pow(l,5)},decelerate:function(l){return 1-Math.pow(1-l,3)},"strong-decelerate":function(l){return 1-Math.pow(1-l,5)},"accelerate-decelerate":function(l){var m=l<=0.5?l:1-l,n=Math.pow(2*m,3)/2;return l<=0.5?n:1-n},"strong-accelerate-decelerate":function(l){var m=l<=0.5?l:1-l,n=Math.pow(2*m,5)/2;return l<=0.5?n:1-n},"decelerate-accelerate":function(l){var m=l<=0.5?l:1-l,n=(1-Math.pow(1-2*m,2))/2;return l<=0.5?n:1-n},"strong-decelerate-accelerate":function(l){var m=l<=0.5?l:1-l,n=(1-Math.pow(1-2*m,3))/2;return l<=0.5?n:1-n},"immediate-beginning":function(l){return 1},"immediate-end":function(l){return l===1?1:0},"immediate-middle":function(l){return l>=0.5?1:0}}});namespace(this,"sozi.display",function(c,g){var f="http://www.w3.org/2000/svg";var b="http://www.w3.org/1999/xlink";var i=g.document;var k;var h;var j;c.viewPorts={};var e;c.CameraState=sozi.proto.Object.subtype({construct:function(){this.cx=this.cy=0;this.width=this.height=1;this.angle=0;this.clipped=true;this.transitionZoomPercent=0;this.transitionProfile=sozi.animation.profiles.linear;this.transitionPath=null},setCenter:function(l,m){this.cx=l;this.cy=m;return this},setSize:function(m,l){this.width=m;this.height=l;return this},setClipped:function(l){this.clipped=l;return this},setAngle:function(l){this.angle=(l+180)%360-180;return this},setRawAngle:function(l){this.angle=l;return this},setTransitionZoomPercent:function(l){this.transitionZoomPercent=l;return this},setTransitionProfile:function(l){this.transitionProfile=l;return this},setTransitionPath:function(l){this.transitionPath=l;return this},setAtElement:function(p){var s,o,t,m;if(p.nodeName==="rect"){s=p.x.baseVal.value;o=p.y.baseVal.value;t=p.width.baseVal.value;m=p.height.baseVal.value}else{var q=p.getBBox();s=q.x;o=q.y;t=q.width;m=q.height}var n=i.documentElement.createSVGPoint();n.x=s+t/2;n.y=o+m/2;var r=p.getCTM();n=n.matrixTransform(r);var l=Math.sqrt(r.a*r.a+r.b*r.b);return this.setCenter(n.x,n.y).setSize(t*l,m*l).setAngle(Math.atan2(r.b,r.a)*180/Math.PI)},setAtState:function(l){return this.setCenter(l.cx,l.cy).setSize(l.width,l.height).setAngle(l.angle).setClipped(l.clipped).setTransitionZoomPercent(l.transitionZoomPercent).setTransitionProfile(l.transitionProfile).setTransitionPath(l.transitionPath)},interpolatableAttributes:["width","height","angle"],interpolate:function(n,o,t,v,r){var p=1-t;for(var q=0;q<this.interpolatableAttributes.length;q+=1){var s=this.interpolatableAttributes[q];this[s]=o[s]*t+n[s]*p}var l=r?n.transitionPath:o.transitionPath;if(v&&l){var x=l.getTotalLength();if(r){var m=l.getPointAtLength(x);var u=l.getPointAtLength(0);var w=l.getPointAtLength(x*p)}else{var m=l.getPointAtLength(0);var u=l.getPointAtLength(x);var w=l.getPointAtLength(x*t)}this.cx=w.x+(o.cx-u.x)*t+(n.cx-m.x)*p;this.cy=w.y+(o.cy-u.y)*t+(n.cy-m.y)*p}else{this.cx=o.cx*t+n.cx*p;this.cy=o.cy*t+n.cy*p}}});c.Camera=c.CameraState.subtype({construct:function(n,o){c.CameraState.construct.call(this);this.viewPort=n;this.svgClipRect=i.createElementNS(f,"rect");var m=i.createElementNS(f,"clipPath");m.setAttribute("id","sozi-clip-path-"+n.id+"-"+o);m.appendChild(this.svgClipRect);n.svgGroup.appendChild(m);var l=i.createElementNS(f,"g");l.setAttribute("clip-path","url(#sozi-clip-path-"+n.id+"-"+o+")");n.svgGroup.appendChild(l);if(n.isPrimary){this.svgLayer=i.createElementNS(f,"g");this.svgLayer.appendChild(i.getElementById(o))}else{this.svgLayer=i.createElementNS(f,"use");this.svgLayer.setAttributeNS(b,"href","#"+o)}l.appendChild(this.svgLayer)},setAtState:function(l){return c.CameraState.setAtState.call(this,l).update()},getScale:function(){return Math.min(this.viewPort.width/this.width,this.viewPort.height/this.height)},rotate:function(l){return this.setAngle(this.angle+l).update()},zoom:function(m,l,n){return this.setSize(this.width/m,this.height/m).drag((1-m)*(l-this.viewPort.width/2),(1-m)*(n-this.viewPort.height/2))},drag:function(m,l){var q=this.getScale();var o=this.angle*Math.PI/180;var n=Math.sin(o);var p=Math.cos(o);return this.setCenter(this.cx-(m*p-l*n)/q,this.cy-(m*n+l*p)/q).setClipped(false).update()},update:function(){var q=this.getScale();var n=this.width*q;var m=this.height*q;var l=(this.viewPort.width-n)/2;var r=(this.viewPort.height-m)/2;this.svgClipRect.setAttribute("x",this.clipped?l:0);this.svgClipRect.setAttribute("y",this.clipped?r:0);this.svgClipRect.setAttribute("width",this.clipped?n:this.viewPort.width);this.svgClipRect.setAttribute("height",this.clipped?m:this.viewPort.height);var p=-this.cx+this.width/2+l/q;var o=-this.cy+this.height/2+r/q;this.svgLayer.setAttribute("transform","scale("+q+")translate("+p+","+o+")rotate("+(-this.angle)+","+this.cx+","+this.cy+")");return this}});c.ViewPort=sozi.proto.Object.subtype({construct:function(n,m,l){this.id=n;c.viewPorts[n]=this;this.isPrimary=!!l;if(this.isPrimary){if(e){throw"Failed to create a primary viewport. A primary viewport already exists."}else{e=this}}this.svgGroup=i.createElementNS(f,"g");this.svgGroup.setAttribute("class","sozi-viewport");this.svgGroup.setAttribute("id","sozi-viewport-"+n);i.documentElement.appendChild(this.svgGroup);this.setLocation(0,0).setSize(g.innerWidth,g.innerHeight);this.cameras={};m.forEach(function(o){this.cameras[o]=c.Camera.instance(this,o)},this)},setSize:function(m,l){this.width=m;this.height=l;return this},setLocation:function(l,m){this.x=l;this.y=m;return this},contains:function(l,m){return l>=this.x&&l<this.x+this.width&&m>=this.y&&m<this.y+this.height},getDocumentState:function(){var m=c.CameraState.instance().setCenter(k.x+k.width/2,k.y+k.height/2).setSize(k.width,k.height).setClipped(false);var l={};for(var n in this.cameras){l[n]=m}return l},update:function(){this.svgGroup.setAttribute("transform","translate("+this.x+","+this.y+")");for(var l in this.cameras){this.cameras[l].update()}return this},showFrame:function(l){for(var m in l.states){this.cameras[m].setAtState(l.states[m])}return this},drag:function(m,l){for(var n in this.cameras){this.cameras[n].drag(m,l)}return this},zoom:function(m,l,o){for(var n in this.cameras){this.cameras[n].zoom(m,l,o)}return this},rotate:function(l){for(var m in this.cameras){this.cameras[m].rotate(l)}return this},onWindowResize:function(m,l){this.setLocation(this.x*m,this.y*l).setSize(this.width*m,this.height*l).update()}});function d(){var l=i.documentElement;k=l.getBBox();h=g.innerWidth;j=g.innerHeight;l.setAttribute("width",h);l.setAttribute("height",j);sozi.events.fire("sozi.display.ready")}function a(){var l=i.documentElement;l.setAttribute("width",g.innerWidth);l.setAttribute("height",g.innerHeight);for(var m in c.viewPorts){c.viewPorts[m].onWindowResize(g.innerWidth/h,g.innerHeight/j)}h=g.innerWidth;j=g.innerHeight}sozi.events.listen("sozi.document.ready",d);g.addEventListener("resize",a,false)});namespace(this,"sozi.document",function(c,e){var g=e.document;var b="http://sozi.baierouge.fr";var d={title:"Untitled",sequence:"0",hide:"true",clip:"true","show-in-frame-list":"true","timeout-enable":"false","timeout-ms":"5000","transition-duration-ms":"1000","transition-zoom-percent":"0","transition-profile":"linear","transition-path-hide":"true"};var h=["g","image","path","rect","circle","ellipse","line","polyline","polygon","text","clippath"];c.frames=[];c.idLayerList=[];function j(l,k){return l.getAttributeNS(b,k)||d[k]}function i(o,p,k){var l=o.states[p]=o.states[p]||sozi.display.CameraState.instance();if(typeof l.transitionZoomPercent==="undefined"||k.hasAttributeNS(b,"transition-zoom-percent")){l.setTransitionZoomPercent(parseInt(j(k,"transition-zoom-percent"),10))}if(typeof l.transitionProfile==="undefined"||k.hasAttributeNS(b,"transition-profile")){l.setTransitionProfile(sozi.animation.profiles[j(k,"transition-profile")])}if(typeof l.transitionPath==="undefined"||k.hasAttributeNS(b,"transition-path")){var n=g.getElementById(k.getAttributeNS(b,"transition-path"));if(n&&n.nodeName==="path"){l.setTransitionPath(n);if(j(k,"transition-path-hide")==="true"){n.style.visibility="hidden"}}}if(k.hasAttributeNS(b,"refid")){var m=g.getElementById(k.getAttributeNS(b,"refid"));if(m){l.setAtElement(m);if(j(k,"hide")==="true"){m.style.visibility="hidden"}}}if(k.hasAttributeNS(b,"clip")){l.setClipped(j(k,"clip")==="true")}}function a(){var l=[];var p=g.getElementsByTagNameNS(b,"layer");for(var n=0;n<p.length;n+=1){var s=p[n].getAttributeNS(b,"group");if(s&&l.indexOf(s)===-1){l.push(s)}}var r=g.documentElement;var o="http://www.w3.org/2000/svg";var q=g.createElementNS(o,"g");var k=Array.prototype.slice.call(r.childNodes);k.forEach(function(u,t){if(!u.getAttribute){r.removeChild(u)}else{if(l.indexOf(u.getAttribute("id"))!==-1){if(q.firstChild){q.setAttribute("id","sozi-wrapper-"+t);c.idLayerList.push("sozi-wrapper-"+t);r.insertBefore(q,u);q=g.createElementNS(o,"g")}c.idLayerList.push(u.getAttribute("id"))}else{if(h.indexOf(u.localName.toLowerCase())!==-1){r.removeChild(u);q.appendChild(u)}}}});if(q.firstChild){q.setAttribute("id","sozi-wrapper-"+k.length);c.idLayerList.push("sozi-wrapper-"+k.length);r.appendChild(q)}var m=Array.prototype.slice.call(g.getElementsByTagNameNS(b,"frame"));m.sort(function(u,t){var w=parseInt(j(u,"sequence"),10);var v=parseInt(j(t,"sequence"),10);return w-v});m.forEach(function(v,u){var x={id:v.getAttribute("id"),title:j(v,"title"),showInFrameList:j(v,"show-in-frame-list")==="true",sequence:parseInt(j(v,"sequence"),10),timeoutEnable:j(v,"timeout-enable")==="true",timeoutMs:parseInt(j(v,"timeout-ms"),10),transitionDurationMs:parseInt(j(v,"transition-duration-ms"),10),states:{}};c.idLayerList.forEach(function(A){if(u===0||A.search("sozi-wrapper-[0-9]+")!==-1){i(x,A,v)}else{var z=x.states[A]=sozi.display.CameraState.instance();var y=c.frames[c.frames.length-1].states[A];z.setAtState(y)}});var t=Array.prototype.slice.call(v.getElementsByTagNameNS(b,"layer"));t.forEach(function(y){var z=y.getAttributeNS(b,"group");if(z&&c.idLayerList.indexOf(z)!==-1){i(x,z,y)}});for(var w in x.states){if(x.states.hasOwnProperty(w)){c.frames.push(x);break}}})}c.getFrameIndexForId=function(l){for(var k=0;k<c.frames.length;k+=1){if(c.frames[k].id===l){return k}}return -1};function f(){g.documentElement.removeAttribute("viewBox");a();sozi.events.fire("sozi.document.ready")}e.addEventListener("load",f,false)});namespace(this,"sozi.framelist",function(u,k){var o=k.document;var c=5;var i;var p;var j=0;var h;var s;var b;var v;var w;var t;var e=300;var f="decelerate";var a="http://www.w3.org/2000/svg";function n(z){var x=z.relatedTarget,y=o.documentElement;while(x&&x!==i&&x!==y){x=x.parentNode}if(x!==i){u.hide();sozi.player.restart();z.stopPropagation()}}function r(y){var x=p.getCTM().f;if(x<=-k.innerHeight/2){x+=k.innerHeight/2}else{if(x<0){x=0}}p.setAttribute("transform","translate(0,"+x+")");y.stopPropagation()}function d(y){var x=p.getCTM().f;if(x+j>=k.innerHeight*3/2){x-=k.innerHeight/2}else{if(x+j>k.innerHeight+2*c){x=k.innerHeight-j-4*c}}p.setAttribute("transform","translate(0,"+x+")");y.stopPropagation()}function g(x){return function(y){sozi.player.previewFrame(x);y.stopPropagation()}}function l(x){x.stopPropagation()}function q(){i=o.createElementNS(a,"g");i.setAttribute("id","sozi-toc");o.documentElement.appendChild(i);p=o.createElementNS(a,"g");i.appendChild(p);var y=o.createElementNS(a,"rect");y.setAttribute("id","sozi-toc-background");y.setAttribute("x",c);y.setAttribute("y",c);y.setAttribute("rx",c);y.setAttribute("ry",c);y.addEventListener("click",l,false);y.addEventListener("mousedown",l,false);y.addEventListener("mouseout",n,false);p.appendChild(y);var A=0;sozi.document.frames.forEach(function(D,E){if(D.showInFrameList){var C=o.createElementNS(a,"text");C.appendChild(o.createTextNode(D.title));C.setAttribute("id","sozi-toc-"+D.id);p.appendChild(C);if(E===sozi.player.currentFrameIndex){C.setAttribute("class","sozi-toc-current")}var B=C.getBBox().width;j+=C.getBBox().height;if(B>A){A=B}C.setAttribute("x",2*c);C.setAttribute("y",j+c);C.addEventListener("click",g(E),false);C.addEventListener("mousedown",l,false)}});var x=o.createElementNS(a,"path");x.setAttribute("class","sozi-toc-arrow");x.setAttribute("d","M"+(A+3*c)+","+(5*c)+" l"+(4*c)+",0 l-"+(2*c)+",-"+(3*c)+" z");x.addEventListener("click",r,false);x.addEventListener("mousedown",l,false);i.appendChild(x);var z=o.createElementNS(a,"path");z.setAttribute("class","sozi-toc-arrow");z.setAttribute("d","M"+(A+3*c)+","+(7*c)+" l"+(4*c)+",0 l-"+(2*c)+","+(3*c)+" z");z.addEventListener("click",d,false);z.addEventListener("mousedown",l,false);i.appendChild(z);y.setAttribute("width",A+7*c);y.setAttribute("height",j+2*c);h=-A-9*c;s=0;w=v=h;i.setAttribute("transform","translate("+h+",0)");t=sozi.animation.Animator.instance().augment({onStep:function(B){var D=sozi.animation.profiles[f](B),C=1-D;w=v*D+b*C;i.setAttribute("transform","translate("+w+",0)")}})}function m(x){var y=Array.prototype.slice.call(o.getElementsByClassName("sozi-toc-current"));y.forEach(function(A){A.removeAttribute("class")});var z=sozi.document.frames[x];if(z.showInFrameList){o.getElementById("sozi-toc-"+z.id).setAttribute("class","sozi-toc-current")}}u.show=function(){o.documentElement.appendChild(i);b=w;v=s;t.start(e)};u.hide=function(){b=w;v=h;t.start(e)};u.isVisible=function(){return v===s};sozi.events.listen("sozi.player.ready",q);sozi.events.listen("sozi.player.cleanup",u.hide);sozi.events.listen("sozi.player.framechange",m)});namespace(this,"sozi.framenumber",function(a,d){var g=d.document;var e;var k,i;var f;var b="http://www.w3.org/2000/svg";function h(){var m=k.getBBox(),n=Math.max(m.width,m.height)*0.75,l=n*1.25;f.setAttribute("r",n);e.setAttribute("transform","translate("+l+","+l+")")}function c(){e=g.createElementNS(b,"g");k=g.createElementNS(b,"text");f=g.createElementNS(b,"circle");e.setAttribute("id","sozi-framenumber");f.setAttribute("cx",0);f.setAttribute("cy",0);e.appendChild(f);i=g.createTextNode(sozi.player.currentFrameIndex+1);k.setAttribute("text-anchor","middle");k.setAttribute("dominant-baseline","central");k.setAttribute("x",0);k.setAttribute("y",0);k.appendChild(i);e.appendChild(k);g.documentElement.appendChild(e);h()}function j(l){i.nodeValue=l+1}sozi.events.listen("sozi.player.ready",c);sozi.events.listen("sozi.player.framechange",j)});namespace(this,"sozi.links",function(c,e){var b="http://www.w3.org/2000/svg";var a="http://www.w3.org/1999/xlink";function f(g){return function(h){sozi.player.moveToFrame(g);h.preventDefault();h.stopPropagation()}}function d(){var h=e.document.getElementsByTagNameNS(b,"a");for(var j=0;j<h.length;j+=1){var g=h[j].getAttributeNS(a,"href");if(g&&g[0]==="#"){h[j].addEventListener("click",f(sozi.location.getFrameIndexForHash(g)),false)}}}sozi.events.listen("sozi.document.ready",d)});namespace(this,"sozi.location",function(a,d){var b=false;a.getFrameIndex=function(){return a.getFrameIndexForHash(d.location.hash)};a.getFrameIndexForHash=function(g){var h=g?g.slice(1):"1";var f;if(/^[0-9]+$/.test(h)){f=parseInt(h,10)-1}else{f=sozi.document.getFrameIndexForId(h)}if(f<0){return 0}else{if(f>=sozi.document.frames.length){return sozi.document.frames.length-1}else{return f}}};function e(){var f=a.getFrameIndex();if(!b){sozi.player.moveToFrame(f)}b=false}function c(f){b=true;d.location.hash="#"+sozi.document.frames[f].id}d.addEventListener("hashchange",e,false);sozi.events.listen("sozi.player.framechange",c)});namespace(this,"sozi.player",function(d,g){var l;var c;var i;var e=500;var n=-10;var j="linear";var f=0;d.currentFrameIndex=0;var k=false;var m=false;function h(){if(sozi.document.frames[d.currentFrameIndex].timeoutEnable){m=true;var o=(d.currentFrameIndex+1)%sozi.document.frames.length;i=g.setTimeout(function(){d.moveToFrame(o)},sozi.document.frames[d.currentFrameIndex].timeoutMs)}}d.startFromIndex=function(o){k=true;m=false;f=o;d.currentFrameIndex=o;l.showFrame(sozi.document.frames[o]);h()};d.restart=function(){d.startFromIndex(d.currentFrameIndex)};d.stop=function(){c.stop();if(m){g.clearTimeout(i);m=false}k=false;f=d.currentFrameIndex};function b(o,y,w){var z={ss:((o<0)?Math.max(y,w):Math.min(y,w))*(100-o)/100,ts:0.5,k:0};if(o!==0){var s=y-w;var r=y-z.ss;var q=w-z.ss;if(s!==0){var p=Math.sqrt(r*q);var x=(r-p)/s;var t=(r+p)/s;z.ts=(x>0&&x<=1)?x:t}z.k=r/z.ts/z.ts}return z}d.jumpToFrame=function(o){d.stop();sozi.events.fire("sozi.player.cleanup");f=o;d.currentFrameIndex=o;l.showFrame(sozi.document.frames[o]);sozi.events.fire("sozi.player.framechange",o)};d.getAnimationData=function(o,q,s,p,v,t){var r={};for(var w in o){r[w]={initialState:sozi.display.CameraState.instance(),finalState:sozi.display.CameraState.instance(),useTransitionPath:v,reverseTransitionPath:t};r[w].profile=p||q[w].transitionProfile;r[w].initialState.setAtState(o[w]);if(q.hasOwnProperty(w)){r[w].finalState.setAtState(q[w])}else{r[w].finalState.setAtState(o[w])}if(r[w].finalState.angle-r[w].initialState.angle>180){r[w].finalState.setRawAngle(r[w].finalState.angle-360)}else{if(r[w].finalState.angle-r[w].initialState.angle<-180){r[w].initialState.setRawAngle(r[w].initialState.angle-360)}}var u=s||q[w].transitionZoomPercent;if(u&&q.hasOwnProperty(w)){r[w].zoomWidth=b(u,o[w].width,q[w].width);r[w].zoomHeight=b(u,o[w].height,q[w].height)}}return r};d.previewFrame=function(o){d.currentFrameIndex=o;c.start(e,d.getAnimationData(l.cameras,sozi.document.frames[o].states,n,sozi.animation.profiles[j]),false,false);sozi.events.fire("sozi.player.framechange",o)};d.moveToFrame=function(r){if(m){g.clearTimeout(i);m=false}var q,t,s,p,o;if(r===(d.currentFrameIndex-1)%sozi.document.frames.length){q=sozi.document.frames[d.currentFrameIndex].transitionDurationMs;t=undefined;s=undefined;p=true;o=true}else{if(r===(d.currentFrameIndex+1)%sozi.document.frames.length){q=sozi.document.frames[r].transitionDurationMs;t=undefined;s=undefined;p=true;o=false}else{q=e;t=n;s=sozi.animation.profiles[j];p=false;o=false}}sozi.events.fire("sozi.player.cleanup");k=true;d.currentFrameIndex=r;c.start(q,d.getAnimationData(l.cameras,sozi.document.frames[r].states,t,s,p,o));sozi.events.fire("sozi.player.framechange",r)};d.jumpToFirst=function(){d.jumpToFrame(0)};d.moveToFirst=function(){d.moveToFrame(0)};d.jumpToPrevious=function(){var o=d.currentFrameIndex;if(!c.started||f<=d.currentFrameIndex){o-=1}if(o>=0){d.jumpToFrame(o)}};d.moveToPrevious=function(){for(var o=d.currentFrameIndex-1;o>=0;o-=1){var p=sozi.document.frames[o];if(!p.timeoutEnable||p.timeoutMs!==0){d.moveToFrame(o);break}}};d.jumpToNext=function(){var o=d.currentFrameIndex;if(!c.started||f>=d.currentFrameIndex){o+=1}if(o<sozi.document.frames.length){d.jumpToFrame(o)}};d.moveToNext=function(){if(d.currentFrameIndex<sozi.document.frames.length-1||sozi.document.frames[d.currentFrameIndex].timeoutEnable){d.moveToFrame((d.currentFrameIndex+1)%sozi.document.frames.length)}};d.jumpToLast=function(){d.jumpToFrame(sozi.document.frames.length-1)};d.moveToLast=function(){d.moveToFrame(sozi.document.frames.length-1)};d.moveToCurrent=function(){d.moveToFrame(d.currentFrameIndex)};d.showAll=function(){d.stop();sozi.events.fire("sozi.player.cleanup");c.start(e,d.getAnimationData(l.cameras,l.getDocumentState(),n,sozi.animation.profiles[j],false,false))};function a(){l=sozi.display.ViewPort.instance("player",sozi.document.idLayerList,true);d.startFromIndex(sozi.location.getFrameIndex());g.setTimeout(l.bind(l.update),1);sozi.events.fire("sozi.player.ready")}d.onAnimationStep=function(o,q){for(var s in q){var p=l.cameras[s];p.interpolate(q[s].initialState,q[s].finalState,q[s].profile(o),q[s].useTransitionPath,q[s].reverseTransitionPath);var r;if(q[s].zoomWidth&&q[s].zoomWidth.k!==0){r=o-q[s].zoomWidth.ts;p.width=q[s].zoomWidth.k*r*r+q[s].zoomWidth.ss}if(q[s].zoomHeight&&q[s].zoomHeight.k!==0){r=o-q[s].zoomHeight.ts;p.height=q[s].zoomHeight.k*r*r+q[s].zoomHeight.ss}p.setClipped(q[s].finalState.clipped)}l.update()};c=sozi.animation.Animator.instance().augment({onStep:function(o){d.onAnimationStep(o,this.data)},onDone:function(){for(var o in this.data){l.cameras[o].setAtState(this.data[o].finalState)}l.update();f=d.currentFrameIndex;if(k){h()}}});sozi.events.listen("sozi.display.ready",a)});</script> + <style + ns1:version="14.10-05142318" + id="sozi-style">#sozi-toc text{fill:#eff;font-family:Verdana,sans-serif;font-size:12pt}#sozi-toc text:hover{fill:#0cf;cursor:pointer}#sozi-toc text.sozi-toc-current{fill:#fa4}#sozi-toc-background{stroke:#222;stroke-opacity:.1;stroke-width:10;fill:#222;fill-opacity:.9}.sozi-toc-arrow{fill:#eff;fill-opacity:.75;stroke:none}.sozi-toc-arrow:hover{fill:#0cf}#sozi-framenumber circle{stroke:#222;stroke-opacity:.1;stroke-width:4;fill:#222;fill-opacity:.9}#sozi-framenumber text{fill:#eff;font-family:Verdana,sans-serif;font-size:12pt}</style> + <ns1:frame + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="1" + ns1:title="Gcd implementation" + ns1:refid="rect10351" /> + <ns1:frame + ns1:refid="rect10841" + ns1:title="Gcd maven packaging" + ns1:sequence="2" + ns1:hide="true" + ns1:clip="true" + ns1:show-in-frame-list="true" + ns1:timeout-enable="false" + ns1:timeout-ms="5000.0" + ns1:transition-duration-ms="1000.0" + ns1:transition-zoom-percent="0.0" + ns1:transition-profile="linear" + ns1:transition-path-hide="true" /> + <ns1:frame + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="3" + ns1:title="Using Math.getGcd()" + ns1:refid="rect11089" /> + <ns1:frame + ns1:refid="rect11381" + ns1:title="Fraction project" + ns1:sequence="4" + ns1:hide="true" + ns1:clip="true" + ns1:show-in-frame-list="true" + ns1:timeout-enable="false" + ns1:timeout-ms="5000.0" + ns1:transition-duration-ms="1000.0" + ns1:transition-zoom-percent="0.0" + ns1:transition-profile="linear" + ns1:transition-path-hide="true" /> + <ns1:frame + ns1:transition-path-hide="true" + ns1:transition-profile="linear" + ns1:transition-zoom-percent="0.0" + ns1:transition-duration-ms="1000.0" + ns1:timeout-ms="5000.0" + ns1:timeout-enable="false" + ns1:show-in-frame-list="true" + ns1:clip="true" + ns1:hide="true" + ns1:sequence="5" + ns1:title="Maven dependency definition" + ns1:refid="rect11637" /> + <ns1:frame + ns1:refid="rect11895" + ns1:title="Fraction depends on Gcd" + ns1:sequence="6" + ns1:hide="true" + ns1:clip="true" + ns1:show-in-frame-list="true" + ns1:timeout-enable="false" + ns1:timeout-ms="5000" + ns1:transition-duration-ms="1000" + ns1:transition-zoom-percent="0" + ns1:transition-profile="linear" + ns1:transition-path-hide="true" /> +</svg> diff --git a/Doc/Sd1/objectsClasses.xml b/Doc/Sd1/objectsClasses.xml index 68b3cef053b8028d5cddef635fce37f91dd90c3c..c992c234c081f1e2a062161848878c954a05ea74 100644 --- a/Doc/Sd1/objectsClasses.xml +++ b/Doc/Sd1/objectsClasses.xml @@ -1,117 +1,492 @@ <?xml version="1.0" encoding="UTF-8"?> -<chapter version="5.1" xml:id="sw1ChapterObjectsClasses" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns="http://docbook.org/ns/transclusion" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:html="http://www.w3.org/1999/xhtml" xmlns:db="http://docbook.org/ns/docbook"> +<chapter version="5.1" xml:id="sw1ChapterObjectsClasses" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xila="http://www.w3.org/2001/XInclude/local-attributes" xmlns:xi="http://www.w3.org/2001/XInclude" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ns="http://docbook.org/ns/transclusion" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:html="http://www.w3.org/1999/xhtml" xmlns:db="http://docbook.org/ns/docbook"> <title>Objects and Classes</title> - <section annotations="slide" xml:id="classintro"> - <title>Objects and classes</title> + <figure xml:id="figClassVsInstance"> + <title>Instances of a Class</title> + + <mediaobject> + <imageobject> + <imagedata fileref="Ref/ObjectsAndClasses/modelPerson.svg"/> + </imageobject> + </mediaobject> + </figure> + + <figure xml:id="figClassStructure"> + <title>General class structure</title> + + <mediaobject> + <imageobject> + <imagedata fileref="Ref/ObjectsAndClasses/class.svg"/> + </imageobject> + </mediaobject> + </figure> + + <figure xml:id="sd1_fig_classes"> + <title>What's a class anyway?</title> + + <para>In <link xlink:href="https://en.wikipedia.org/wiki/Object-oriented_programming">object oriented languages</link> <emphasis role="bold">classes</emphasis>:</para> + + <itemizedlist> + <listitem> + <para>are blueprints for objects.</para> + </listitem> + + <listitem> + <para>contain attributes and methods.</para> + </listitem> + + <listitem> + <para>typically hide their implementation.</para> + </listitem> + + <listitem> + <para>allow for tailored access to methods and attributes.</para> + </listitem> + </itemizedlist> + </figure> + + <figure xml:id="sd1_fig_rectangleObjects"> + <title>Rectangle objects</title> + + <mediaobject> + <imageobject> + <imagedata fileref="Ref/ObjectsAndClasses/rectangleObjects.svg"/> + </imageobject> + </mediaobject> + </figure> + + <figure xml:id="sd1_fig_classRectangle"> + <title>A class describing rectangles</title> + + <informaltable border="1"> + <tr> + <td valign="top"><programlisting language="java">public class Rectangle { + int width; + int height; - <para>Defining classes and creating objects.</para> + // solid or dashed: + boolean hasSolidBorder; +}</programlisting></td> - <section xml:id="objectsClassesBasics"> - <title>Classes in <xref linkend="glo_OO"/> languages</title> + <td valign="top"><mediaobject> + <imageobject> + <imagedata fileref="Ref/ObjectsAndClasses/rectangleAttribUml.svg"/> + </imageobject> + </mediaobject></td> + </tr> + </informaltable> + </figure> + + <figure xml:id="fig_rectangleClassInstance"> + <title>Rectangle class and instances</title> + + <mediaobject> + <imageobject> + <imagedata fileref="Ref/ObjectsAndClasses/classRectangle.svg"/> + </imageobject> + </mediaobject> + </figure> + + <figure xml:id="sd1_fig_classRectangleUmlGenerated"> + <title>Generated diagrams</title> + + <informaltable border="1"> + <tr> + <td><mediaobject> + <imageobject> + <imagedata fileref="Ref/ObjectsAndClasses/rectangleAttribUml.svg"/> + </imageobject> + </mediaobject></td> - <figure xml:id="figClassVsInstance"> - <title>Classes and instances</title> + <td><mediaobject> + <imageobject> + <imagedata fileref="Ref/ObjectsAndClasses/rectangleAttribsUml.svg" scale="120"/> + </imageobject> + </mediaobject></td> + </tr> + </informaltable> + </figure> - <mediaobject> - <imageobject> - <imagedata fileref="Ref/ObjectsAndClasses/class.svg"/> - </imageobject> - </mediaobject> - </figure> + <section xml:id="sd1_sect_workingWithObjects"> + <title>Working with objects</title> - <figure xml:id="sd1_fig_classes"> - <title>What's a class anyway?</title> + <figure xml:id="sd1_fig_createRectangle"> + <title>Creating rectangle instances</title> - <para>In <link xlink:href="https://en.wikipedia.org/wiki/Object-oriented_programming">object oriented languages</link> <emphasis role="bold">classes</emphasis>:</para> + <programlisting language="java">Rectangle dashedRectangle = new Rectangle(); - <itemizedlist> - <listitem> - <para>are blueprints for objects.</para> - </listitem> +Rectangle solidRectangle = new Rectangle(); - <listitem> - <para>contain attributes and methods.</para> - </listitem> +...</programlisting> + </figure> - <listitem> - <para>may hide their implementation.</para> - </listitem> + <figure xml:id="sd1_fig_SyntaxCreateObject"> + <title>Syntax creating instances</title> - <listitem> - <para>allow for tailored access to methods and attributes.</para> - </listitem> - </itemizedlist> - </figure> + <programlisting language="java">variable = new (class-name)</programlisting> - <figure xml:id="sd1_fig_classRectangle"> - <title>A class describing rectangles</title> + <glosslist> + <glossentry> + <glossterm>Wording example:</glossterm> - <programlisting language="java">public class Rectangle { - int width; - int height; - boolean hasSolidBorder; // solid or dashed -}</programlisting> - </figure> + <glossdef> + <itemizedlist> + <listitem> + <para><quote>Create an instance of class <classname>Rectangle</classname></quote>.</para> + </listitem> - <figure xml:id="fig_rectangleClassInstance"> - <title>Rectangle class and instances</title> + <listitem> + <para><quote>Create a <classname>Rectangle</classname> object.</quote></para> + </listitem> - <mediaobject> - <imageobject> - <imagedata fileref="Ref/ObjectsAndClasses/classRectangle.svg"/> - </imageobject> - </mediaobject> - </figure> + <listitem> + <para><quote>Create a <classname>Rectangle</classname></quote>.</para> + </listitem> + </itemizedlist> + </glossdef> + </glossentry> + </glosslist> + </figure> + + <figure xml:id="sd1_fig_rectangleAssignAttributes"> + <title>Assigning attribute values</title> - <figure xml:id="sd1_fig_createRectangle"> - <title>Creating rectangles</title> + <programlisting language="java">Rectangle dashedRectangle = new Rectangle(); - <programlisting language="java">Rectangle dashedRectangle = new Rectangle(); dashedRectangle.width = 28; dashedRectangle.height = 10; -dashedRectangle.hasSolidBorder = false; +dashedRectangle.hasSolidBorder = false;</programlisting> -Rectangle solidRectangle = new Rectangle(); -solidRectangle.width = 20; -...</programlisting> - </figure> + <para>Syntax accessing object attributes:</para> - <figure xml:id="fig_rectangleInMemory"> - <title>Memory representation</title> + <programlisting language="java">variable.attributeName = value;</programlisting> + </figure> - <mediaobject> - <imageobject> - <imagedata fileref="Ref/ObjectsAndClasses/rectangleMemory.svg"/> - </imageobject> - </mediaobject> - </figure> + <figure xml:id="fig_rectangleInMemory"> + <title>Memory representation</title> + + <mediaobject> + <imageobject> + <imagedata fileref="Ref/ObjectsAndClasses/rectangleMemory.svg"/> + </imageobject> + </mediaobject> + </figure> + </section> - <figure xml:id="figClassBicycle"> - <title>A class Bicycle</title> + <section xml:id="sd1_sect_methods"> + <title>Object methods</title> + + <figure xml:id="sd1_fig_methodOverview"> + <title>Object methods</title> + + <glosslist> + <glossentry> + <glossterm>Change an object's state.</glossterm> + + <glossdef> + <para>Example: Scale a rectangle.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Get dependent values</glossterm> + + <glossdef> + <para>Example: Calculate a rectangle's perimeter.</para> + </glossdef> + </glossentry> + + <glossentry> + <glossterm>Combined</glossterm> + + <glossdef> + <para>Scale a rectangle and calculate its new perimeter.</para> + </glossdef> + </glossentry> + </glosslist> + </figure> + + <figure xml:id="fig_scaleRectanglePrinciple"> + <title>Scaling a rectangle</title> + + <mediaobject> + <imageobject> + <imagedata fileref="Ref/ObjectsAndClasses/scaleRectangle.svg"/> + </imageobject> + </mediaobject> + </figure> + + <figure xml:id="fig_scaleRectangleImplement"> + <title>Scaling implementation</title> + + <informaltable border="1"> + <tr> + <td valign="top"><programlisting language="java">public class Rectangle { + int width, height; + boolean hasSolidBorder; + + public void scale (int factor) { + width *= factor; + height *= factor; + } +}</programlisting></td> - <programlisting language="java">public class Bicycle <co linkends="calloutClassBicycle-1" xml:id="calloutClassBicycle-1-co"/> { - float speed; <co linkends="calloutClassBicycle-2" xml:id="calloutClassBicycle-2-co"/> // km per hour + <td valign="top"><mediaobject> + <imageobject> + <imagedata fileref="Ref/ObjectsAndClasses/rectangleScaleMethod.svg"/> + </imageobject> + </mediaobject></td> + </tr> + </informaltable> + </figure> + + <figure xml:id="fig_scaleRectangleUsage"> + <title>Using <classname>Rectangle</classname>.<methodname>scale(...)</methodname></title> + + <informaltable border="1"> + <tr> + <td valign="top"><programlisting language="java">Rectangle r = new Rectangle(); +r.width = 33; +r.height = 22; + +r.scale(2); + +System.out.println("width=" + r.width); +System.out.println("height=" + r.height);</programlisting></td> + + <td valign="top"><screen>width=66 +height=44</screen></td> + </tr> + </informaltable> + </figure> + + <figure xml:id="fig_methodSyntax"> + <title>Method definition syntax</title> + + <informaltable border="1"> + <tr> + <td valign="top"><programlisting language="java">public <co linkends="sd1_callout_methodSyntax-1" xml:id="sd1_callout_methodSyntax-1-co"/> void <co linkends="sd1_callout_methodSyntax-2" xml:id="sd1_callout_methodSyntax-2-co"/> scale<co linkends="sd1_callout_methodSyntax-3" xml:id="sd1_callout_methodSyntax-3-co"/> (int factor <co linkends="sd1_callout_methodSyntax-4" xml:id="sd1_callout_methodSyntax-4-co"/>) { <co linkends="sd1_callout_methodSyntax-5" xml:id="sd1_callout_methodSyntax-5-co"/> + width *= factor; <co linkends="sd1_callout_methodSyntax-6" xml:id="sd1_callout_methodSyntax-6-co"/> + height *= factor; +}</programlisting></td> + </tr> + + <tr> + <td valign="top"><programlisting language="java">[access modifier] <coref linkend="sd1_callout_methodSyntax-1-co"/> return_type <coref linkend="sd1_callout_methodSyntax-2-co"/> methodName <coref linkend="sd1_callout_methodSyntax-3-co"/> ([arguments] <coref linkend="sd1_callout_methodSyntax-4-co"/>) {<coref linkend="sd1_callout_methodSyntax-5-co"/> + [statement(s)] <coref linkend="sd1_callout_methodSyntax-6-co"/> +}</programlisting></td> + </tr> + </informaltable> + </figure> + + <calloutlist> + <callout arearefs="sd1_callout_methodSyntax-1-co" xml:id="sd1_callout_methodSyntax-1"> + <para>Optional <link xlink:href="https://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html#accesscontrol-levels">access control</link> modifier either of <code>public</code>, <code>protected</code> or <code>private</code>.</para> + </callout> + + <callout arearefs="sd1_callout_methodSyntax-2-co" xml:id="sd1_callout_methodSyntax-2"> + <para>The method's return type either of:</para> - void accelerate() <co linkends="calloutClassBicycle-3" xml:id="calloutClassBicycle-3-co"/> { - speed += 2; - }</programlisting> + <glosslist> + <glossentry> + <glossterm><code>void</code></glossterm> - <calloutlist> - <callout arearefs="calloutClassBicycle-1-co" xml:id="calloutClassBicycle-1"> - <para>Defining a class Bicycle</para> - </callout> + <glossdef> + <para>The method will not return a value on completion.</para> + </glossdef> + </glossentry> - <callout arearefs="calloutClassBicycle-2-co" xml:id="calloutClassBicycle-2"> - <para>An attribute <property>speed</property>.</para> - </callout> + <glossentry> + <glossterm>A data type <abbrev>e.g.</abbrev> <code>int</code>, <code>double</code>, ...</glossterm> - <callout arearefs="calloutClassBicycle-3-co" xml:id="calloutClassBicycle-3"> - <para>A method <methodname>accelerate()</methodname>.</para> - </callout> - </calloutlist> - </figure> - </section> + <glossdef> + <para>The method will return a value of the given type to its caller.</para> + </glossdef> + </glossentry> + </glosslist> + </callout> + + <callout arearefs="sd1_callout_methodSyntax-3-co" xml:id="sd1_callout_methodSyntax-3"> + <para>The method's name.</para> + </callout> + + <callout arearefs="sd1_callout_methodSyntax-4-co" xml:id="sd1_callout_methodSyntax-4"> + <para>Optional arguments being required for execution.</para> + </callout> + + <callout arearefs="sd1_callout_methodSyntax-5-co" xml:id="sd1_callout_methodSyntax-5"> + <para>Start of method's body.</para> + </callout> + + <callout arearefs="sd1_callout_methodSyntax-6-co" xml:id="sd1_callout_methodSyntax-6"> + <para>The method's implementation.</para> + </callout> + </calloutlist> + + <figure xml:id="fig_rectangleGetPerimeter"> + <title>A rectangle's perimeter</title> + + <mediaobject> + <imageobject> + <imagedata fileref="Ref/ObjectsAndClasses/rectangleGetPerimeter.svg"/> + </imageobject> + </mediaobject> + </figure> + + <figure xml:id="fig_rectangleGetPerimeterImplement"> + <title>Get perimeter implementation</title> + + <informaltable border="1"> + <tr> + <td valign="top"><programlisting language="java">public class Rectangle { + int width, height; + boolean hasSolidBorder; + + public void scale (int factor) { ... } + + public int getPerimeter() { + return 2 * (width + height); + } +}</programlisting></td> + + <td valign="top"><mediaobject> + <imageobject> + <imagedata fileref="Ref/ObjectsAndClasses/rectangleGetPerimeterMethodUml.svg"/> + </imageobject> + </mediaobject></td> + </tr> + </informaltable> + </figure> + + <figure xml:id="fig_rectangleGetPerimeterUsage"> + <title>Using <classname>Rectangle</classname>.<methodname>getPerimeter()</methodname></title> + + <informaltable border="1"> + <tr> + <td valign="top"><programlisting language="java">Rectangle r = new Rectangle(); + +r.width = 33; +r.height = 22; + +System.out.println("Perimeter=" + r.getPerimeter());</programlisting></td> + + <td valign="top"><screen>Perimeter=110</screen></td> + </tr> + </informaltable> + </figure> + </section> + + <section xml:id="sd1_sect_constructors"> + <title>Constructors</title> + + <figure xml:id="sd1_fig_createRectangleConstructor"> + <title>Creating and initializing rectangles</title> + + <informaltable border="1"> + <colgroup width="59%"/> + + <colgroup width="41%"/> + + <tr> + <td valign="top"><programlisting language="java">Rectangle r = new Rectangle(); + +r.width = 28; +r.height = 10; +r.hasSolidBorder = false;</programlisting></td> + + <td valign="top"><programlisting language="java">int a; +a = 33;</programlisting></td> + </tr> + + <tr> + <td valign="top"><para>Combining statements desired:</para><programlisting language="java">Rectangle r = new Rectangle(28, 10, false); </programlisting><para>How to get this work?</para></td> + + <td valign="top"><programlisting language="java">int a = 33;</programlisting></td> + </tr> + </informaltable> + </figure> + + <figure xml:id="sd1_fig_createRectangleDefineConstruct"> + <title>Defining a constructor</title> + + <programlisting language="java">public class Rectangle { + int width, height; + boolean hasSolidBorder; + ... + public <co linkends="sd1_callout_defineConstructor-1" xml:id="sd1_callout_defineConstructor-1-co"/> Rectangle <co linkends="sd1_callout_defineConstructor-2" xml:id="sd1_callout_defineConstructor-2-co"/> (int width, int height, boolean hasSolidBorder){ + this.width = width; + this.height = height; + this.hasSolidBorder = hasSolidBorder; + } +}</programlisting> + + <para>Similar to <xref linkend="fig_methodSyntax"/> but:</para> + + <calloutlist> + <callout arearefs="sd1_callout_defineConstructor-1-co" xml:id="sd1_callout_defineConstructor-1"> + <para>No return type declaration.</para> + </callout> + + <callout arearefs="sd1_callout_defineConstructor-2-co" xml:id="sd1_callout_defineConstructor-2"> + <para>Constructor's name equals class name.</para> + </callout> + </calloutlist> + </figure> + + <figure xml:id="sd1_fig_createRectangleNoConstructor"> + <title>No constructor <abbrev>vs.</abbrev> default constructor</title> + + <informaltable border="1"> + <tr> + <th colspan="2">Equivalent: <code>Rectangle r = new Rectangle();</code></th> + </tr> + + <tr> + <td valign="top"><programlisting language="java">public class Rectangle { + int width, height; + boolean hasSolidBorder; + + // Default constructor, empty body. + public Rectangle ( ){} +}</programlisting></td> + + <td valign="top"><programlisting language="java">public class Rectangle { + int width, height; + boolean hasSolidBorder; +}</programlisting></td> + </tr> + </informaltable> + </figure> + + <figure xml:id="sd1_fig_createRectangleMissingDefaultConstructor"> + <title>Absent default constructor</title> + + <informaltable border="1"> + <tr> + <td rowspan="2"><programlisting language="java">public class Rectangle { + int width, height; + boolean hasSolidBorder; + + public Rectangle + (int width, + int height, + boolean hasSolidBorder){ + this.width = width; + this.height = height; + this.hasSolidBorder = + hasSolidBorder; + } +}</programlisting></td> + + <td valign="top"><programlisting language="java">Rectangle r = new Rectangle(3, 6, false); </programlisting><para>o.K., using non-default constructor.</para></td> + </tr> + + <tr> + <td valign="top"><programlisting language="java">Rectangle r = new Rectangle();</programlisting><para>Wrong: Default constructor undefined, but non-default constructor present.</para></td> + </tr> + </informaltable> + </figure> </section> <section xml:id="sd1SectMoreEclipseFeatures">