From 4a33de214fdbc5f4f4da21734310341f9ea6340e Mon Sep 17 00:00:00 2001 From: "Dr. Martin Goik" <goik@hdm-stuttgart.de> Date: Mon, 4 Nov 2019 21:45:43 +0100 Subject: [PATCH] Cosmetics --- .../Scopes/variableScopesThis.multi.svg | 59 +- .../classRectangle.multi.svg | 405 +++- ...er.svg => rectangleGetPerimeter.multi.svg} | 139 +- .../rectangleScaleMethod.svg | 1623 ++++++++++++++--- ...Rectangle.svg => scaleRectangle.multi.svg} | 137 +- Doc/Sd1/objectsClasses.xml | 235 ++- Doc/Sd1/statements.xml | 2 +- 7 files changed, 2161 insertions(+), 439 deletions(-) rename Doc/Sd1/Ref/ObjectsAndClasses/{rectangleGetPerimeter.svg => rectangleGetPerimeter.multi.svg} (90%) rename Doc/Sd1/Ref/ObjectsAndClasses/{scaleRectangle.svg => scaleRectangle.multi.svg} (90%) diff --git a/Doc/Sd1/Ref/ObjectsAndClasses/Scopes/variableScopesThis.multi.svg b/Doc/Sd1/Ref/ObjectsAndClasses/Scopes/variableScopesThis.multi.svg index 787dc125b..3068910fe 100644 --- a/Doc/Sd1/Ref/ObjectsAndClasses/Scopes/variableScopesThis.multi.svg +++ b/Doc/Sd1/Ref/ObjectsAndClasses/Scopes/variableScopesThis.multi.svg @@ -2,7 +2,7 @@ <!-- Created with Inkscape (http://www.inkscape.org/) --> <svg - xmlns:ns1="https://launchpad.net/jessyink" + xmlns:jessyink="https://launchpad.net/jessyink" 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#" @@ -15,8 +15,8 @@ viewBox="0 0 170.00002 75" version="1.1" id="svg8" - inkscape:version="0.92.1 r15371" - sodipodi:docname="variableScopes.multi.svg"> + inkscape:version="0.92.4 (unknown)" + sodipodi:docname="variableScopesThis.multi.svg"> <sodipodi:namedview id="base" pagecolor="#ffffff" @@ -30,11 +30,11 @@ inkscape:document-units="mm" inkscape:current-layer="g596" showgrid="true" - inkscape:window-width="1547" - inkscape:window-height="1050" - inkscape:window-x="40" - inkscape:window-y="53" - inkscape:window-maximized="0" + inkscape:window-width="1600" + inkscape:window-height="1145" + inkscape:window-x="0" + inkscape:window-y="27" + inkscape:window-maximized="1" fit-margin-top="0" fit-margin-left="0" fit-margin-right="0" @@ -2337,25 +2337,30 @@ sodipodi:role="line" x="97.895821" y="19.990906" - style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono Bold';fill:#ff0000;stroke-width:0.26458332"><tspan - style="font-weight:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#000000;stroke-width:0.26458332" - id="tspan586">The »<tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#000000;stroke-width:0.26458332">The »<tspan style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono Bold';fill:#ff0000" - id="tspan617">this</tspan>« keyword relates to</tspan></tspan><tspan + id="tspan617">this</tspan>« keyword relates to</tspan><tspan sodipodi:role="line" x="97.895821" y="25.282572" - style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono Bold';fill:#ff0000;stroke-width:0.26458332" - id="tspan607"><tspan - style="font-weight:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#000000;stroke-width:0.26458332" - id="tspan609">instance scope resolving the</tspan></tspan><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#000000;stroke-width:0.26458332" + id="tspan612"><tspan + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'" + id="tspan3562">instance scope</tspan> resolving</tspan><tspan sodipodi:role="line" x="97.895821" y="30.574238" - style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono Bold';fill:#ff0000;stroke-width:0.26458332" - id="tspan612"><tspan - style="font-weight:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#000000;stroke-width:0.26458332" - id="tspan614">method scope conflict.</tspan></tspan></text> + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#000000;stroke-width:0.26458332" + id="tspan3572">method scoped <tspan + style="fill:#0000ff" + id="tspan3580">radius</tspan> from</tspan><tspan + sodipodi:role="line" + x="97.895821" + y="35.865906" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#000000;stroke-width:0.26458332" + id="tspan3574">instance scoped <tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#ff0000" + id="tspan3576">radius</tspan>.</tspan></text> <path style="fill:none;stroke:#000000;stroke-width:0.70555556;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker17718)" d="M 96.572906,30.57424 C 68.800553,40.948383 34.413521,37.099301 27.78124,29.251323" @@ -2513,7 +2518,9 @@ style="stroke-width:0.26458332" y="19.990906" x="97.895821" - sodipodi:role="line">Solution: Resolve scope conflict</tspan><tspan + sodipodi:role="line"><tspan + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'" + id="tspan3560">Solution</tspan>: Resolve scope conflict</tspan><tspan style="stroke-width:0.26458332" y="25.282572" x="97.895821" @@ -2685,17 +2692,19 @@ id="tspan10829" x="97.895821" y="19.990906" - style="stroke-width:0.26458332">Problem: Self-assignment rather</tspan><tspan + style="stroke-width:0.26458332"><tspan + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold'" + id="tspan3558">Scope Problem</tspan>: Self-assignment</tspan><tspan sodipodi:role="line" x="97.895821" y="25.282572" style="stroke-width:0.26458332" - id="tspan10833">than intended value copy to</tspan><tspan + id="tspan10833">rather than intended assignment</tspan><tspan sodipodi:role="line" x="97.895821" y="30.574238" style="stroke-width:0.26458332" - id="tspan11485">instance variable <tspan + id="tspan11485">to instance variable <tspan style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono Bold';fill:#ff0000" id="tspan11487">radius</tspan></tspan></text> <path @@ -2999,7 +3008,7 @@ sodipodi:role="line">}</tspan></text> </g> <g - ns1:masterSlide="masterSlide" + jessyink:masterSlide="masterSlide" transform="translate(-14.010514,-21.232287)" inkscape:label="Master" inkscape:groupmode="layer" diff --git a/Doc/Sd1/Ref/ObjectsAndClasses/classRectangle.multi.svg b/Doc/Sd1/Ref/ObjectsAndClasses/classRectangle.multi.svg index 6d44bff80..4873828d1 100644 --- a/Doc/Sd1/Ref/ObjectsAndClasses/classRectangle.multi.svg +++ b/Doc/Sd1/Ref/ObjectsAndClasses/classRectangle.multi.svg @@ -12,7 +12,7 @@ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" sodipodi:docname="classRectangle.multi.svg" - inkscape:version="0.92.3 (2405546, 2018-03-11)" + inkscape:version="0.92.4 (unknown)" version="1.2" id="svg2" height="75.918633mm" @@ -24,18 +24,18 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="1.2077062" - inkscape:cx="322.7117" - inkscape:cy="126.43533" + inkscape:zoom="1.7079545" + inkscape:cx="385.35953" + inkscape:cy="138.45932" inkscape:document-units="mm" inkscape:current-layer="layer1" showgrid="true" inkscape:window-width="1600" - inkscape:window-height="1044" + inkscape:window-height="1145" inkscape:window-x="0" inkscape:window-y="27" inkscape:window-maximized="1" - showguides="true" + showguides="false" inkscape:guide-bbox="true" units="mm" fit-margin-top="0" @@ -816,7 +816,7 @@ </rdf:RDF> </metadata> <g - inkscape:label="Layer 100" + inkscape:label="Layer 110" inkscape:groupmode="layer" id="layer1" transform="translate(0,-837.51971)" @@ -838,7 +838,7 @@ y="837.51971" /> <text xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:monospace;-inkscape-font-specification:monospace;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" x="279.23474" y="854.26605" id="text1172"><tspan @@ -846,35 +846,35 @@ id="tspan1170" x="279.23474" y="854.26605" - style="font-size:16px">public class Rectangle {</tspan><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'">public class Rectangle {</tspan><tspan sodipodi:role="line" x="279.23474" y="874.26605" id="tspan1174" - style="font-size:16px"><tspan - style="font-size:16px;fill:#0000ff" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'"><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#0000ff" id="tspan1202"><tspan - style="font-size:16px;fill:#000000" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#000000" id="tspan4449"> int </tspan>width</tspan>;</tspan><tspan sodipodi:role="line" x="279.23474" y="894.26605" id="tspan1176" - style="font-size:16px"> int <tspan - style="font-size:16px;fill:#008000" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'"> int <tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#008000" id="tspan1204">height</tspan>;</tspan><tspan sodipodi:role="line" x="279.23474" y="914.26605" id="tspan1178" - style="font-size:16px"> boolean <tspan - style="font-size:16px;fill:#ff00ff" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'"> boolean <tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#ff00ff" id="tspan1206">hasSolidBorder</tspan>;</tspan><tspan sodipodi:role="line" x="279.23474" y="934.26605" id="tspan1180" - style="font-size:16px">}</tspan></text> + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'">}</tspan></text> <g id="g9497"> <g @@ -987,7 +987,7 @@ sodipodi:nodetypes="cc" /> <text xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;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" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" x="317.03149" y="988.66675" id="text3032"><tspan @@ -997,7 +997,7 @@ id="tspan4060">is instance of</tspan></text> <text xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;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" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" x="20" y="854.18011" id="text3376"><tspan @@ -1007,7 +1007,7 @@ y="854.18011">Class</tspan></text> <text xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;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" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" x="20" y="1032.3127" id="text3380"><tspan @@ -1032,28 +1032,250 @@ x="-20" y="-316.53543" style="font-size:16px" /></flowRegion><flowPara - id="flowPara5067" /></flowRoot> <text - id="text9618-9-0" - y="1045.4199" - x="385.50159" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;display:inline;fill:#000000;fill-opacity:1;stroke:none" + id="flowPara5067" /></flowRoot> </g> + <g + style="display:none" + transform="translate(0,-837.51971)" + id="g688" + inkscape:groupmode="layer" + inkscape:label="Layer 100"> + <rect + ry="0" + y="1007.5197" + x="0" + height="115.00008" + width="640" + id="rect580" + style="fill:#ffeeaa;stroke:none;stroke-width:2.74954557;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <rect + y="837.51971" + x="0" + height="119.99998" + width="640" + id="rect582" + style="fill:#e9c6af;stroke:none;stroke-width:3;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <text + id="text602" + y="854.26605" + x="279.23474" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + xml:space="preserve"><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'" + y="854.26605" + x="279.23474" + id="tspan584" + sodipodi:role="line">public class Rectangle {</tspan><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'" + id="tspan590" + y="874.26605" + x="279.23474" + sodipodi:role="line"><tspan + id="tspan588" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#0000ff"><tspan + id="tspan586" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#000000"> int </tspan>width</tspan>;</tspan><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'" + id="tspan594" + y="894.26605" + x="279.23474" + sodipodi:role="line"> int <tspan + id="tspan592" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#008000">height</tspan>;</tspan><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'" + id="tspan598" + y="914.26605" + x="279.23474" + sodipodi:role="line"> boolean <tspan + id="tspan596" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#ff00ff">hasSolidBorder</tspan>;</tspan><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'" + id="tspan600" + y="934.26605" + x="279.23474" + sodipodi:role="line">}</tspan></text> + <g + id="g620"> + <g + id="g618" + transform="translate(105,40.000015)"> + <rect + ry="0" + y="1002.5197" + x="445" + height="80.000046" + width="60" + id="rect604" + style="fill:none;stroke:#000000;stroke-width:3.87298346;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <text + id="text608" + y="992.03149" + x="465.28906" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + xml:space="preserve"><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#0000ff" + y="992.03149" + x="465.28906" + id="tspan606" + sodipodi:role="line">28</tspan></text> + <text + id="text612" + y="1048.344" + x="512.57666" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + xml:space="preserve"><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#008000" + y="1048.344" + x="512.57666" + id="tspan610" + sodipodi:role="line">40</tspan></text> + <text + id="text616" + y="1048.0237" + x="455.70703" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + xml:space="preserve"><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#ff00ff" + y="1048.0237" + x="455.70703" + id="tspan614" + sodipodi:role="line">true</tspan></text> + </g> + </g> + <g + id="g640"> + <g + id="g638"> + <g + transform="translate(-95,0.83839391)" + id="g636"> + <rect + style="fill:none;stroke:#000000;stroke-width:3;stroke-miterlimit:4;stroke-dasharray:18, 3;stroke-dashoffset:0;stroke-opacity:1" + id="rect622" + width="65" + height="25.000015" + x="255" + y="1037.5198" /> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + x="325.38486" + y="1055.7385" + id="text626"><tspan + sodipodi:role="line" + id="tspan624" + x="325.38486" + y="1055.7385" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#008000">15</tspan></text> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;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="277.40625" + y="1031.1931" + id="text630"><tspan + sodipodi:role="line" + id="tspan628" + x="277.40625" + y="1031.1931" + style="font-size:16px;fill:#0000ff">35</tspan></text> + <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + x="263.14453" + y="1056.0276" + id="text634"><tspan + sodipodi:role="line" + id="tspan632" + x="263.14453" + y="1056.0276" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#ff00ff">false</tspan></text> + </g> + </g> + </g> + <path + sodipodi:nodetypes="cc" + inkscape:connector-curvature="0" + id="path642" + d="m 220,1022.5197 55,-74.99997" + style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#Arrow2Mend)" /> + <path + sodipodi:nodetypes="cc" + inkscape:connector-curvature="0" + id="path644" + d="m 550,1022.5197 -50,-80" + style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker8350)" /> + <text + id="text652" + y="854.18011" + x="20" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + xml:space="preserve"><tspan + y="854.18011" + x="20" + id="tspan650" + sodipodi:role="line">Class</tspan></text> + <text + id="text658" + y="1032.3127" + x="20" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" xml:space="preserve"><tspan - id="tspan9616-1-4" - y="1045.4199" - x="385.50159" - sodipodi:role="line">Rectangle r2 =</tspan><tspan - y="1065.4199" - x="385.50159" + y="1032.3127" + x="20" + id="tspan654" + sodipodi:role="line">Objects</tspan><tspan + id="tspan656" + y="1052.3127" + x="20" + sodipodi:role="line">(Instances)</tspan></text> + <flowRoot + transform="translate(0,839.05516)" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" + id="flowRoot666" + xml:space="preserve"><flowRegion + style="font-size:16px" + id="flowRegion662"><rect + style="font-size:16px" + y="-316.53543" + x="-20" + height="540" + width="980" + id="rect660" /></flowRegion><flowPara + id="flowPara664" /></flowRoot> <text + xml:space="preserve" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';letter-spacing:0px;word-spacing:0px;display:inline;fill:#000000;fill-opacity:1;stroke:none" + x="301.67822" + y="1036.2407" + id="text686"><tspan + sodipodi:role="line" + x="301.67822" + y="1036.2407" + id="tspan668">Rectangle r2 =</tspan><tspan + id="tspan670" + sodipodi:role="line" + x="301.67822" + y="1056.2407"> new Rectangle();</tspan><tspan + id="tspan674" sodipodi:role="line" - id="tspan10282-1"> new Rectangle();</tspan><tspan - y="1085.4199" - x="385.50159" + x="301.67822" + y="1076.2407">r2.<tspan + id="tspan672" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#0000ff">width = 28</tspan>;</tspan><tspan + id="tspan678" sodipodi:role="line" - id="tspan10307">...</tspan><tspan - y="1105.4199" - x="385.50159" + x="301.67822" + y="1096.2407">r2.<tspan + id="tspan676" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#008000">height = 40</tspan>;</tspan><tspan + id="tspan682" sodipodi:role="line" - id="tspan10305" /></text> + x="301.67822" + y="1116.2407">r2.<tspan + id="tspan680" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#ff00ff">hasSolidBorder = true</tspan>;</tspan><tspan + id="tspan684" + sodipodi:role="line" + x="301.67822" + y="1136.2407" /></text> </g> <g style="display:none" @@ -1082,35 +1304,33 @@ x="279.23474" style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;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="font-size:16px" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'" y="854.26605" x="279.23474" id="tspan9554" sodipodi:role="line">public class Rectangle {</tspan><tspan - style="font-size:16px" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'" id="tspan9560" y="874.26605" x="279.23474" - sodipodi:role="line"><tspan + sodipodi:role="line"> int <tspan id="tspan9558" - style="font-size:16px;fill:#0000ff"><tspan - id="tspan9556" - style="font-size:16px;fill:#000000"> int </tspan>width</tspan>;</tspan><tspan - style="font-size:16px" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#0000ff">width</tspan>;</tspan><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'" id="tspan9564" y="894.26605" x="279.23474" sodipodi:role="line"> int <tspan id="tspan9562" - style="font-size:16px;fill:#008000">height</tspan>;</tspan><tspan - style="font-size:16px" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#008000">height</tspan>;</tspan><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'" id="tspan9568" y="914.26605" x="279.23474" sodipodi:role="line"> boolean <tspan id="tspan9566" - style="font-size:16px;fill:#ff00ff">hasSolidBorder</tspan>;</tspan><tspan - style="font-size:16px" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#ff00ff">hasSolidBorder</tspan>;</tspan><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'" id="tspan9570" y="934.26605" x="279.23474" @@ -1173,19 +1393,19 @@ style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#Arrow2Mend)" /> <text id="text9618" - y="988.66675" - x="317.03149" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;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" + y="989.83777" + x="263.75137" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" xml:space="preserve"><tspan id="tspan9616" - y="988.66675" - x="317.03149" - sodipodi:role="line">is instance of</tspan></text> + y="989.83777" + x="263.75137" + sodipodi:role="line">Create instance of Rectangle</tspan></text> <text id="text9622" y="854.18011" x="20" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;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" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" xml:space="preserve"><tspan y="854.18011" x="20" @@ -1195,7 +1415,7 @@ id="text9628" y="1032.3127" x="20" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;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" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" xml:space="preserve"><tspan y="1032.3127" x="20" @@ -1227,15 +1447,34 @@ id="tspan9616-1" y="1037.5197" x="271.04099" - sodipodi:role="line">Rectangle r1 =</tspan><tspan + sodipodi:role="line" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'">Rectangle r1 =</tspan><tspan y="1057.5197" x="271.04099" sodipodi:role="line" - id="tspan10282"> new Rectangle();</tspan><tspan + id="tspan10282" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'"> new Rectangle();</tspan><tspan y="1077.5197" x="271.04099" sodipodi:role="line" - id="tspan10309">...</tspan></text> + id="tspan10309" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'">r1.<tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#0000ff" + id="tspan564">width = 35</tspan>;</tspan><tspan + y="1097.5197" + x="271.04099" + sodipodi:role="line" + id="tspan558" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'">r1.<tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#008000" + id="tspan566">height = 15</tspan>;</tspan><tspan + y="1117.5197" + x="271.04099" + sodipodi:role="line" + id="tspan560" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'">r1.<tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#ff00ff" + id="tspan568">hasSolidBorder = false</tspan>;</tspan></text> </g> <g inkscape:label="Layer 060" @@ -1268,38 +1507,36 @@ id="tspan9876" x="279.23474" y="854.26605" - style="font-size:16px">public class Rectangle {</tspan><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'">public class Rectangle {</tspan><tspan sodipodi:role="line" x="279.23474" y="874.26605" id="tspan9882" - style="font-size:16px"><tspan - style="font-size:16px;fill:#0000ff" - id="tspan9880"><tspan - style="font-size:16px;fill:#000000" - id="tspan9878"> int </tspan>width</tspan>;</tspan><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'"> int <tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#0000ff" + id="tspan9880">width</tspan>;</tspan><tspan sodipodi:role="line" x="279.23474" y="894.26605" id="tspan9886" - style="font-size:16px"> int <tspan - style="font-size:16px;fill:#008000" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'"> int <tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#008000" id="tspan9884">height</tspan>;</tspan><tspan sodipodi:role="line" x="279.23474" y="914.26605" id="tspan9890" - style="font-size:16px"> boolean <tspan - style="font-size:16px;fill:#ff00ff" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'"> boolean <tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#ff00ff" id="tspan9888">hasSolidBorder</tspan>;</tspan><tspan sodipodi:role="line" x="279.23474" y="934.26605" id="tspan9892" - style="font-size:16px">}</tspan></text> + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'">}</tspan></text> <text xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;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" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" x="20" y="854.18011" id="text9924"><tspan @@ -1309,7 +1546,7 @@ y="854.18011">Class</tspan></text> <text xml:space="preserve" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;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" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold';letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" x="20" y="1032.3127" id="text9930"><tspan @@ -1353,7 +1590,7 @@ id="text10206" y="854.18011" x="20" - style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';letter-spacing:0px;word-spacing:0px;display:inline;fill:#000000;fill-opacity:1;stroke:none" + style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16px;line-height:1.25;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans Bold';letter-spacing:0px;word-spacing:0px;display:inline;fill:#000000;fill-opacity:1;stroke:none" xml:space="preserve"><tspan y="854.18011" x="20" @@ -1366,35 +1603,33 @@ x="279.23474" style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;line-height:1.25;font-family:monospace;-inkscape-font-specification:monospace;letter-spacing:0px;word-spacing:0px;display:inline;fill:#000000;fill-opacity:1;stroke:none" xml:space="preserve"><tspan - style="font-size:16px" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'" y="854.26605" x="279.23474" id="tspan10184" sodipodi:role="line">public class Rectangle {</tspan><tspan - style="font-size:16px" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'" id="tspan10190" y="874.26605" x="279.23474" - sodipodi:role="line"><tspan + sodipodi:role="line"> int <tspan id="tspan10188" - style="font-size:16px;fill:#0000ff"><tspan - id="tspan10186" - style="font-size:16px;fill:#000000"> int </tspan>width</tspan>;</tspan><tspan - style="font-size:16px" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#0000ff">width</tspan>;</tspan><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'" id="tspan10194" y="894.26605" x="279.23474" sodipodi:role="line"> int <tspan id="tspan10192" - style="font-size:16px;fill:#008000">height</tspan>;</tspan><tspan - style="font-size:16px" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#008000">height</tspan>;</tspan><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'" id="tspan10198" y="914.26605" x="279.23474" sodipodi:role="line"> boolean <tspan id="tspan10196" - style="font-size:16px;fill:#ff00ff">hasSolidBorder</tspan>;</tspan><tspan - style="font-size:16px" + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono';fill:#ff00ff">hasSolidBorder</tspan>;</tspan><tspan + style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16px;font-family:'DejaVu Sans Mono';-inkscape-font-specification:'DejaVu Sans Mono'" id="tspan10200" y="934.26605" x="279.23474" diff --git a/Doc/Sd1/Ref/ObjectsAndClasses/rectangleGetPerimeter.svg b/Doc/Sd1/Ref/ObjectsAndClasses/rectangleGetPerimeter.multi.svg similarity index 90% rename from Doc/Sd1/Ref/ObjectsAndClasses/rectangleGetPerimeter.svg rename to Doc/Sd1/Ref/ObjectsAndClasses/rectangleGetPerimeter.multi.svg index cf55ca11d..3de342152 100644 --- a/Doc/Sd1/Ref/ObjectsAndClasses/rectangleGetPerimeter.svg +++ b/Doc/Sd1/Ref/ObjectsAndClasses/rectangleGetPerimeter.multi.svg @@ -11,8 +11,8 @@ 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" + sodipodi:docname="rectangleGetPerimeter.multi.svg" + inkscape:version="0.92.4 (unknown)" version="1.2" id="svg2" height="300" @@ -31,9 +31,9 @@ inkscape:current-layer="layer1" showgrid="true" inkscape:window-width="1600" - inkscape:window-height="1105" + inkscape:window-height="1145" inkscape:window-x="0" - inkscape:window-y="0" + inkscape:window-y="27" inkscape:window-maximized="1" showguides="true" inkscape:guide-bbox="true"> @@ -717,10 +717,11 @@ </rdf:RDF> </metadata> <g - inkscape:label="Layer 1" + inkscape:label="Layer 40" inkscape:groupmode="layer" id="layer1" - transform="translate(0,-822.51971)"> + transform="translate(0,-822.51971)" + style="display:inline"> <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" @@ -798,6 +799,132 @@ x="755.73083" y="984.16815">100</tspan></text> </g> + <g + transform="translate(0,-822.51971)" + id="g1914" + inkscape:groupmode="layer" + inkscape:label="Layer 30" + style="display:none"> + <text + id="text1888" + y="415.68225" + x="104.51711" + 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" + xml:space="preserve"><tspan + style="font-size:42.66666794px;line-height:1.25;font-family:sans-serif;stroke-width:1.06666672" + y="415.68225" + x="104.51711" + id="tspan1886" + sodipodi:role="line"> </tspan></text> + <rect + ry="0" + y="902.51971" + x="150" + height="140" + width="100" + id="rect1890" + style="fill:#f4e3d7;stroke:#000000;stroke-width:3.87298346;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <text + id="text1894" + y="889.32806" + x="110.68594" + 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-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#0000ff" + y="889.32806" + x="110.68594" + id="tspan1892" + sodipodi:role="line">width=20</tspan></text> + <text + id="text1900" + y="963.10437" + x="5.3691359" + 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="963.10437" + x="5.3691359" + id="tspan1896" + sodipodi:role="line">height</tspan><tspan + id="tspan1898" + style="fill:#008000" + y="1009.7711" + x="5.3691359" + sodipodi:role="line"> =30</tspan></text> + <g + transform="translate(70,4.3890188e-6)" + id="g1908"> + <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="path1902" + 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="text1906"><tspan + sodipodi:role="line" + x="326.05136" + y="981.34784" + id="tspan1904">get perimeter</tspan></text> + </g> + </g> + <g + inkscape:label="Layer 20" + inkscape:groupmode="layer" + id="g1940" + transform="translate(0,-822.51971)" + style="display:none"> + <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="text1918"><tspan + sodipodi:role="line" + id="tspan1916" + 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="rect1920" + 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="text1924"><tspan + sodipodi:role="line" + id="tspan1922" + 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="text1930"><tspan + sodipodi:role="line" + id="tspan1926" + 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="tspan1928"> =30</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> diff --git a/Doc/Sd1/Ref/ObjectsAndClasses/rectangleScaleMethod.svg b/Doc/Sd1/Ref/ObjectsAndClasses/rectangleScaleMethod.svg index ccccffabd..e91486f45 100644 --- a/Doc/Sd1/Ref/ObjectsAndClasses/rectangleScaleMethod.svg +++ b/Doc/Sd1/Ref/ObjectsAndClasses/rectangleScaleMethod.svg @@ -1,277 +1,1404 @@ -<?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"> +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<svg + xmlns:dc="http://purl.org/dc/elements/1.1/" + xmlns:cc="http://creativecommons.org/ns#" + xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" + xmlns:svg="http://www.w3.org/2000/svg" + xmlns="http://www.w3.org/2000/svg" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" + xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" + 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" + version="1.1" + id="svg1189" + sodipodi:docname="rectangleScaleMethod.svg" + inkscape:version="0.92.4 (unknown)"> + <metadata + id="metadata1193"> + <rdf:RDF> + <cc:Work + rdf:about=""> + <dc:format>image/svg+xml</dc:format> + <dc:type + rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> + </cc:Work> + </rdf:RDF> + </metadata> + <sodipodi:namedview + pagecolor="#ffffff" + bordercolor="#666666" + borderopacity="1" + objecttolerance="10" + gridtolerance="10" + guidetolerance="10" + inkscape:pageopacity="0" + inkscape:pageshadow="2" + inkscape:window-width="1600" + inkscape:window-height="1145" + id="namedview1191" + showgrid="false" + inkscape:zoom="2.2047101" + inkscape:cx="161.74998" + inkscape:cy="76.890101" + inkscape:window-x="0" + inkscape:window-y="27" + inkscape:window-maximized="1" + inkscape:current-layer="svg1189" /> <!--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%"/> + <defs + id="genericDefs"> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1" + id="linearGradient1195" + gradientUnits="userSpaceOnUse" + x1="0" + y1="0" + x2="0" + y2="28" + spreadMethod="pad" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1" + id="linearGradient1197" + gradientUnits="userSpaceOnUse" + x1="0" + y1="0" + x2="0" + y2="28" + spreadMethod="pad" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient1" + id="linearGradient1199" + gradientUnits="userSpaceOnUse" + x1="0" + y1="0" + x2="0" + y2="28" + spreadMethod="pad" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2" + id="linearGradient1201" + gradientUnits="userSpaceOnUse" + x1="0" + y1="0" + x2="0" + y2="28" + spreadMethod="pad" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2" + id="linearGradient1203" + gradientUnits="userSpaceOnUse" + x1="0" + y1="0" + x2="0" + y2="28" + spreadMethod="pad" /> + <linearGradient + inkscape:collect="always" + xlink:href="#linearGradient2" + id="linearGradient1205" + gradientUnits="userSpaceOnUse" + x1="0" + y1="0" + x2="0" + y2="28" + spreadMethod="pad" /> + <defs + id="defs1"> + <linearGradient + spreadMethod="pad" + id="linearGradient1" + y2="28" + y1="0" + x2="0" + gradientUnits="userSpaceOnUse" + x1="0"> + <stop + id="stop821" + offset="0%" + stop-color="rgb(255,255,245)" + stop-opacity="1" /> + <stop + id="stop823" + offset="100%" + stop-color="rgb(215,213,172)" + stop-opacity="1" /> </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 + spreadMethod="pad" + id="linearGradient2" + y2="28" + y1="0" + x2="0" + gradientUnits="userSpaceOnUse" + x1="0"> + <stop + id="stop826" + offset="0%" + stop-color="rgb(255,255,245)" + stop-opacity="1" /> + <stop + id="stop828" + offset="100%" + stop-color="rgb(215,213,172)" + stop-opacity="1" /> </linearGradient> - <clipPath clipPathUnits="userSpaceOnUse" id="clipPath1"> - <path d="M0 0 L276 0 L276 193 L0 193 L0 0 Z"/> + <clipPath + id="clipPath1" + clipPathUnits="userSpaceOnUse"> + <path + id="path831" + 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 + id="clipPath2" + clipPathUnits="userSpaceOnUse"> + <path + id="path834" + 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 + id="clipPath3" + clipPathUnits="userSpaceOnUse"> + <path + id="path837" + 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 + id="clipPath4" + clipPathUnits="userSpaceOnUse"> + <path + id="path840" + 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 + id="clipPath5" + clipPathUnits="userSpaceOnUse"> + <path + id="path843" + 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 + id="clipPath6" + clipPathUnits="userSpaceOnUse"> + <path + id="path846" + 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 + id="clipPath7" + clipPathUnits="userSpaceOnUse"> + <path + id="path849" + 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 + id="clipPath8" + clipPathUnits="userSpaceOnUse"> + <path + id="path852" + 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 + id="clipPath9" + clipPathUnits="userSpaceOnUse"> + <path + id="path855" + 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 + id="clipPath10" + clipPathUnits="userSpaceOnUse"> + <path + id="path858" + 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 + id="clipPath11" + clipPathUnits="userSpaceOnUse"> + <path + id="path861" + 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 + id="clipPath12" + clipPathUnits="userSpaceOnUse"> + <path + id="path864" + 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 + id="clipPath13" + clipPathUnits="userSpaceOnUse"> + <path + id="path867" + 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 + id="clipPath14" + clipPathUnits="userSpaceOnUse"> + <path + id="path870" + 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 + id="clipPath15" + clipPathUnits="userSpaceOnUse"> + <path + id="path873" + 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 + id="clipPath16" + clipPathUnits="userSpaceOnUse"> + <path + id="path876" + 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 + id="clipPath17" + clipPathUnits="userSpaceOnUse"> + <path + id="path879" + 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 + id="clipPath18" + clipPathUnits="userSpaceOnUse"> + <path + id="path882" + 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 + id="clipPath19" + clipPathUnits="userSpaceOnUse"> + <path + id="path885" + 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 + id="clipPath20" + clipPathUnits="userSpaceOnUse"> + <path + id="path888" + 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 + id="clipPath21" + clipPathUnits="userSpaceOnUse"> + <path + id="path891" + 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 + id="clipPath22" + clipPathUnits="userSpaceOnUse"> + <path + id="path894" + 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 + id="clipPath23" + clipPathUnits="userSpaceOnUse"> + <path + id="path897" + 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> + </defs> + <g + style="fill:#ffffff;stroke:#ffffff" + id="g903" + transform="translate(20,20)"> + <rect + style="stroke:none" + id="rect901" + clip-path="url(#clipPath2)" + y="-20" + height="193" + width="276" + x="-20" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#808080;stroke:#808080" + id="g913" + transform="translate(20,20)" + font-size="15"> + <rect + style="stroke:none" + id="rect909" + clip-path="url(#clipPath3)" + y="152" + height="1" + width="234" + x="2" /> + <rect + style="stroke:none" + id="rect911" + clip-path="url(#clipPath3)" + y="2" + height="151" + width="1" + x="235" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#e8e8e8;stroke:#e8e8e8" + id="g917" + transform="translate(21,21)" + font-size="15"> + <rect + style="stroke:none" + id="rect915" + clip-path="url(#clipPath4)" + y="0" + height="151" + width="234" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#c0c0c0;stroke:#c0c0c0" + id="g921" + transform="translate(21,21)" + font-size="15"> + <path + style="fill-rule:evenodd;stroke:none" + inkscape:connector-curvature="0" + id="path919" + clip-path="url(#clipPath4)" + d="M 0,0 H 234 V 151 H 0 Z M 1,1 H 233 V 150 H 1 Z" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#e8e8e8;stroke:#e8e8e8" + id="g925" + transform="translate(22,22)" + font-size="15"> + <rect + style="stroke:none" + id="rect923" + clip-path="url(#clipPath5)" + y="0" + height="149" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g929" + transform="translate(22,50)" + font-size="15"> + <rect + style="stroke:none" + id="rect927" + clip-path="url(#clipPath6)" + y="0" + height="121" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g933" + transform="translate(22,50)" + font-size="15"> + <rect + style="stroke:none" + id="rect931" + clip-path="url(#clipPath7)" + y="0" + height="24" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu" + id="g937" + transform="translate(227,51)" + font-size="15"> + <text + style="stroke:none" + id="text935" + clip-path="url(#clipPath8)" + y="17" + xml:space="preserve" + x="3">int</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g949" + transform="translate(24,51)" + font-size="15"> + <rect + style="stroke:none" + id="rect939" + clip-path="url(#clipPath9)" + y="0" + height="22" + width="36" + x="0" /> + <image + id="image941" + preserveAspectRatio="none" + height="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=" + width="16" + clip-path="url(#clipPath9)" + y="3" + x="2" /> + <image + id="image943" + preserveAspectRatio="none" + height="16" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU +A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L +sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 +I7arHRvdAAAAAElFTkSuQmCC" + width="16" + clip-path="url(#clipPath9)" + y="3" + x="18" /> + <rect + style="stroke:none" + id="rect945" + clip-path="url(#clipPath9)" + y="0" + height="22" + width="44" + x="36" /> + <text + style="fill:#000000;stroke:none" + id="text947" + clip-path="url(#clipPath9)" + y="17" + xml:space="preserve" + x="37">width</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g953" + transform="translate(22,74)" + font-size="15"> + <rect + style="stroke:none" + id="rect951" + clip-path="url(#clipPath7)" + y="0" + height="24" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu" + id="g957" + transform="translate(227,75)" + font-size="15"> + <text + style="stroke:none" + id="text955" + clip-path="url(#clipPath8)" + y="17" + xml:space="preserve" + x="3">int</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g969" + transform="translate(24,75)" + font-size="15"> + <rect + style="stroke:none" + id="rect959" + clip-path="url(#clipPath11)" + y="0" + height="22" + width="36" + x="0" /> + <image + id="image961" + preserveAspectRatio="none" + height="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=" + width="16" + clip-path="url(#clipPath11)" + y="3" + x="2" /> + <image + id="image963" + preserveAspectRatio="none" + height="16" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU +A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L +sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 +I7arHRvdAAAAAElFTkSuQmCC" + width="16" + clip-path="url(#clipPath11)" + y="3" + x="18" /> + <rect + style="stroke:none" + id="rect965" + clip-path="url(#clipPath11)" + y="0" + height="22" + width="49" + x="36" /> + <text + style="fill:#000000;stroke:none" + id="text967" + clip-path="url(#clipPath11)" + y="17" + xml:space="preserve" + x="37">height</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g973" + transform="translate(22,98)" + font-size="15"> + <rect + style="stroke:none" + id="rect971" + clip-path="url(#clipPath7)" + y="0" + height="24" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu" + id="g977" + transform="translate(190,99)" + font-size="15"> + <text + style="stroke:none" + id="text975" + clip-path="url(#clipPath13)" + y="17" + xml:space="preserve" + x="3">boolean</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g989" + transform="translate(24,99)" + font-size="15"> + <rect + style="stroke:none" + id="rect979" + clip-path="url(#clipPath14)" + y="0" + height="22" + width="36" + x="0" /> + <image + id="image981" + preserveAspectRatio="none" + height="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=" + width="16" + clip-path="url(#clipPath14)" + y="3" + x="2" /> + <image + id="image983" + preserveAspectRatio="none" + height="16" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU +A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L +sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 +I7arHRvdAAAAAElFTkSuQmCC" + width="16" + clip-path="url(#clipPath14)" + y="3" + x="18" /> + <rect + style="stroke:none" + id="rect985" + clip-path="url(#clipPath14)" + y="0" + height="22" + width="110" + x="36" /> + <text + style="fill:#000000;stroke:none" + id="text987" + clip-path="url(#clipPath14)" + y="17" + xml:space="preserve" + x="37">hasSolidBorder</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#808080;stroke:#808080" + id="g993" + transform="translate(22,50)" + font-size="15"> + <rect + style="stroke:none" + id="rect991" + clip-path="url(#clipPath15)" + y="72" + height="1" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#808080;stroke:#808080" + id="g997" + transform="translate(22,122)" + font-size="15"> + <rect + style="stroke:none" + id="rect995" + clip-path="url(#clipPath16)" + y="0" + height="1" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g1001" + transform="translate(22,123)" + font-size="15"> + <rect + style="stroke:none" + id="rect999" + clip-path="url(#clipPath7)" + y="0" + height="24" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu" + id="g1005" + transform="translate(216,124)" + font-size="15"> + <text + style="stroke:none" + id="text1003" + clip-path="url(#clipPath18)" + y="17" + xml:space="preserve" + x="3">void</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g1017" + transform="translate(24,124)" + font-size="15"> + <rect + style="stroke:none" + id="rect1007" + clip-path="url(#clipPath19)" + y="0" + height="22" + width="36" + x="0" /> + <image + id="image1009" + preserveAspectRatio="none" + height="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" + width="16" + clip-path="url(#clipPath19)" + y="3" + x="2" /> + <image + id="image1011" + preserveAspectRatio="none" + height="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=" + width="16" + clip-path="url(#clipPath19)" + y="3" + x="18" /> + <rect + style="stroke:none" + id="rect1013" + clip-path="url(#clipPath19)" + y="0" + height="22" + width="67" + x="36" /> + <text + style="fill:#000000;stroke:none" + id="text1015" + clip-path="url(#clipPath19)" + y="17" + xml:space="preserve" + x="37">scale(int)</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g1021" + transform="translate(22,147)" + font-size="15"> + <rect + style="stroke:none" + id="rect1019" + clip-path="url(#clipPath7)" + y="0" + height="24" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu" + id="g1025" + transform="translate(227,148)" + font-size="15"> + <text + style="stroke:none" + id="text1023" + clip-path="url(#clipPath8)" + y="17" + xml:space="preserve" + x="3">int</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g1037" + transform="translate(24,148)" + font-size="15"> + <rect + style="stroke:none" + id="rect1027" + clip-path="url(#clipPath21)" + y="0" + height="22" + width="36" + x="0" /> + <image + id="image1029" + preserveAspectRatio="none" + height="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" + width="16" + clip-path="url(#clipPath21)" + y="3" + x="2" /> + <image + id="image1031" + preserveAspectRatio="none" + height="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=" + width="16" + clip-path="url(#clipPath21)" + y="3" + x="18" /> + <rect + style="stroke:none" + id="rect1033" + clip-path="url(#clipPath21)" + y="0" + height="22" + width="105" + x="36" /> + <text + style="fill:#000000;stroke:none" + id="text1035" + clip-path="url(#clipPath21)" + y="17" + xml:space="preserve" + x="37">getPerimeter()</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#e8e8e8;stroke:#e8e8e8" + id="g1041" + transform="translate(22,22)" + font-size="15"> + <rect + style="stroke:none" + id="rect1039" + clip-path="url(#clipPath22)" + y="0" + height="28" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:url(#linearGradient1197);stroke:url(#linearGradient1199)" + id="g1045" + transform="translate(22,22)" + font-size="15"> + <rect + style="fill:url(#linearGradient1195);stroke:none" + id="rect1043" + clip-path="url(#clipPath22)" + y="0" + height="28" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu" + id="g1053" + transform="translate(25,25)" + font-size="15"> + <image + id="image1047" + preserveAspectRatio="none" + height="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==" + width="16" + clip-path="url(#clipPath23)" + y="3" + x="2" /> + <image + id="image1049" + preserveAspectRatio="none" + height="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=" + width="16" + clip-path="url(#clipPath23)" + y="3" + x="18" /> + <text + style="stroke:none" + id="text1051" + clip-path="url(#clipPath23)" + y="17" + xml:space="preserve" + x="37">Rectangle</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#e8e8e8;stroke:#e8e8e8" + id="g1057" + transform="translate(22,22)" + font-size="15"> + <rect + style="stroke:none" + id="rect1055" + clip-path="url(#clipPath5)" + y="0" + height="149" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g1061" + transform="translate(22,50)" + font-size="15"> + <rect + style="stroke:none" + id="rect1059" + clip-path="url(#clipPath6)" + y="0" + height="121" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g1065" + transform="translate(22,50)" + font-size="15"> + <rect + style="stroke:none" + id="rect1063" + clip-path="url(#clipPath7)" + y="0" + height="24" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu" + id="g1069" + transform="translate(227,51)" + font-size="15"> + <text + style="stroke:none" + id="text1067" + clip-path="url(#clipPath8)" + y="17" + xml:space="preserve" + x="3">int</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g1081" + transform="translate(24,51)" + font-size="15"> + <rect + style="stroke:none" + id="rect1071" + clip-path="url(#clipPath9)" + y="0" + height="22" + width="36" + x="0" /> + <image + id="image1073" + preserveAspectRatio="none" + height="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=" + width="16" + clip-path="url(#clipPath9)" + y="3" + x="2" /> + <image + id="image1075" + preserveAspectRatio="none" + height="16" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU +A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L +sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 +I7arHRvdAAAAAElFTkSuQmCC" + width="16" + clip-path="url(#clipPath9)" + y="3" + x="18" /> + <rect + style="stroke:none" + id="rect1077" + clip-path="url(#clipPath9)" + y="0" + height="22" + width="44" + x="36" /> + <text + style="fill:#000000;stroke:none" + id="text1079" + clip-path="url(#clipPath9)" + y="17" + xml:space="preserve" + x="37">width</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g1085" + transform="translate(22,74)" + font-size="15"> + <rect + style="stroke:none" + id="rect1083" + clip-path="url(#clipPath7)" + y="0" + height="24" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu" + id="g1089" + transform="translate(227,75)" + font-size="15"> + <text + style="stroke:none" + id="text1087" + clip-path="url(#clipPath8)" + y="17" + xml:space="preserve" + x="3">int</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g1101" + transform="translate(24,75)" + font-size="15"> + <rect + style="stroke:none" + id="rect1091" + clip-path="url(#clipPath11)" + y="0" + height="22" + width="36" + x="0" /> + <image + id="image1093" + preserveAspectRatio="none" + height="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=" + width="16" + clip-path="url(#clipPath11)" + y="3" + x="2" /> + <image + id="image1095" + preserveAspectRatio="none" + height="16" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU +A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L +sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 +I7arHRvdAAAAAElFTkSuQmCC" + width="16" + clip-path="url(#clipPath11)" + y="3" + x="18" /> + <rect + style="stroke:none" + id="rect1097" + clip-path="url(#clipPath11)" + y="0" + height="22" + width="49" + x="36" /> + <text + style="fill:#000000;stroke:none" + id="text1099" + clip-path="url(#clipPath11)" + y="17" + xml:space="preserve" + x="37">height</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g1105" + transform="translate(22,98)" + font-size="15"> + <rect + style="stroke:none" + id="rect1103" + clip-path="url(#clipPath7)" + y="0" + height="24" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu" + id="g1109" + transform="translate(190,99)" + font-size="15"> + <text + style="stroke:none" + id="text1107" + clip-path="url(#clipPath13)" + y="17" + xml:space="preserve" + x="3">boolean</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g1121" + transform="translate(24,99)" + font-size="15"> + <rect + style="stroke:none" + id="rect1111" + clip-path="url(#clipPath14)" + y="0" + height="22" + width="36" + x="0" /> + <image + id="image1113" + preserveAspectRatio="none" + height="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=" + width="16" + clip-path="url(#clipPath14)" + y="3" + x="2" /> + <image + id="image1115" + preserveAspectRatio="none" + height="16" + xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAaUlEQVR42mNgGAUU +A0ZcEjOXbNBlYvqvA+awMJ9IDfO7T7QBs1dtUvz3799EZDEmJqZ8bIYwYbX+z18L +sOS//8tBGFmMOANIACzYBP/9Y7wCMvofE2MkQiXzCZICERQOcGfjCcRRQAUAAFq6 +I7arHRvdAAAAAElFTkSuQmCC" + width="16" + clip-path="url(#clipPath14)" + y="3" + x="18" /> + <rect + style="stroke:none" + id="rect1117" + clip-path="url(#clipPath14)" + y="0" + height="22" + width="110" + x="36" /> + <text + style="fill:#000000;stroke:none" + id="text1119" + clip-path="url(#clipPath14)" + y="17" + xml:space="preserve" + x="37">hasSolidBorder</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#808080;stroke:#808080" + id="g1125" + transform="translate(22,50)" + font-size="15"> + <rect + style="stroke:none" + id="rect1123" + clip-path="url(#clipPath15)" + y="72" + height="1" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#808080;stroke:#808080" + id="g1129" + transform="translate(22,122)" + font-size="15"> + <rect + style="stroke:none" + id="rect1127" + clip-path="url(#clipPath16)" + y="0" + height="1" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g1133" + transform="translate(22,123)" + font-size="15"> + <rect + style="stroke:none" + id="rect1131" + clip-path="url(#clipPath7)" + y="0" + height="24" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu" + id="g1137" + transform="translate(216,124)" + font-size="15"> + <text + style="stroke:none" + id="text1135" + clip-path="url(#clipPath18)" + y="17" + xml:space="preserve" + x="3">void</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g1149" + transform="translate(24,124)" + font-size="15"> + <rect + style="stroke:none" + id="rect1139" + clip-path="url(#clipPath19)" + y="0" + height="22" + width="36" + x="0" /> + <image + id="image1141" + preserveAspectRatio="none" + height="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" + width="16" + clip-path="url(#clipPath19)" + y="3" + x="2" /> + <image + id="image1143" + preserveAspectRatio="none" + height="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=" + width="16" + clip-path="url(#clipPath19)" + y="3" + x="18" /> + <rect + style="stroke:none" + id="rect1145" + clip-path="url(#clipPath19)" + y="0" + height="22" + width="67" + x="36" /> + <text + style="fill:#000000;stroke:none" + id="text1147" + clip-path="url(#clipPath19)" + y="17" + xml:space="preserve" + x="37">scale(int)</text> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#ffffff;stroke:#ffffff" + id="g1153" + transform="translate(22,147)" + font-size="15"> + <rect + style="stroke:none" + id="rect1151" + clip-path="url(#clipPath7)" + y="0" + height="24" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:#e8e8e8;stroke:#e8e8e8" + id="g1173" + transform="translate(22,22)" + font-size="15"> + <rect + style="stroke:none" + id="rect1171" + clip-path="url(#clipPath22)" + y="0" + height="28" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu;fill:url(#linearGradient1203);stroke:url(#linearGradient1205)" + id="g1177" + transform="translate(22,22)" + font-size="15"> + <rect + style="fill:url(#linearGradient1201);stroke:none" + id="rect1175" + clip-path="url(#clipPath22)" + y="0" + height="28" + width="232" + x="0" /> + </g> + <g + style="font-size:15px;font-family:Ubuntu" + id="g1185" + transform="translate(25,25)" + font-size="15"> + <image + id="image1179" + preserveAspectRatio="none" + height="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==" + width="16" + clip-path="url(#clipPath23)" + y="3" + x="2" /> + <image + id="image1181" + preserveAspectRatio="none" + height="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=" + width="16" + clip-path="url(#clipPath23)" + y="3" + x="18" /> + <text + style="stroke:none" + id="text1183" + clip-path="url(#clipPath23)" + y="17" + xml:space="preserve" + x="37">Rectangle</text> </g> </svg> diff --git a/Doc/Sd1/Ref/ObjectsAndClasses/scaleRectangle.svg b/Doc/Sd1/Ref/ObjectsAndClasses/scaleRectangle.multi.svg similarity index 90% rename from Doc/Sd1/Ref/ObjectsAndClasses/scaleRectangle.svg rename to Doc/Sd1/Ref/ObjectsAndClasses/scaleRectangle.multi.svg index 5467da39d..33220c762 100644 --- a/Doc/Sd1/Ref/ObjectsAndClasses/scaleRectangle.svg +++ b/Doc/Sd1/Ref/ObjectsAndClasses/scaleRectangle.multi.svg @@ -11,8 +11,8 @@ 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" + sodipodi:docname="scaleRectangle.multi.svg" + inkscape:version="0.92.4 (unknown)" version="1.2" id="svg2" height="300" @@ -31,9 +31,9 @@ inkscape:current-layer="layer1" showgrid="true" inkscape:window-width="1600" - inkscape:window-height="1105" + inkscape:window-height="1145" inkscape:window-x="0" - inkscape:window-y="0" + inkscape:window-y="27" inkscape:window-maximized="1" showguides="true" inkscape:guide-bbox="true"> @@ -717,10 +717,11 @@ </rdf:RDF> </metadata> <g - inkscape:label="Layer 1" + inkscape:label="Layer 50" inkscape:groupmode="layer" id="layer1" - transform="translate(0,-822.51971)"> + transform="translate(0,-822.51971)" + style="display:inline"> <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" @@ -799,7 +800,7 @@ style="fill:#008000">height</tspan><tspan sodipodi:role="line" x="5.3691359" - y="1009.771" + y="1009.7711" style="fill:#008000" id="tspan1718-9"> =30</tspan></text> <path @@ -819,6 +820,128 @@ y="981.34784" id="tspan1747">scale by 2</tspan></text> </g> + <g + transform="translate(0,-822.51971)" + id="g373" + inkscape:groupmode="layer" + inkscape:label="Layer 40" + style="display:none"> + <text + id="text343" + y="415.68225" + x="104.51711" + 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" + xml:space="preserve"><tspan + style="font-size:42.66666794px;line-height:1.25;font-family:sans-serif;stroke-width:1.06666672" + y="415.68225" + x="104.51711" + id="tspan341" + sodipodi:role="line"> </tspan></text> + <rect + ry="0" + y="902.51971" + x="150" + height="140" + width="100" + id="rect345" + style="fill:#f4e3d7;stroke:#000000;stroke-width:3.87298346;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" /> + <text + id="text349" + y="889.32806" + x="110.68594" + 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-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'DejaVu Sans';-inkscape-font-specification:'DejaVu Sans';fill:#0000ff" + y="889.32806" + x="110.68594" + id="tspan347" + sodipodi:role="line">width=20</tspan></text> + <text + id="text365" + y="963.10437" + x="5.3691359" + 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="963.10437" + x="5.3691359" + id="tspan361" + sodipodi:role="line">height</tspan><tspan + id="tspan363" + style="fill:#008000" + y="1009.7711" + x="5.3691359" + sodipodi:role="line"> =30</tspan></text> + <path + sodipodi:nodetypes="cccccccc" + inkscape:connector-curvature="0" + id="path367" + 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="text371" + 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="tspan369" + y="981.34784" + x="326.05136" + sodipodi:role="line">scale by 2</tspan></text> + </g> + <g + inkscape:label="Layer 30" + inkscape:groupmode="layer" + id="g397" + transform="translate(0,-822.51971)" + style="display:none"> + <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="text377"><tspan + sodipodi:role="line" + id="tspan375" + 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="rect379" + 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="text383"><tspan + sodipodi:role="line" + id="tspan381" + 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="text389"><tspan + sodipodi:role="line" + id="tspan385" + 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="tspan387"> =30</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> diff --git a/Doc/Sd1/objectsClasses.xml b/Doc/Sd1/objectsClasses.xml index 717749e8d..5d632f19f 100644 --- a/Doc/Sd1/objectsClasses.xml +++ b/Doc/Sd1/objectsClasses.xml @@ -159,7 +159,7 @@ Rectangle solidRectangle = new Rectangle(); <figure xml:id="sd1_fig_SyntaxCreateObject"> <title>Syntax creating instances</title> - <programlisting language="java">variable = new (class-name)</programlisting> + <programlisting language="none">variable = new class-name ([argument 1[, argument 2] ...] );</programlisting> <glosslist> <glossentry> @@ -275,11 +275,12 @@ if (null == r) { </listitem> <listitem> - <para>Provide access restrictions.</para> + <para>Provide access restrictions using:</para> - <para><code language="java">public</code>, <code - language="java">private</code> and <code - language="java">protected</code> modifier</para> + <para><link + xlink:href="https://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html"><code + language="java">public</code>, <code language="java">private</code> + and <code language="java">protected</code></link> modifier</para> </listitem> <listitem> @@ -645,7 +646,7 @@ public class Print { <mediaobject> <imageobject> - <imagedata fileref="Ref/ObjectsAndClasses/scaleRectangle.svg"/> + <imagedata fileref="Ref/ObjectsAndClasses/scaleRectangle.multi.svg"/> </imageobject> </mediaobject> </figure> @@ -820,13 +821,14 @@ height=44</screen></td> <mediaobject> <imageobject> - <imagedata fileref="Ref/ObjectsAndClasses/rectangleGetPerimeter.svg"/> + <imagedata fileref="Ref/ObjectsAndClasses/rectangleGetPerimeter.multi.svg"/> </imageobject> </mediaobject> </figure> <figure xml:id="fig_rectangleGetPerimeterImplement"> - <title>Get perimeter implementation</title> + <title><methodname>getPerimeter()</methodname> method + implementation</title> <informaltable border="1"> <tr> @@ -1187,7 +1189,7 @@ System.out.println("Failed!");</programlisting> return (int) (secondsSince_2000_01_01 / 60) % 60; } - // ... + ... }</programlisting></td> <td valign="top"><programlisting language="java">public class Time { @@ -1203,7 +1205,7 @@ System.out.println("Failed!");</programlisting> linkend="sd1_callout_publicPrivateInterface-2-co"/> return minute; } - // ... + ... }</programlisting></td> </tr> </informaltable> @@ -1226,6 +1228,9 @@ System.out.println("Failed!");</programlisting> <figure xml:id="sd1_fig_timeAccessViolation"> <title>Access violation</title> + <para>No access to <code language="java">private</code> field of alien + class <classname>Time</classname>:</para> + <programlisting language="java">public class Q { public static void main(String[] args) { @@ -2102,8 +2107,8 @@ p.<emphasis role="red">print(value)</emphasis>;</programlisting> </listitem> <listitem> - <para>Test your result from the previous step by actually - executing the given sample code.</para> + <para>Test your result from the previous step by executing + the given sample code.</para> </listitem> </orderedlist> </question> @@ -2372,7 +2377,7 @@ r.hasSolidBorder = false;</programlisting></td> </figure> <figure xml:id="sd1_fig_rectangleThreeConstructors"> - <title>Multiple constructors by overloading</title> + <title>Multiple overloaded constructors</title> <informaltable border="1"> <tr> @@ -4317,7 +4322,7 @@ Member Karen</screen></td> <figure xml:id="sd1_fig_staticMemberConstructorImplement"> <title>Implementing membership numbers.</title> - <programlisting language="java">emphapublic class ClubMember { + <programlisting language="java">public class ClubMember { <emphasis role="red">static</emphasis> <co linkends="sd1_callout_clubStaticMembercount-1" @@ -4489,7 +4494,8 @@ System.out.println("Maximum: " + </figure> <figure xml:id="sd1_fig_staticStateIndependentMethods"> - <title>Favour class method over instance method</title> + <title><code language="java">static</code>: Favour class method over + instance method</title> <informaltable border="1"> <tr> @@ -4537,7 +4543,7 @@ System.out.println("Maximum: " + <title>static / non-static wrap up</title> <programlisting language="none">public class X { - int a; <co linkends="sd1_fig_staticVsNonStaticWrapup-1" + int a; <co linkends="sd1_fig_staticVsNonStaticWrapup-1" xml:id="sd1_fig_staticVsNonStaticWrapup-1-co"/> <emphasis role="red">static</emphasis> int b; <co linkends="sd1_fig_staticVsNonStaticWrapup-2" @@ -6221,13 +6227,15 @@ Archive: .../.m2/repository/.../sd1/helper/0.9/helper-0.9.jar xlink:href="https://gitlab.mi.hdm-stuttgart.de/goik/GoikLectures/tree/master/Doc/Sd1/Ref/ObjectsAndClasses/DependencyExample/Lottery">Lottery</link>»</title> <programlisting language="none"><link - xlink:href="https://gitlab.mi.hdm-stuttgart.de/goik/GoikLectures/blob/master/Doc/Sd1/Ref/ObjectsAndClasses/DependencyExample/Lottery/pom.xml"><project xmlns="http://maven.apache.org/POM/4.0.0" ...></link> + xlink:href="https://gitlab.mi.hdm-stuttgart.de/goik/GoikLectures/blob/master/Doc/Sd1/Ref/ObjectsAndClasses/DependencyExample/Lottery/pom.xml"><project ...></link> ... <groupId>de.hdm_stuttgart.mi.sd1</groupId> <artifactId>lottery</artifactId> <version>0.9</version> + <packaging>jar</packaging> <name>lottery</name> + <dependencies> <dependency> <groupId><emphasis role="red">de.hdm_stuttgart.de.mi.sd1</emphasis></groupId> @@ -6250,7 +6258,70 @@ Archive: .../.m2/repository/.../sd1/helper/0.9/helper-0.9.jar <figure xml:id="sd1_fig_consumingProjectUsingFactorial"> <title>Using <link - xlink:href="https://gitlab.mi.hdm-stuttgart.de/goik/GoikLectures/blob/master/Doc/Sd1/Ref/ObjectsAndClasses/DependencyExample/Helper/src/main/java/de/hdm_stuttgart/mi/sd1/Helper.java">Helper.factorial(...)</link></title> + xlink:href="https://gitlab.mi.hdm-stuttgart.de/goik/GoikLectures/blob/master/Doc/Sd1/Ref/ObjectsAndClasses/DependencyExample/Helper/src/main/java/de/hdm_stuttgart/mi/sd1/Helper.java">Helper.factorial(...)</link> + computing <inlineequation> + <m:math display="inline"> + <m:mrow> + <m:mrow> + <m:mo>(</m:mo> + + <m:mtable> + <m:mtr> + <m:mtd> + <m:mi>n</m:mi> + </m:mtd> + </m:mtr> + + <m:mtr> + <m:mtd> + <m:mi>k</m:mi> + </m:mtd> + </m:mtr> + </m:mtable> + + <m:mo>)</m:mo> + </m:mrow> + + <m:mo>=</m:mo> + + <m:mfrac> + <m:mrow> + <m:mi>n</m:mi> + + <m:mo>!</m:mo> + </m:mrow> + + <m:mrow> + <m:mrow> + <m:mi>k</m:mi> + + <m:mo>!</m:mo> + </m:mrow> + + <m:mo>â¢</m:mo> + + <m:mrow> + <m:mrow> + <m:mo>(</m:mo> + + <m:mrow> + <m:mi>n</m:mi> + + <m:mo>-</m:mo> + + <m:mi>k</m:mi> + </m:mrow> + + <m:mo>)</m:mo> + </m:mrow> + + <m:mo>!</m:mo> + </m:mrow> + </m:mrow> + </m:mfrac> + </m:mrow> + </m:math> + </inlineequation></title> <programlisting language="none">static public long binomial(int n, int k) { return (Helper.<emphasis role="red">factorial(n)</emphasis> / Helper.<emphasis @@ -9956,17 +10027,14 @@ After duplicateString: <emphasis role="red">My</emphasis></screen></td> </figure> <figure xml:id="sd1_fig_CallByReferenceCpp"> - <title><emphasis>C++ offers <quote>true</quote> - «call-by-reference»</emphasis></title> + <title>C++ offers «call-by-reference» by virtue of <quote>&</quote> + </title> <informaltable border="1"> - <colgroup width="60%"/> - - <colgroup width="40%"/> - <tr> - <td valign="top"><programlisting language="none">void printDuplicateValue(int<emphasis - role="red">&</emphasis> n) { + <td valign="top"><programlisting language="none">// Passing a reference +// to variable n +void printDuplicateValue(int<emphasis role="red">&</emphasis> n) { n = 2 * n; cout << "duplicateValue: " << n << endl; @@ -10127,23 +10195,23 @@ After call: <emphasis role="red">6</emphasis></screen></td> <colgroup width="70%"/> <tr> - <td valign="top">Class scope (<code + <td valign="top"><emphasis>Class scope</emphasis> (<code language="java">static</code>)</td> <td valign="top">Application process</td> </tr> <tr> - <td valign="top">Instance scope</td> + <td valign="top"><emphasis>Instance scope</emphasis></td> <td valign="top">Object lifetime: <code language="java">new (...)</code> until being garbage collected.</td> </tr> <tr> - <td valign="top">Method scope</td> + <td valign="top"><emphasis>Method scope</emphasis></td> - <td valign="top">During method call until <code + <td valign="top">Method invocation until <code language="java">return</code>.</td> </tr> </informaltable> @@ -10163,7 +10231,8 @@ After call: <emphasis role="red">6</emphasis></screen></td> <informaltable border="0"> <tr> - <td valign="top"><programlisting language="java"><code>new String()</code></programlisting></td> + <td valign="top"><programlisting language="java"><code + language="java">new String()</code></programlisting></td> <td valign="top"><programlisting language="java">new float[200]</programlisting></td> </tr> @@ -10355,18 +10424,18 @@ After call: <emphasis role="red">6</emphasis></screen></td> <para>Modeling finite sets of discrete states.</para> </listitem> - <listitem> - <para>No dynamic change of state set.</para> - </listitem> - <listitem> <para>Examples:</para> - <para>Door: {<code>OPEN</code>, <code>CLOSED</code>}</para> + <para>A room's door: {<code>OPEN</code>, <code>CLOSED</code>}</para> <para>State of matter: {<code>SOLID</code>, <code>LIQUID</code>, <code>GASEOUS</code>}</para> </listitem> + + <listitem> + <para>No dynamic change of state set.</para> + </listitem> </itemizedlist> </figure> @@ -10385,6 +10454,48 @@ After call: <emphasis role="red">6</emphasis></screen></td> </abstract> </info> + <figure xml:id="sd1_fig_lectureHeldOnWeekday"> + <title>Weekly offered lectures</title> + + <programlisting language="java">public class <link + xlink:href="https://gitlab.mi.hdm-stuttgart.de/goik/GoikLectures/tree/master/Doc/Sd1/Ref/ObjectsAndClasses/Intro/Enum/src/main/java/de/hdm_stuttgart/mi/sd1/integer_representation/Lecture.java">Lecture</link> { + + public final int dayHeld; /* e.g. to be held on Tuesdays */ + + public final String title; /* e.g. «PHP introduction» */ + + public Lecture(final int dayHeld, final String title) { + this.dayHeld = dayHeld; + this.title = title; + } +}</programlisting> + </figure> + + <figure xml:id="sd1_fig_createLectureByIntDaySimple"> + <title>Weekly offered lectures by simple numbers</title> + + <para>Quick and dirty:</para> + + <programlisting language="none">Class <link + xlink:href="https://gitlab.mi.hdm-stuttgart.de/goik/GoikLectures/tree/master/Doc/Sd1/Ref/ObjectsAndClasses/Intro/Enum/src/main/java/de/hdm_stuttgart/mi/sd1/integer_representation/Driver.java">Driver</link>: + +final Lecture + phpIntro = new Lecture(1 /* Monday */, "PHP introduction"), + advancedJava = new Lecture(5 /* Friday */, "Advanced Java");</programlisting> + + <para>Error prone:</para> + + <itemizedlist> + <listitem> + <para>Weeks start on Mondays?</para> + </listitem> + + <listitem> + <para>Index starts with 0 or 1?</para> + </listitem> + </itemizedlist> + </figure> + <figure xml:id="sd1_fig_weekdaysByInt"> <title>Weekdays <code language="java">int</code> representation</title> @@ -10403,25 +10514,8 @@ After call: <emphasis role="red">6</emphasis></screen></td> }</programlisting> </figure> - <figure xml:id="sd1_fig_lectureHeldOnWeekday"> - <title>Weekly offered lectures</title> - - <programlisting language="java">public class <link - xlink:href="https://gitlab.mi.hdm-stuttgart.de/goik/GoikLectures/tree/master/Doc/Sd1/Ref/ObjectsAndClasses/Intro/Enum/src/main/java/de/hdm_stuttgart/mi/sd1/integer_representation/Lecture.java">Lecture</link> { - - public final int dayHeld; /* e.g. to be held on Tuesdays */ - - public final String title; /* e.g. «PHP introduction» */ - - public Lecture(final int dayHeld, final String title) { - this.dayHeld = dayHeld; - this.title = title; - } -}</programlisting> - </figure> - <figure xml:id="sd1_fig_createLectureByIntDay"> - <title>Weekly offered lectures</title> + <title>Weekly offered lectures using constants</title> <programlisting language="none">Class <link xlink:href="https://gitlab.mi.hdm-stuttgart.de/goik/GoikLectures/tree/master/Doc/Sd1/Ref/ObjectsAndClasses/Intro/Enum/src/main/java/de/hdm_stuttgart/mi/sd1/integer_representation/Driver.java">Driver</link>: @@ -10432,7 +10526,7 @@ final Lecture </figure> <figure xml:id="sd1_fig_intToDaysName"> - <title>Integer values to day names</title> + <title>Converting index values to day names</title> <programlisting language="java">public class <link xlink:href="https://gitlab.mi.hdm-stuttgart.de/goik/GoikLectures/tree/master/Doc/Sd1/Ref/ObjectsAndClasses/Intro/Enum/src/main/java/de/hdm_stuttgart/mi/sd1/integer_representation/Day.java">Day</link> { @@ -10499,7 +10593,7 @@ Lecture «Advanced Java» </figure> <figure xml:id="sd1_fig_printLectureInfoBogusValue"> - <title>Bogus enumeration value</title> + <title>Bogus index value</title> <informaltable border="0"> <colgroup width="36%"/> @@ -10522,7 +10616,7 @@ held each Illegal day's code: <emphasis role="red">88</emphasis></screen></td> </figure> <figure xml:id="sd1_fig_printLectureInfoArgOrderMismatch"> - <title>Argument order mismatch</title> + <title>Pitfall: Method argument order mismatch</title> <informaltable border="0"> <colgroup width="36%"/> @@ -10549,11 +10643,11 @@ static public int <link }</programlisting></td> <td valign="top"><programlisting language="none">// Correct -System.out.println(Screwed2. +System.out.println( getPrice(<emphasis role="red">Day.SUNDAY</emphasis>, <emphasis role="red">2</emphasis>)); // Argument mismatch -System.out.println(Screwed2. +System.out.println( getPrice(<emphasis role="red">2</emphasis>, <emphasis role="red">Day.SUNDAY</emphasis>));</programlisting><screen>4 7</screen><para><emphasis role="red">Bad</emphasis>: No warning message whatsoever!</para></td> @@ -10575,7 +10669,7 @@ System.out.println(Screwed2. </info> <figure xml:id="sd1_fig_statesByClassIdea"> - <title>Enumeration by instances</title> + <title>Enumeration by class instances</title> <para>Roadmap:</para> @@ -10616,8 +10710,10 @@ System.out.println(Screwed2. </figure> <figure xml:id="sd1_fig_enumByClassNoSwitch"> - <title><code language="java">switch</code> no longer works, reverting - to <code language="java">if .. else if ...</code></title> + <title><code language="java">switch</code> no longer works</title> + + <para>Reverting to <code language="java">if .. else if + ...</code></para> <programlisting language="java">public static String <link xlink:href="https://gitlab.mi.hdm-stuttgart.de/goik/GoikLectures/tree/master/Doc/Sd1/Ref/ObjectsAndClasses/Intro/Enum/src/main/java/de/hdm_stuttgart/mi/sd1/class_wrapper/Day.java">getDaysName</link>(final Day day) { @@ -10655,18 +10751,22 @@ static public int <link <figure xml:id="sd1_fig_getPriceTypeViolationError"> <title>Compile time argument mismatch error</title> + <para>Preventing <link + linkend="sd1_fig_printLectureInfoArgOrderMismatch">method argument + order mismatch</link>:</para> + <programlisting language="java">// Class <link xlink:href="https://gitlab.mi.hdm-stuttgart.de/goik/GoikLectures/tree/master/Doc/Sd1/Ref/ObjectsAndClasses/Intro/Enum/src/main/java/de/hdm_stuttgart/mi/sd1/class_wrapper/Driver.java">Driver</link> // o.K. System.out.println(Screwed2.getPrice(Day.SUNDAY, 2)); -// Argument mismatch causing type violation error +// Argument mismatch causing compile time type violation error System.out.println(Screwed2.getPrice(2, Day.SUNDAY));</programlisting> </figure> <figure xml:id="sd1_fig_userCircumventProblem"> - <title>Creating an undesired instance</title> + <title>Pitfall: Creating an undesired instance</title> <informaltable border="0"> <tr> @@ -10708,6 +10808,7 @@ class_wrapper.Day@63961c42</emphasis></screen></td> xlink:href="https://gitlab.mi.hdm-stuttgart.de/goik/GoikLectures/tree/master/Doc/Sd1/Ref/ObjectsAndClasses/Intro/Enum/src/main/java/de/hdm_stuttgart/mi/sd1/class_wrapper_private/Day.java">Day</link> { <emphasis role="red">// Disallow object creation outside class + private Day() {}</emphasis> static public final Day @@ -10743,7 +10844,7 @@ class_wrapper_private.Day'</emphasis></screen></td> </figure> <figure xml:id="sd1_fig_privateDaysNameConstructor"> - <title>Even better: Adding day name attribute</title> + <title>Adding a day name attribute</title> <programlisting language="none">public class <link xlink:href="https://gitlab.mi.hdm-stuttgart.de/goik/GoikLectures/tree/master/Doc/Sd1/Ref/ObjectsAndClasses/Intro/Enum/src/main/java/de/hdm_stuttgart/mi/sd1/class_wrapper_daysname/Day.java">Day</link> { @@ -10776,8 +10877,8 @@ class_wrapper_private.Day'</emphasis></screen></td> </info> <figure xml:id="sd1_fig_useEnumDay"> - <title><code language="java">enum</code> - <classname>Day</classname></title> + <title><code language="java">enum</code> <classname>Day</classname> + replacing <code language="java">public class Day</code></title> <programlisting language="java">public enum <link xlink:href="https://gitlab.mi.hdm-stuttgart.de/goik/GoikLectures/tree/master/Doc/Sd1/Ref/ObjectsAndClasses/Intro/Enum/src/main/java/de/hdm_stuttgart/mi/sd1/use_enum/Day.java">Day</link> { diff --git a/Doc/Sd1/statements.xml b/Doc/Sd1/statements.xml index 083e712c5..7620fc19a 100644 --- a/Doc/Sd1/statements.xml +++ b/Doc/Sd1/statements.xml @@ -184,7 +184,7 @@ <title>The if conditional statement</title> <figure xml:id="sd1_fig_if"> - <title><code language="java">if</code> block execution selection</title> + <title>Conditional block execution</title> <informaltable border="1"> <colgroup width="50%"/> -- GitLab