2291 lines
149 KiB
XML
2291 lines
149 KiB
XML
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
|
<!-- Created with Inkscape (http://www.inkscape.org/) -->
|
|
|
|
<svg
|
|
width="344.94019mm"
|
|
height="241.99199mm"
|
|
viewBox="0 0 344.94018 241.99199"
|
|
version="1.1"
|
|
id="svg5"
|
|
xml:space="preserve"
|
|
inkscape:version="1.4.2 (1:1.4.2+202505120737+ebf0e940d0)"
|
|
sodipodi:docname="SoftwareDiagram.svg"
|
|
inkscape:export-filename="SoftwareDiagram.png"
|
|
inkscape:export-xdpi="220.90787"
|
|
inkscape:export-ydpi="220.90787"
|
|
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
|
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
|
xmlns:xlink="http://www.w3.org/1999/xlink"
|
|
xmlns="http://www.w3.org/2000/svg"
|
|
xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
|
|
id="namedview7"
|
|
pagecolor="#ffffff"
|
|
bordercolor="#666666"
|
|
borderopacity="1.0"
|
|
inkscape:showpageshadow="2"
|
|
inkscape:pageopacity="0.0"
|
|
inkscape:pagecheckerboard="0"
|
|
inkscape:deskcolor="#d1d1d1"
|
|
inkscape:document-units="mm"
|
|
showgrid="false"
|
|
inkscape:current-layer="g17"
|
|
showguides="true"
|
|
inkscape:export-bgcolor="#ffffffff"><inkscape:grid
|
|
type="xygrid"
|
|
id="grid9959"
|
|
originx="-7.9935483"
|
|
originy="4.8632749"
|
|
spacingy="1"
|
|
spacingx="1"
|
|
units="mm"
|
|
visible="false" /><inkscape:page
|
|
x="7.0732824e-08"
|
|
y="6.4144771e-08"
|
|
width="344.94019"
|
|
height="241.99199"
|
|
id="page13"
|
|
margin="0"
|
|
bleed="0" /></sodipodi:namedview><defs
|
|
id="defs2"><marker
|
|
style="overflow:visible"
|
|
id="Arrow3"
|
|
refX="0"
|
|
refY="0"
|
|
orient="auto-start-reverse"
|
|
inkscape:stockid="Arrow3"
|
|
markerWidth="4.2071066"
|
|
markerHeight="6.9999995"
|
|
viewBox="0 0 4.2071068 7"
|
|
inkscape:isstock="true"
|
|
inkscape:collect="always"
|
|
preserveAspectRatio="xMidYMid"><path
|
|
style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:round"
|
|
d="M 3,-3 0,0 3,3"
|
|
id="arrow3"
|
|
transform="rotate(180,0.125,0)"
|
|
sodipodi:nodetypes="ccc" /></marker><rect
|
|
x="-94.48819"
|
|
y="75.590553"
|
|
width="548.03149"
|
|
height="302.36221"
|
|
id="rect13135" /><marker
|
|
style="overflow:visible"
|
|
id="Arrow3-6"
|
|
refX="0"
|
|
refY="0"
|
|
orient="auto-start-reverse"
|
|
inkscape:stockid="Arrow3"
|
|
markerWidth="4.2071066"
|
|
markerHeight="6.9999995"
|
|
viewBox="0 0 4.2071068 7"
|
|
inkscape:isstock="true"
|
|
inkscape:collect="always"
|
|
preserveAspectRatio="xMidYMid"><path
|
|
style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:round"
|
|
d="M 3,-3 0,0 3,3"
|
|
id="arrow3-7"
|
|
transform="rotate(180,0.125,0)"
|
|
sodipodi:nodetypes="ccc" /></marker><marker
|
|
style="overflow:visible"
|
|
id="Arrow3-6-3"
|
|
refX="0"
|
|
refY="0"
|
|
orient="auto-start-reverse"
|
|
inkscape:stockid="Arrow3"
|
|
markerWidth="4.2071066"
|
|
markerHeight="6.9999995"
|
|
viewBox="0 0 4.2071068 7"
|
|
inkscape:isstock="true"
|
|
inkscape:collect="always"
|
|
preserveAspectRatio="xMidYMid"><path
|
|
style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:round"
|
|
d="M 3,-3 0,0 3,3"
|
|
id="arrow3-7-5"
|
|
transform="rotate(180,0.125,0)"
|
|
sodipodi:nodetypes="ccc" /></marker><marker
|
|
style="overflow:visible"
|
|
id="Arrow3-6-3-2"
|
|
refX="0"
|
|
refY="0"
|
|
orient="auto-start-reverse"
|
|
inkscape:stockid="Arrow3"
|
|
markerWidth="4.2071066"
|
|
markerHeight="6.9999995"
|
|
viewBox="0 0 4.2071068 7"
|
|
inkscape:isstock="true"
|
|
inkscape:collect="always"
|
|
preserveAspectRatio="xMidYMid"><path
|
|
style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:round"
|
|
d="M 3,-3 0,0 3,3"
|
|
id="arrow3-7-5-9"
|
|
transform="rotate(180,0.125,0)"
|
|
sodipodi:nodetypes="ccc" /></marker><marker
|
|
style="overflow:visible"
|
|
id="Arrow3-2"
|
|
refX="0"
|
|
refY="0"
|
|
orient="auto-start-reverse"
|
|
inkscape:stockid="Arrow3"
|
|
markerWidth="4.2071066"
|
|
markerHeight="6.9999995"
|
|
viewBox="0 0 4.2071068 7"
|
|
inkscape:isstock="true"
|
|
inkscape:collect="always"
|
|
preserveAspectRatio="xMidYMid"><path
|
|
style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:round"
|
|
d="M 3,-3 0,0 3,3"
|
|
id="arrow3-70"
|
|
transform="rotate(180,0.125,0)"
|
|
sodipodi:nodetypes="ccc" /></marker><marker
|
|
style="overflow:visible"
|
|
id="Arrow3-6-9"
|
|
refX="0"
|
|
refY="0"
|
|
orient="auto-start-reverse"
|
|
inkscape:stockid="Arrow3"
|
|
markerWidth="4.2071066"
|
|
markerHeight="6.9999995"
|
|
viewBox="0 0 4.2071068 7"
|
|
inkscape:isstock="true"
|
|
inkscape:collect="always"
|
|
preserveAspectRatio="xMidYMid"><path
|
|
style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:round"
|
|
d="M 3,-3 0,0 3,3"
|
|
id="arrow3-7-3"
|
|
transform="rotate(180,0.125,0)"
|
|
sodipodi:nodetypes="ccc" /></marker><marker
|
|
style="overflow:visible"
|
|
id="Arrow3-7"
|
|
refX="0"
|
|
refY="0"
|
|
orient="auto-start-reverse"
|
|
inkscape:stockid="Arrow3"
|
|
markerWidth="4.2071066"
|
|
markerHeight="6.9999995"
|
|
viewBox="0 0 4.2071068 7"
|
|
inkscape:isstock="true"
|
|
inkscape:collect="always"
|
|
preserveAspectRatio="xMidYMid"><path
|
|
style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:round"
|
|
d="M 3,-3 0,0 3,3"
|
|
id="arrow3-5"
|
|
transform="rotate(180,0.125,0)"
|
|
sodipodi:nodetypes="ccc" /></marker><marker
|
|
style="overflow:visible"
|
|
id="Arrow3-7-8"
|
|
refX="0"
|
|
refY="0"
|
|
orient="auto-start-reverse"
|
|
inkscape:stockid="Arrow3"
|
|
markerWidth="4.2071066"
|
|
markerHeight="6.9999995"
|
|
viewBox="0 0 4.2071068 7"
|
|
inkscape:isstock="true"
|
|
inkscape:collect="always"
|
|
preserveAspectRatio="xMidYMid"><path
|
|
style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:round"
|
|
d="M 3,-3 0,0 3,3"
|
|
id="arrow3-5-9"
|
|
transform="rotate(180,0.125,0)"
|
|
sodipodi:nodetypes="ccc" /></marker><style
|
|
id="style72">.cls-1{fill:#e24329;}.cls-2{fill:#fc6d26;}.cls-3{fill:#fca326;}</style><marker
|
|
style="overflow:visible"
|
|
id="Arrow3-6-3-5"
|
|
refX="0"
|
|
refY="0"
|
|
orient="auto-start-reverse"
|
|
inkscape:stockid="Arrow3"
|
|
markerWidth="4.2071066"
|
|
markerHeight="6.9999995"
|
|
viewBox="0 0 4.2071068 7"
|
|
inkscape:isstock="true"
|
|
inkscape:collect="always"
|
|
preserveAspectRatio="xMidYMid"><path
|
|
style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:round"
|
|
d="M 3,-3 0,0 3,3"
|
|
id="arrow3-7-5-0"
|
|
transform="rotate(180,0.125,0)"
|
|
sodipodi:nodetypes="ccc" /></marker><marker
|
|
style="overflow:visible"
|
|
id="Arrow3-6-3-2-3"
|
|
refX="0"
|
|
refY="0"
|
|
orient="auto-start-reverse"
|
|
inkscape:stockid="Arrow3"
|
|
markerWidth="4.2071066"
|
|
markerHeight="6.9999995"
|
|
viewBox="0 0 4.2071068 7"
|
|
inkscape:isstock="true"
|
|
inkscape:collect="always"
|
|
preserveAspectRatio="xMidYMid"><path
|
|
style="fill:none;stroke:context-stroke;stroke-width:1;stroke-linecap:round"
|
|
d="M 3,-3 0,0 3,3"
|
|
id="arrow3-7-5-9-6"
|
|
transform="rotate(180,0.125,0)"
|
|
sodipodi:nodetypes="ccc" /></marker></defs><g
|
|
inkscape:label="Layer 1"
|
|
inkscape:groupmode="layer"
|
|
id="layer1"
|
|
transform="translate(-7.9935485,4.8632748)"><rect
|
|
style="fill:none;fill-opacity:1;stroke:#7e7e7e;stroke-width:0.5;stroke-linecap:round;stroke-dasharray:1, 2.00001;stroke-dashoffset:0;stroke-opacity:1"
|
|
id="rect234-7-6-6"
|
|
width="58.063263"
|
|
height="111.95364"
|
|
x="219.1615"
|
|
y="54.076134"
|
|
ry="0" /><rect
|
|
style="fill:none;fill-opacity:1;stroke:#ff2222;stroke-width:0.5;stroke-linecap:round;stroke-dasharray:1, 2.00002;stroke-dashoffset:0;stroke-opacity:1"
|
|
id="rect234-7-6-6-3"
|
|
width="249.64281"
|
|
height="118.03572"
|
|
x="95.254944"
|
|
y="50.436325"
|
|
ry="0" /><rect
|
|
style="fill:none;fill-opacity:1;stroke:#ff2222;stroke-width:0.5;stroke-linecap:round;stroke-dasharray:1, 2;stroke-dashoffset:1.6;stroke-opacity:1"
|
|
id="rect234-7-6-6-3-1"
|
|
width="43.938206"
|
|
height="17.829006"
|
|
x="95.254944"
|
|
y="150.64304"
|
|
ry="0" /><g
|
|
id="g15301-3-6"
|
|
transform="translate(16.693936,85.582305)"><g
|
|
id="g13141-2-6-2-3"
|
|
transform="translate(125.76745,-12.807905)"><rect
|
|
style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.500004;stroke-linecap:round;stroke-dasharray:none"
|
|
id="rect234-7-7-1-2-1"
|
|
width="49.381409"
|
|
height="29.416882"
|
|
x="80"
|
|
y="52.116669"
|
|
ry="0.78370988" /><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:40.8713;display:inline;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-35-0-8-8-9"
|
|
transform="translate(60.287356,5.4163737)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan1">Other "Things"</tspan></text><g
|
|
id="g2-8-8"
|
|
transform="translate(13.169261,-126.54738)"><g
|
|
id="LOGO-5-3"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.91034,178.83736)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76-741-1"
|
|
style="fill:#e24329" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78-8-8"
|
|
style="fill:#fc6d26" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80-5-9"
|
|
style="fill:#fca326" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82-9-6"
|
|
style="fill:#fc6d26" /></g><rect
|
|
style="fill:none;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke"
|
|
id="rect1-7-4"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="103.20403"
|
|
y="180.30244"
|
|
ry="1.3326334" /><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-5-3"
|
|
transform="matrix(1.9854168,0,0,1.9854168,67.602161,86.046892)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan2">...</tspan></text></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:32.511;display:inline;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-35-0-8-8-9-6"
|
|
transform="translate(60.287356,8.9441436)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan4">Others things, can be </tspan><tspan
|
|
x="21.304592"
|
|
y="53.762691"
|
|
id="tspan6">installed defined in any </tspan><tspan
|
|
x="21.304592"
|
|
y="57.290466"
|
|
id="tspan7">installed python </tspan><tspan
|
|
x="21.304592"
|
|
y="60.818241"
|
|
id="tspan8">package, and included in </tspan><tspan
|
|
x="21.304592"
|
|
y="64.346016"
|
|
id="tspan9">the config. As of yet </tspan><tspan
|
|
x="21.304592"
|
|
y="67.873794"
|
|
id="tspan10">there is no way to define </tspan><tspan
|
|
x="21.304592"
|
|
y="71.401573"
|
|
id="tspan11">a UI</tspan></text></g></g><g
|
|
id="g15301-3-6-7"
|
|
transform="translate(16.648088,39.71398)"><g
|
|
id="g13141-2-6-2-3-0"
|
|
transform="translate(125.76745,-13.095733)"><rect
|
|
style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.500004;stroke-linecap:round;stroke-dasharray:none"
|
|
id="rect234-7-7-1-2-1-9"
|
|
width="49.381409"
|
|
height="36.900429"
|
|
x="80"
|
|
y="52.116665"
|
|
ry="0.98308277" /><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:40.8713;display:inline;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-35-0-8-8-9-3"
|
|
transform="translate(60.287356,5.4163737)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan12">Things</tspan></text><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:32.511;display:inline;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-35-0-8-8-9-6-2"
|
|
transform="translate(60.287356,8.9441436)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan13">Except for during start </tspan><tspan
|
|
x="21.304592"
|
|
y="53.762691"
|
|
id="tspan14">up all functionality is </tspan><tspan
|
|
x="21.304592"
|
|
y="57.290466"
|
|
id="tspan15">defined either within </tspan><tspan
|
|
x="21.304592"
|
|
y="60.818241"
|
|
id="tspan16">"Things" or in code </tspan><tspan
|
|
x="21.304592"
|
|
y="64.346016"
|
|
id="tspan17">called by Things.
|
|
</tspan><tspan
|
|
x="21.304592"
|
|
y="67.873794"
|
|
id="tspan18">
|
|
</tspan><tspan
|
|
x="21.304592"
|
|
y="71.401573"
|
|
id="tspan19">Things communicate </tspan><tspan
|
|
x="21.304592"
|
|
y="74.929352"
|
|
id="tspan20">with each other via </tspan><tspan
|
|
x="21.304592"
|
|
y="78.45713"
|
|
id="tspan21">thing_slots.</tspan></text><a
|
|
id="a26"
|
|
xlink:href="https://gitlab.com/openflexure/openflexure-microscope-server"><g
|
|
id="g2-8"
|
|
transform="translate(13.377604,-123.85228)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-7"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="102.67485"
|
|
y="177.12749"
|
|
ry="1.3326334" /><g
|
|
id="LOGO-5"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.38117,175.66234)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76-741"
|
|
style="fill:#e24329" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78-8"
|
|
style="fill:#fc6d26" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80-5"
|
|
style="fill:#fca326" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82-9"
|
|
style="fill:#fc6d26" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-5"
|
|
transform="matrix(1.9854168,0,0,1.9854168,68.131328,82.87189)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan22">1</tspan></text></g></a></g></g><g
|
|
id="g13141"
|
|
transform="translate(17.78657,18.778472)"><rect
|
|
style="fill:none;fill-opacity:1;stroke:#9c7efa;stroke-width:0.5;stroke-linecap:round;stroke-dasharray:none;stroke-opacity:1"
|
|
id="rect234-7"
|
|
width="37.75"
|
|
height="20.467146"
|
|
x="80"
|
|
y="52.116669"
|
|
ry="2.1319942" /><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:33.3205;display:inline;fill:#9c7efa;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-35"
|
|
transform="translate(63.374919,6.963966)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan23">Uvicorn,
|
|
</tspan><tspan
|
|
x="21.304592"
|
|
y="54.64463"
|
|
id="tspan24">An Async Sever </tspan><tspan
|
|
x="21.304592"
|
|
y="59.054343"
|
|
id="tspan25">Gateway Interface </tspan><tspan
|
|
x="21.304592"
|
|
y="63.464057"
|
|
id="tspan26">(ASGI) web server</tspan></text></g><text
|
|
xml:space="preserve"
|
|
transform="scale(0.26458333)"
|
|
id="text13133"
|
|
style="font-size:13.3333px;line-height:1.25;font-family:'Open Sans', 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;-inkscape-font-specification:'Open Sans';text-align:center;letter-spacing:0px;word-spacing:0px;white-space:pre;shape-inside:url(#rect13135);display:inline" /><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#7e7e7e;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-2"
|
|
transform="translate(199.77192,8.3318452)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan27">Things</tspan></text><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#7e7e7e;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-2-1"
|
|
transform="translate(263.35597,8.8016102)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan28">Other custom utilities/libraries</tspan></text><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:42.1194;display:inline;fill:#ff2222;fill-opacity:1;stroke:none;stroke-width:0.264583;stroke-opacity:1"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-2-6"
|
|
transform="translate(76.327734,4.7483568)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan29">systemd service on </tspan><tspan
|
|
x="21.304592"
|
|
y="54.64463"
|
|
id="tspan30">Raspberry Pi
|
|
</tspan><tspan
|
|
x="21.304592"
|
|
y="59.054343"
|
|
id="tspan32"><tspan
|
|
style="font-style:italic;-inkscape-font-specification:'Open Sans Italic'"
|
|
id="tspan31">All python runs in "ofm" </tspan></tspan><tspan
|
|
x="21.304592"
|
|
y="63.464057"
|
|
id="tspan34"><tspan
|
|
style="font-style:italic;-inkscape-font-specification:'Open Sans Italic'"
|
|
id="tspan33">virtual environment</tspan></tspan></text><g
|
|
id="g11"
|
|
transform="translate(0,4.0796152)"><rect
|
|
style="fill:#b8f3f7;fill-opacity:1;stroke:none;stroke-width:0.5;stroke-linecap:round;stroke-dasharray:1, 2.00003;stroke-dashoffset:0;stroke-opacity:1"
|
|
id="rect234-7-6-6-3-5"
|
|
width="65.173698"
|
|
height="132.57152"
|
|
x="13.993548"
|
|
y="29.950129"
|
|
ry="4.0044417" /><g
|
|
id="g13166"
|
|
transform="translate(7.9820287,-13.196068)"><rect
|
|
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.5;stroke-linecap:round;stroke-dasharray:none"
|
|
id="rect234-7-5"
|
|
width="59.132027"
|
|
height="38.342243"
|
|
x="8.8345165"
|
|
y="52.215397"
|
|
ry="3.9939835" /><a
|
|
id="a27"
|
|
xlink:href="https://gitlab.com/openflexure/openflexure-connect"><g
|
|
id="g2-5"
|
|
transform="translate(-48.618332,-120.0636)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-8"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="102.67485"
|
|
y="177.12749"
|
|
ry="1.3326334" /><g
|
|
id="LOGO-4"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.38117,175.66234)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76-74"
|
|
style="fill:#e24329" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78-4"
|
|
style="fill:#fc6d26" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80-3"
|
|
style="fill:#fca326" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82-07"
|
|
style="fill:#fc6d26" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-6"
|
|
transform="matrix(1.9854168,0,0,1.9854168,68.131328,82.87189)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan35">2</tspan></text></g></a><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844"
|
|
transform="translate(-9.4215016,5.3456785)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan36">OpenFlexure Connect (Electron </tspan><tspan
|
|
x="21.304592"
|
|
y="54.64463"
|
|
id="tspan37">app)
|
|
</tspan><tspan
|
|
x="21.304592"
|
|
y="59.054343"
|
|
id="tspan39"><tspan
|
|
style="font-style:italic;-inkscape-font-specification:'Open Sans Italic'"
|
|
id="tspan38">[or browser]</tspan></tspan></text><g
|
|
id="g13151"><rect
|
|
style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.5;stroke-linecap:round;stroke-dasharray:none"
|
|
id="rect234"
|
|
width="54.727367"
|
|
height="20.467146"
|
|
x="11.045641"
|
|
y="67.192055"
|
|
ry="2.1319942" /><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;stroke-width:0.264583"
|
|
x="14.038027"
|
|
y="73.083778"
|
|
id="text844-3"><tspan
|
|
sodipodi:role="line"
|
|
style="text-align:start;text-anchor:start;stroke-width:0.264583"
|
|
x="14.038027"
|
|
y="73.083778"
|
|
id="tspan15438">Web App written in Vue.js</tspan></text><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:47.1501;display:inline;stroke-width:0.264583"
|
|
x="15.056169"
|
|
y="80.215981"
|
|
id="text844-3-7"
|
|
transform="translate(-0.5291667,-3.1750001)"><tspan
|
|
x="15.056169"
|
|
y="80.215981"
|
|
id="tspan41"><tspan
|
|
style="font-style:italic;-inkscape-font-specification:'Open Sans Italic'"
|
|
id="tspan40">Created by (and served from) the </tspan></tspan><tspan
|
|
x="15.056169"
|
|
y="83.743759"
|
|
id="tspan43"><tspan
|
|
style="font-style:italic;-inkscape-font-specification:'Open Sans Italic'"
|
|
id="tspan42">server. Viewed in browser or </tspan></tspan><tspan
|
|
x="15.056169"
|
|
y="87.271538"
|
|
id="tspan45"><tspan
|
|
style="font-style:italic;-inkscape-font-specification:'Open Sans Italic'"
|
|
id="tspan44">OpenFlexure Connect</tspan></tspan></text><g
|
|
transform="matrix(0.03593806,0,0,-0.03593806,55.545877,78.256879)"
|
|
id="g1418"
|
|
style="stroke-width:9.81601"><g
|
|
transform="translate(178.06,235.01)"
|
|
id="g1412"
|
|
style="stroke-width:9.81601"><path
|
|
d="M 0,0 -22.669,-39.264 -45.338,0 h -75.491 L -22.669,-170.02 75.491,0 Z"
|
|
fill="#41b883"
|
|
id="path1410"
|
|
style="stroke-width:29.5803" /></g><g
|
|
transform="translate(178.06,235.01)"
|
|
id="g1416"
|
|
style="stroke-width:9.81601"><path
|
|
d="M 0,0 -22.669,-39.264 -45.338,0 H -81.565 L -22.669,-102.01 36.227,0 Z"
|
|
fill="#34495e"
|
|
id="path1414"
|
|
style="stroke-width:29.5803" /></g></g><a
|
|
id="a24"
|
|
xlink:href="https://gitlab.com/openflexure/openflexure-microscope-server"><g
|
|
id="g2-1-4"
|
|
transform="translate(-50.205834,-98.103183)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-2-7"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="102.67485"
|
|
y="177.12749"
|
|
ry="1.3326334" /><g
|
|
id="LOGO-8-9"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.38117,175.66234)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76-7-5"
|
|
style="fill:#e24329" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78-9-0"
|
|
style="fill:#fc6d26" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80-2-4"
|
|
style="fill:#fca326" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82-0-8"
|
|
style="fill:#fc6d26" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-3-1"
|
|
transform="matrix(1.9854168,0,0,1.9854168,68.131328,82.87189)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan46">1</tspan></text></g></a></g></g><g
|
|
id="g9"><rect
|
|
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.5;stroke-linecap:round;stroke-dasharray:none"
|
|
id="rect234-7-5-6"
|
|
width="59.132027"
|
|
height="52.04464"
|
|
x="16.816545"
|
|
y="81.935104"
|
|
ry="3.0902033" /><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-7"
|
|
transform="translate(-1.4394729,35.065387)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan47">Python code
|
|
</tspan></text><g
|
|
id="g4"
|
|
transform="translate(7.9820287,47.277262)"><a
|
|
id="a22"
|
|
xlink:href="https://github.com/labthings/labthings-fastapi"><g
|
|
id="g3-0-4"
|
|
transform="translate(-44.681259,-116.01128)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-1-6-4"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="97.488258"
|
|
y="190.33562"
|
|
ry="1.3326334" /><g
|
|
style="fill:none"
|
|
id="g1-9-3"
|
|
transform="matrix(0.00480606,0,0,0.00480606,99.075735,191.41727)"><path
|
|
fill-rule="evenodd"
|
|
clip-rule="evenodd"
|
|
d="M 8,0 C 3.58,0 0,3.58 0,8 c 0,3.54 2.29,6.53 5.47,7.59 0.4,0.07 0.55,-0.17 0.55,-0.38 0,-0.19 -0.01,-0.82 -0.01,-1.49 C 4,14.09 3.48,13.23 3.32,12.78 3.23,12.55 2.84,11.84 2.5,11.65 2.22,11.5 1.82,11.13 2.49,11.12 3.12,11.11 3.57,11.7 3.72,11.94 4.44,13.15 5.59,12.81 6.05,12.6 6.12,12.08 6.33,11.73 6.56,11.53 4.78,11.33 2.92,10.64 2.92,7.58 2.92,6.71 3.23,5.99 3.74,5.43 3.66,5.23 3.38,4.41 3.82,3.31 c 0,0 0.67,-0.21 2.2,0.82 0.64,-0.18 1.32,-0.27 2,-0.27 0.68,0 1.36,0.09 2,0.27 1.53,-1.04 2.2,-0.82 2.2,-0.82 0.44,1.1 0.16,1.92 0.08,2.12 0.51,0.56 0.82,1.27 0.82,2.15 0,3.07 -1.87,3.75 -3.65,3.95 0.29,0.25 0.54,0.73 0.54,1.48 0,1.07 -0.01,1.93 -0.01,2.2 0,0.21 0.15,0.46 0.55,0.38 C 13.71,14.53 16,11.53 16,8 16,3.58 12.42,0 8,0 Z"
|
|
transform="scale(64)"
|
|
fill="#1b1f23"
|
|
id="path1-3-1" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-2-0-9"
|
|
transform="matrix(1.9854168,0,0,1.9854168,62.94471,96.08002)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan48">1</tspan></text></g></a><g
|
|
id="g13151-5"
|
|
transform="translate(0,2.1166667)"><rect
|
|
style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.5;stroke-linecap:round;stroke-dasharray:none"
|
|
id="rect234-3"
|
|
width="54.727371"
|
|
height="18.4979"
|
|
x="11.045641"
|
|
y="61.900383"
|
|
ry="1.7612126" /><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;stroke-width:0.264583"
|
|
x="15.625525"
|
|
y="66.733772"
|
|
id="text844-3-5"><tspan
|
|
sodipodi:role="line"
|
|
style="text-align:start;text-anchor:start;stroke-width:0.264583"
|
|
x="15.625525"
|
|
y="66.733772"
|
|
id="tspan15438-6">LabThings-FastAPI Client</tspan></text><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#1b853a;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-3"
|
|
transform="translate(-5.6409226,20.960041)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan50"><tspan
|
|
style="font-family:monospace;-inkscape-font-specification:monospace"
|
|
id="tspan49">labthings-fastapi.client.
|
|
</tspan></tspan><tspan
|
|
x="21.304592"
|
|
y="53.766315"
|
|
id="tspan52"><tspan
|
|
style="font-family:monospace;-inkscape-font-specification:monospace"
|
|
id="tspan51">ThingClient</tspan></tspan></text></g></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.9988;display:inline;stroke-width:0.264583"
|
|
x="15.056169"
|
|
y="80.215981"
|
|
id="text844-3-7-2"
|
|
transform="translate(4.8198429,9.9033083)"><tspan
|
|
x="15.056169"
|
|
y="80.215981"
|
|
id="tspan53">LabThings with automatically </tspan><tspan
|
|
x="15.056169"
|
|
y="83.743759"
|
|
id="tspan54">make a "ThingClient" class that </tspan><tspan
|
|
x="15.056169"
|
|
y="87.271538"
|
|
id="tspan55">communicates over HTTP and </tspan><tspan
|
|
x="15.056169"
|
|
y="90.799316"
|
|
id="tspan56">provides methods for calling all </tspan><tspan
|
|
x="15.056169"
|
|
y="94.327095"
|
|
id="tspan57">actions and reading properties of </tspan><tspan
|
|
x="15.056169"
|
|
y="97.854873"
|
|
id="tspan58">any "Thing" running on the server.</tspan></text></g><text
|
|
xml:space="preserve"
|
|
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans Bold';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:42.1194;display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.264583;stroke-opacity:1"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-2-6-6"
|
|
transform="translate(-2.5345212,-16.56553)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan59">User's Computer</tspan></text><g
|
|
id="g12"><rect
|
|
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0.5;stroke-linecap:round;stroke-dasharray:none"
|
|
id="rect234-7-5-6-5-6"
|
|
width="59.132004"
|
|
height="19.205902"
|
|
x="16.816559"
|
|
y="136.90742"
|
|
ry="4.9415431" /><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-7-5"
|
|
transform="translate(-1.4394729,91.506419)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan60">Local terminal</tspan></text><g
|
|
id="g17702-20"
|
|
transform="translate(9.0331949,81.282693)"><path
|
|
id="rect16151-615"
|
|
style="fill:#181818;stroke-width:0.264999;stroke-linecap:round;stroke-dashoffset:6.04949"
|
|
d="m 11.178251,63.224724 h 39.678016 v 8.932683 H 11.178251 Z"
|
|
sodipodi:nodetypes="ccccc" /><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#ffffff;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-3-2-54"
|
|
transform="translate(-9.1497732,16.263405)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan61">$ ssh microscope.local</tspan></text></g></g></g><text
|
|
xml:space="preserve"
|
|
style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans Bold';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:48.6222;display:inline;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.0797344;stroke-opacity:1"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-2-6-6-3"
|
|
transform="matrix(3.3183038,0,0,3.3183038,80.896785,-146.15333)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan62">v3 Software Architecture</tspan></text><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#cc00a7;fill-opacity:1;stroke:none;stroke-width:0.264583;stroke-opacity:1"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-2-6-3-6"
|
|
transform="translate(62.811423,87.541444)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan63">ssh</tspan></text><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#cc00a7;fill-opacity:1;stroke:none;stroke-width:0.264583;stroke-opacity:1"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-2-6-3-7"
|
|
transform="translate(116.4806,34.406016)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan64">ASGI</tspan></text><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:42.489;display:inline;fill:#ff2222;fill-opacity:1;stroke:none;stroke-width:0.264583;stroke-opacity:1"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-2-6-2"
|
|
transform="translate(75.773346,105.8293)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan65">The systemd service is </tspan><tspan
|
|
x="21.304592"
|
|
y="54.64463"
|
|
id="tspan66">run on startup. It is </tspan><tspan
|
|
x="21.304592"
|
|
y="59.054343"
|
|
id="tspan68">managed by <tspan
|
|
style="font-family:monospace;-inkscape-font-specification:monospace"
|
|
id="tspan67">systemctl</tspan> </tspan></text><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:56.6158;display:inline;fill:#cc00a7;fill-opacity:1;stroke:none;stroke-width:0.264583;stroke-opacity:1"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-2-6-2-9"
|
|
transform="translate(130.78178,70.681411)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan69">Things add API endpoints to the </tspan><tspan
|
|
x="21.304592"
|
|
y="54.64463"
|
|
id="tspan70">FastAPI server for communication.
|
|
</tspan><tspan
|
|
x="21.304592"
|
|
y="59.054343"
|
|
id="tspan72">(see <tspan
|
|
style="font-family:monospace;-inkscape-font-specification:monospace"
|
|
id="tspan71">add_to_fastapi</tspan>) </tspan></text><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:56.6158;display:inline;fill:#1b853a;fill-opacity:1;stroke:none;stroke-width:0.264583;stroke-opacity:1"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-2-6-2-9-4"
|
|
transform="translate(130.80366,88.494955)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan73">Things generate a Thing </tspan><tspan
|
|
x="21.304592"
|
|
y="54.64463"
|
|
id="tspan74">Description that describe their </tspan><tspan
|
|
x="21.304592"
|
|
y="59.054343"
|
|
id="tspan75">functionality and data and the </tspan><tspan
|
|
x="21.304592"
|
|
y="63.464057"
|
|
id="tspan76">HTTP endpoints.</tspan></text><g
|
|
id="g8"><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#cc00a7;fill-opacity:1;stroke:none;stroke-width:0.264583;stroke-opacity:1"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-2-6-3"
|
|
transform="translate(61.404598,23.316425)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan77">HTTP</tspan></text><path
|
|
style="font-variation-settings:normal;vector-effect:none;fill:none;fill-opacity:1;stroke:#cc00a7;stroke-width:0.264583;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-end:url(#Arrow3);stop-color:#000000"
|
|
d="M 97.486081,74.057953 H 76.63137"
|
|
id="path1373"
|
|
sodipodi:nodetypes="cc" /><path
|
|
style="font-variation-settings:normal;vector-effect:none;fill:none;fill-opacity:1;stroke:#cc00a7;stroke-width:0.264583;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-end:url(#Arrow3-6);stop-color:#000000"
|
|
d="M 76.334039,75.653339 H 97.18875"
|
|
id="path1373-5"
|
|
sodipodi:nodetypes="cc" /></g><path
|
|
style="font-variation-settings:normal;vector-effect:none;fill:none;fill-opacity:1;stroke:#cc00a7;stroke-width:0.264583;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-end:url(#Arrow3-2);stop-color:#000000"
|
|
d="M 152.69541,85.364085 H 136.00623"
|
|
id="path1373-6"
|
|
sodipodi:nodetypes="cc" /><path
|
|
style="font-variation-settings:normal;vector-effect:none;fill:none;fill-opacity:1;stroke:#cc00a7;stroke-width:0.264583;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-end:url(#Arrow3-6-9);stop-color:#000000"
|
|
d="m 135.79232,86.959471 h 16.68919"
|
|
id="path1373-5-0"
|
|
sodipodi:nodetypes="cc" /><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#cc00a7;fill-opacity:1;stroke:none;stroke-width:0.264583;stroke-opacity:1"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-2-6-3-1"
|
|
transform="translate(61.404598,31.713224)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan78">HTTP</tspan></text><path
|
|
style="font-variation-settings:normal;vector-effect:none;fill:none;fill-opacity:1;stroke:#cc00a7;stroke-width:0.264583;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-end:url(#Arrow3-6-3);stop-color:#000000"
|
|
d="m 76.270389,90.86181 h 4.07117 l 0.03668,-6.605796 h 17.080637"
|
|
id="path1373-5-6"
|
|
sodipodi:nodetypes="cccc" /><path
|
|
style="font-variation-settings:normal;vector-effect:none;fill:none;fill-opacity:1;stroke:#cc00a7;stroke-width:0.264583;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-end:url(#Arrow3-6-3-2);stop-color:#000000"
|
|
d="M 97.696373,85.493514 H 81.525604 l -0.03668,6.605796 h -4.981038"
|
|
id="path1373-5-6-1"
|
|
sodipodi:nodetypes="cccc" /><path
|
|
style="font-variation-settings:normal;vector-effect:none;fill:none;fill-opacity:1;stroke:#cc00a7;stroke-width:0.264583;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-end:url(#Arrow3-6-3-5);stop-color:#000000"
|
|
d="m 76.220853,145.52994 5.536503,0 0.03668,-6.74971 h 15.065836"
|
|
id="path1373-5-6-0"
|
|
sodipodi:nodetypes="cccc" /><path
|
|
style="font-variation-settings:normal;vector-effect:none;fill:none;fill-opacity:1;stroke:#cc00a7;stroke-width:0.264583;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-end:url(#Arrow3-6-3-2-3);stop-color:#000000"
|
|
d="M 97.097369,140.01772 H 82.941401 l -0.03668,6.74972 -6.446371,0"
|
|
id="path1373-5-6-1-6"
|
|
sodipodi:nodetypes="cccc" /><path
|
|
style="font-variation-settings:normal;opacity:1;fill:none;fill-opacity:1;stroke:#cc00a7;stroke-width:0.265;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-end:url(#Arrow3-2);stop-color:#000000;stop-opacity:1"
|
|
d="m 188.90327,90.003929 h 23.78957 v 0 h 9.23939"
|
|
id="path4133"
|
|
sodipodi:nodetypes="cccc" /><path
|
|
style="font-variation-settings:normal;opacity:1;fill:none;fill-opacity:1;stroke:#cc00a7;stroke-width:0.265;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-end:url(#Arrow3-2);stop-color:#000000;stop-opacity:1"
|
|
d="m 212.69284,90.003929 0,39.368581 h 9.23939"
|
|
id="path4135"
|
|
sodipodi:nodetypes="ccc" /><path
|
|
style="font-variation-settings:normal;fill:none;fill-opacity:1;stroke:#cc00a7;stroke-width:0.265;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-start:url(#Arrow3);stop-color:#000000"
|
|
d="m 188.90327,88.788638 h 24.8977 v 2.403251 h 8.13126"
|
|
id="path4133-6"
|
|
sodipodi:nodetypes="cccc" /><path
|
|
style="font-variation-settings:normal;vector-effect:none;fill:none;fill-opacity:1;stroke:#cc00a7;stroke-width:0.264583;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;stop-color:#000000"
|
|
d="m 213.80097,91.191889 0,39.368581 h 8.13126"
|
|
id="path4135-2"
|
|
sodipodi:nodetypes="ccc" /><path
|
|
style="font-variation-settings:normal;fill:none;fill-opacity:1;stroke:#1b853a;stroke-width:0.265;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-start:url(#Arrow3-7);stop-color:#000000"
|
|
d="m 187.55243,102.32454 h 27.54353 v -9.767583 h 6.83627"
|
|
id="path4133-6-9"
|
|
sodipodi:nodetypes="cccc" /><path
|
|
style="font-variation-settings:normal;vector-effect:none;fill:none;fill-opacity:1;stroke:#1b853a;stroke-width:0.264583;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;stop-color:#000000"
|
|
d="m 215.09596,102.32454 0,29.601 h 6.83627"
|
|
id="path4135-2-2"
|
|
sodipodi:nodetypes="ccc" /><g
|
|
id="g11070"
|
|
transform="translate(19.374071,24.076136)"><rect
|
|
style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.5;stroke-linecap:round;stroke-dasharray:none"
|
|
id="rect234-7-6"
|
|
width="54.254227"
|
|
height="59.410969"
|
|
x="127.14751"
|
|
y="29.518194"
|
|
ry="2.8414457" /><a
|
|
id="a25"
|
|
xlink:href="https://gitlab.com/openflexure/openflexure-microscope-server"><g
|
|
id="g2-1"
|
|
transform="translate(65.167473,-142.78246)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-2"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="102.67485"
|
|
y="177.12749"
|
|
ry="1.3326334" /><g
|
|
id="LOGO-8"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.38117,175.66234)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76-7"
|
|
style="fill:#e24329" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78-9"
|
|
style="fill:#fc6d26" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80-2"
|
|
style="fill:#fca326" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82-0"
|
|
style="fill:#fc6d26" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-3"
|
|
transform="matrix(1.9854168,0,0,1.9854168,68.131328,82.87189)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan79">1</tspan></text></g></a><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2"
|
|
transform="translate(108.53339,-16.604642)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan80">OpenFlexure Microscope
|
|
</tspan><tspan
|
|
x="21.304592"
|
|
y="54.64463"
|
|
id="tspan81">Server</tspan></text><g
|
|
id="g6088"><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-0"
|
|
transform="translate(113.80442,30.857861)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan82">Thing Descriptions</tspan></text></g><g
|
|
id="g13170"
|
|
transform="translate(0,2.1166667)"><rect
|
|
style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.5;stroke-linecap:round;stroke-dasharray:none"
|
|
id="rect234-7-6-9"
|
|
width="49.75"
|
|
height="29.75"
|
|
x="130"
|
|
y="40.25"
|
|
ry="3.098958" /><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#1b853a;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1"
|
|
transform="translate(111.68774,-1.7338049)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan84"><tspan
|
|
style="font-family:monospace;-inkscape-font-specification:monospace"
|
|
id="tspan83">labthings-fastapi.server.
|
|
</tspan></tspan><tspan
|
|
x="21.304592"
|
|
y="53.766315"
|
|
id="tspan86"><tspan
|
|
style="font-family:monospace;-inkscape-font-specification:monospace"
|
|
id="tspan85">ThingServer</tspan></tspan></text><g
|
|
id="g13141-2"
|
|
transform="translate(53.619135,5.0166626)"><rect
|
|
style="fill:none;fill-opacity:1;stroke:#9c7efa;stroke-width:0.5;stroke-linecap:round;stroke-dasharray:none;stroke-opacity:1"
|
|
id="rect234-7-7"
|
|
width="35.380871"
|
|
height="9.8666668"
|
|
x="80"
|
|
y="52.116669"
|
|
ry="1.0277778" /><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:33.3205;display:inline;fill:#9c7efa;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-35-0"
|
|
transform="translate(60.287356,5.4163737)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan87">FastAPI</tspan></text><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#1b853a;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6"
|
|
transform="translate(61.01141,8.9078049)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan88">sever.app:FastAPI</tspan></text></g><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-3"
|
|
transform="translate(111.51272,-5.5546383)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan89">LabThings-FastAPI Server</tspan></text><a
|
|
id="a23"
|
|
xlink:href="https://github.com/labthings/labthings-fastapi"><g
|
|
id="g3-0"
|
|
transform="translate(69.176352,-141.06933)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-1-6"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="97.488258"
|
|
y="190.33562"
|
|
ry="1.3326334" /><g
|
|
style="fill:none"
|
|
id="g1-9"
|
|
transform="matrix(0.00480606,0,0,0.00480606,99.075735,191.41727)"><path
|
|
fill-rule="evenodd"
|
|
clip-rule="evenodd"
|
|
d="M 8,0 C 3.58,0 0,3.58 0,8 c 0,3.54 2.29,6.53 5.47,7.59 0.4,0.07 0.55,-0.17 0.55,-0.38 0,-0.19 -0.01,-0.82 -0.01,-1.49 C 4,14.09 3.48,13.23 3.32,12.78 3.23,12.55 2.84,11.84 2.5,11.65 2.22,11.5 1.82,11.13 2.49,11.12 3.12,11.11 3.57,11.7 3.72,11.94 4.44,13.15 5.59,12.81 6.05,12.6 6.12,12.08 6.33,11.73 6.56,11.53 4.78,11.33 2.92,10.64 2.92,7.58 2.92,6.71 3.23,5.99 3.74,5.43 3.66,5.23 3.38,4.41 3.82,3.31 c 0,0 0.67,-0.21 2.2,0.82 0.64,-0.18 1.32,-0.27 2,-0.27 0.68,0 1.36,0.09 2,0.27 1.53,-1.04 2.2,-0.82 2.2,-0.82 0.44,1.1 0.16,1.92 0.08,2.12 0.51,0.56 0.82,1.27 0.82,2.15 0,3.07 -1.87,3.75 -3.65,3.95 0.29,0.25 0.54,0.73 0.54,1.48 0,1.07 -0.01,1.93 -0.01,2.2 0,0.21 0.15,0.46 0.55,0.38 C 13.71,14.53 16,11.53 16,8 16,3.58 12.42,0 8,0 Z"
|
|
transform="scale(64)"
|
|
fill="#1b1f23"
|
|
id="path1-3" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-2-0"
|
|
transform="matrix(1.9854168,0,0,1.9854168,62.94471,96.08002)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan90">1</tspan></text></g></a></g><path
|
|
id="path5736"
|
|
style="fill:none;stroke:#1b853a;stroke-width:0.264999;stroke-linecap:round;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1"
|
|
d="m 139.63182,74.680106 a 5.6878148,3.3862759 0 0 0 -5.6877,3.386207 5.6878148,3.3862759 0 0 0 1.00662,1.914381 5.6878148,3.3862759 0 0 0 -1.00662,1.92193 5.6878148,3.3862759 0 0 0 5.6877,3.386568 5.6878148,3.3862759 0 0 0 3.74329,-0.839811 5.6878148,3.3862759 0 0 0 3.73604,0.839811 5.6878148,3.3862759 0 0 0 3.7427,-0.839811 5.6878148,3.3862759 0 0 0 3.73604,0.839811 5.6878148,3.3862759 0 0 0 3.74268,-0.839449 5.6878148,3.3862759 0 0 0 3.73605,0.839449 5.6878148,3.3862759 0 0 0 5.6883,-3.386568 5.6878148,3.3862759 0 0 0 -1.00602,-1.92193 5.6878148,3.3862759 0 0 0 1.00602,-1.914381 5.6878148,3.3862759 0 0 0 -5.6883,-3.386207 5.6878148,3.3862759 0 0 0 -3.74087,0.838732 5.6878148,3.3862759 0 0 0 -3.73786,-0.838732 5.6878148,3.3862759 0 0 0 -3.73967,0.837654 5.6878148,3.3862759 0 0 0 -3.73907,-0.837654 5.6878148,3.3862759 0 0 0 -3.73665,0.836214 5.6878148,3.3862759 0 0 0 -3.74268,-0.836214 z" /><path
|
|
style="font-variation-settings:normal;fill:none;fill-opacity:1;stroke:#1b853a;stroke-width:0.265;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;marker-start:url(#Arrow3-7-8);stop-color:#000000"
|
|
d="m 147.11115,67.529165 v 7.150941"
|
|
id="path4133-6-9-7"
|
|
sodipodi:nodetypes="cc" /></g><g
|
|
id="g12545"
|
|
transform="translate(17.78657,24.076136)"><circle
|
|
style="fill:none;fill-opacity:1;stroke:#cc00a7;stroke-width:0.264999;stroke-linecap:round;stroke-dasharray:none;stroke-dashoffset:1.60059;stroke-opacity:1"
|
|
id="path12188"
|
|
cx="187.87453"
|
|
cy="57.622402"
|
|
r="2.3675005" /><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#cc00a7;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-3-8"
|
|
transform="translate(165.47749,8.6466651)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan91">1</tspan></text></g><g
|
|
id="g12545-6"
|
|
transform="translate(17.78657,41.4814)"><circle
|
|
style="fill:none;fill-opacity:1;stroke:#1b853a;stroke-width:0.264999;stroke-linecap:round;stroke-dasharray:none;stroke-dashoffset:1.60059;stroke-opacity:1"
|
|
id="path12188-8"
|
|
cx="187.87453"
|
|
cy="57.622402"
|
|
r="2.3675005" /><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#1b853a;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-3-8-8"
|
|
transform="translate(165.47749,8.6466651)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan92">2</tspan></text></g><g
|
|
id="g12545-1"
|
|
transform="translate(-39.04947,62.204496)"><circle
|
|
style="fill:none;fill-opacity:1;stroke:#cc00a7;stroke-width:0.264999;stroke-linecap:round;stroke-dasharray:none;stroke-dashoffset:1.60059;stroke-opacity:1"
|
|
id="path12188-4"
|
|
cx="187.87453"
|
|
cy="57.622402"
|
|
r="2.3675005" /><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#cc00a7;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-3-8-9"
|
|
transform="translate(165.47749,8.6466651)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan93">1</tspan></text></g><g
|
|
id="g12545-6-2"
|
|
transform="translate(-39.04947,79.609757)"><circle
|
|
style="fill:none;fill-opacity:1;stroke:#1b853a;stroke-width:0.264999;stroke-linecap:round;stroke-dasharray:none;stroke-dashoffset:1.60059;stroke-opacity:1"
|
|
id="path12188-8-0"
|
|
cx="187.87453"
|
|
cy="57.622402"
|
|
r="2.3675005" /><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#1b853a;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-3-8-8-6"
|
|
transform="translate(165.47749,8.6466651)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan94">2</tspan></text></g><g
|
|
style="clip-rule:evenodd;fill-rule:evenodd;stroke-width:1.76361;stroke-linejoin:round;stroke-miterlimit:1.41421"
|
|
id="g19314"
|
|
transform="matrix(0.15002369,0,0,0.15002369,15.876651,1.1367253)"><g
|
|
transform="matrix(0.598566,0,0,0.598566,-78.224807,-25.189982)"
|
|
id="g17"
|
|
inkscape:label="text"
|
|
style="stroke-width:1.76361">
|
|
<path
|
|
inkscape:connector-curvature="0"
|
|
id="path2"
|
|
style="fill:#c5247f;fill-opacity:1;fill-rule:nonzero;stroke-width:1.21952"
|
|
d="m 261.96386,122.95376 c 14.66099,-46.840913 58.42891,-80.869876 110.08329,-80.869876 51.65438,0 95.4223,34.028963 110.08399,80.869876 v 0 l 6.9e-4,0.003 c 0.37548,1.19974 0.7316,2.40777 1.06835,3.62341 16.36137,49.59512 84.91648,30.40625 84.91648,30.40625 l 45.29059,116.99198 -171.99733,66.58436 -29.07719,-75.10906 -0.1224,0.0456 -16.09514,-41.94031 c 1.22255,-0.46883 2.42575,-0.97223 3.60889,-1.50745 5.29959,-2.57926 9.91045,-5.43028 13.91695,-8.47699 10.92348,-8.63949 18.93855,-20.511 22.86,-33.89205 5.61698,-21.69207 -1.29516,-41.48876 -1.49086,-42.04196 -9.53704,-25.53814 -34.27098,-43.926962 -62.96302,-43.926962 -28.69203,0 -53.42598,18.388822 -62.96233,43.926962 -0.19569,0.55181 -7.10853,20.3492 -1.49085,42.04196 3.92144,13.38105 11.93582,25.25256 22.86,33.89205 4.00581,3.04671 8.61736,5.89773 13.91695,8.47699 1.18314,0.53522 2.38633,1.03862 3.60889,1.50745 l -0.0526,0.13692 c 0,0 -16.04328,41.80339 -16.04328,41.80339 l -0.12239,-0.0456 -29.07651,75.10906 L 130.68702,273.9784 175.9776,156.98642 c 0,0 68.55511,19.18887 84.91648,-30.40625 0.33676,-1.21564 0.69357,-2.42367 1.06905,-3.62341 z"
|
|
inkscape:label="emblem" />
|
|
<g
|
|
id="text5"
|
|
style="font-weight:bold;font-size:113.605px;font-family:'Open Sans', 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;-inkscape-font-specification:'Open Sans, Bold';stroke-width:1.93904"
|
|
inkscape:label="openflexure"
|
|
aria-label="openflexure"><path
|
|
d="m 677.59281,133.22017 q 0,9.20822 2.99544,13.92327 3.05092,4.71505 9.87387,4.71505 6.76749,0 9.70746,-4.65958 2.99545,-4.71505 2.99545,-13.97874 0,-9.20822 -2.99545,-13.81233 -2.99544,-4.60411 -9.8184,-4.60411 -6.76749,0 -9.76293,4.60411 -2.99544,4.54864 -2.99544,13.81233 z m 42.87923,0 q 0,15.14363 -7.98785,23.6862 -7.98786,8.54256 -22.24395,8.54256 -8.93086,0 -15.75382,-3.88298 -6.82296,-3.93846 -10.48406,-11.26065 -3.6611,-7.3222 -3.6611,-17.08513 0,-15.19911 7.93239,-23.63073 7.93238,-8.43162 22.29942,-8.43162 8.93086,0 15.75381,3.88298 6.82296,3.88299 10.48406,11.14971 3.6611,7.26673 3.6611,17.02966 z m 48.03805,32.22876 q -10.92783,0 -17.1406,-7.93238 h -0.88754 q 0.88754,7.76597 0.88754,8.98633 v 25.12846 h -16.91871 v -89.30863 h 13.75685 l 2.38526,8.04333 h 0.7766 q 5.93542,-9.20822 17.58437,-9.20822 10.9833,0 17.19607,8.48709 6.21277,8.48709 6.21277,23.57526 0,9.92934 -2.93997,17.25154 -2.8845,7.3222 -8.26521,11.14971 -5.3807,3.82751 -12.64743,3.82751 z m -4.99241,-50.75614 q -6.26824,0 -9.15274,3.88298 -2.88451,3.82752 -2.99545,12.70291 v 1.83055 q 0,9.98481 2.93997,14.31156 2.99545,4.32676 9.43011,4.32676 11.37159,0 11.37159,-18.74927 0,-9.15274 -2.82903,-13.70138 -2.77356,-4.60411 -8.76445,-4.60411 z m 68.50692,-1.49772 q -5.3807,0 -8.43162,3.43921 -3.05091,3.38374 -3.49468,9.65199 h 23.74167 q -0.11095,-6.26825 -3.2728,-9.65199 -3.16186,-3.43921 -8.54257,-3.43921 z m 2.38526,52.25386 q -14.97722,0 -23.40884,-8.26521 -8.43162,-8.2652 -8.43162,-23.40884 0,-15.5874 7.76597,-24.0745 7.82143,-8.54256 21.57829,-8.54256 13.14667,0 20.46887,7.48861 7.3222,7.48861 7.3222,20.69076 v 8.20973 H 819.71 q 0.27735,7.21126 4.27128,11.26065 3.99393,4.0494 11.20518,4.0494 5.60259,0 10.595,-1.16489 4.99241,-1.1649 10.42858,-3.71657 v 13.0912 q -4.43769,2.21885 -9.48557,3.2728 -5.04788,1.10942 -12.31461,1.10942 z m 96.29798,-1.10942 h -16.91871 v -36.22269 q 0,-6.71202 -2.38526,-10.04029 -2.38526,-3.38374 -7.59955,-3.38374 -7.10032,0 -10.26218,4.77052 -3.16185,4.71505 -3.16185,15.69835 v 29.17785 h -16.91872 v -62.0168 h 12.92479 l 2.27432,7.93238 h 0.94301 q 2.82903,-4.49316 7.76597,-6.76748 4.9924,-2.32979 11.31612,-2.32979 10.81688,0 16.41947,5.87995 5.60259,5.82447 5.60259,16.86324 z"
|
|
id="path3" /><path
|
|
style="font-weight:600;-inkscape-font-specification:'Open Sans, Semi-Bold'"
|
|
d="m 979.3561,112.86224 h -14.97722 v 51.47727 h -13.0912 v -51.47727 h -10.09576 v -6.10183 l 10.09576,-3.99393 v -3.993922 q 0,-10.872354 5.10335,-16.086646 5.10335,-5.269763 15.5874,-5.269763 6.87843,0 13.53497,2.274318 l -3.43921,9.873873 q -4.826,-1.553194 -9.20822,-1.553194 -4.4377,0 -6.49013,2.77356 -1.99696,2.718089 -1.99696,8.209737 v 3.993927 h 14.97722 z m 23.4643,51.47727 H 989.78468 V 78.026332 h 13.03572 z m 45.4864,1.10942 q -14.3116,0 -22.4104,-8.32068 -8.0433,-8.37615 -8.0433,-23.02054 0,-15.0327 7.4886,-23.63073 7.4886,-8.59804 20.5798,-8.59804 12.1482,0 19.1931,7.37767 7.0448,7.37767 7.0448,20.30246 v 7.04484 h -40.8823 q 0.2774,8.93086 4.826,13.75686 4.5487,4.77052 12.8139,4.77052 5.4361,0 10.0957,-0.99848 4.7151,-1.05395 10.0958,-3.43922 v 10.595 q -4.7705,2.27432 -9.652,3.21733 -4.8815,0.94301 -11.1497,0.94301 z m -2.3853,-53.69611 q -6.2128,0 -9.9848,3.93845 -3.7166,3.93846 -4.4377,11.48254 h 27.8466 q -0.111,-7.59955 -3.6611,-11.48254 -3.5502,-3.93845 -9.763,-3.93845 z m 52.4203,21.24546 -20.5798,-30.00991 h 14.8663 l 13.9787,21.46735 14.0897,-21.46735 h 14.7553 l -20.6352,30.00991 21.6892,31.34123 h -14.7553 l -15.1437,-22.96508 -15.0881,22.96508 h -14.7554 z m 92.1931,31.34123 -1.8305,-8.04332 h -0.6657 q -2.7181,4.27128 -7.766,6.71201 -4.9924,2.44073 -11.427,2.44073 -11.1497,0 -16.6414,-5.54712 -5.4916,-5.54712 -5.4916,-16.80777 v -40.10567 h 13.1466 v 37.83135 q 0,7.04484 2.8845,10.595 2.8845,3.49469 9.0418,3.49469 8.2098,0 12.0373,-4.88147 3.883,-4.93694 3.883,-16.47494 v -30.56463 h 13.0912 v 61.35114 z m 59.9644,-62.46057 q 3.9384,0 6.4901,0.55472 l -1.2758,12.14819 q -2.7736,-0.66566 -5.769,-0.66566 -7.8215,0 -12.7029,5.10335 -4.826,5.10335 -4.826,13.25762 v 32.06235 H 1219.38 v -61.35114 h 10.2067 l 1.7196,10.81688 h 0.6656 q 3.0509,-5.49165 7.9324,-8.70898 4.9369,-3.21733 10.595,-3.21733 z m 42.38,63.56999 q -14.3116,0 -22.4104,-8.32068 -8.0433,-8.37615 -8.0433,-23.02054 0,-15.0327 7.4886,-23.63073 7.4886,-8.59804 20.5798,-8.59804 12.1482,0 19.193,7.37767 7.0449,7.37767 7.0449,20.30246 v 7.04484 h -40.8823 q 0.2774,8.93086 4.826,13.75686 4.5486,4.77052 12.8138,4.77052 5.4362,0 10.0958,-0.99848 4.7151,-1.05395 10.0958,-3.43922 v 10.595 q -4.7706,2.27432 -9.652,3.21733 -4.8815,0.94301 -11.1497,0.94301 z m -2.3853,-53.69611 q -6.2128,0 -9.9848,3.93845 -3.7166,3.93846 -4.4377,11.48254 h 27.8465 q -0.1109,-7.59955 -3.6611,-11.48254 -3.5501,-3.93845 -9.7629,-3.93845 z"
|
|
id="path4" /></g>
|
|
<path
|
|
d="m 740.66355,277.94449 v -39.55096 q 0,-8.81992 -3.43921,-12.86932 -3.43922,-4.0494 -10.53953,-4.0494 -9.26369,0 -13.70138,5.10335 -4.4377,5.10335 -4.4377,16.03118 v 35.33515 h -5.60259 v -41.2151 q 0,-15.25458 -13.97874,-15.25458 -9.48557,0 -13.81233,5.54712 -4.32675,5.49165 -4.32675,17.63984 v 33.28272 h -5.49165 V 217.6473 h 4.54864 l 1.1649,8.26521 h 0.33282 q 2.49621,-4.49317 7.10031,-6.9339 4.60411,-2.4962 10.15123,-2.4962 14.2561,0 18.3055,10.70594 h 0.22188 q 2.93997,-5.15882 7.87691,-7.93238 4.99241,-2.77356 11.31612,-2.77356 9.87388,0 14.81081,5.26976 4.93694,5.26976 4.93694,16.7523 v 39.44002 z m 30.45369,0 h -5.49165 V 217.6473 h 5.49165 z M 764.84899,200.895 q 0,-5.32523 3.49469,-5.32523 1.7196,0 2.66261,1.38678 0.99849,1.38678 0.99849,3.93845 0,2.49621 -0.99849,3.93846 -0.94301,1.44225 -2.66261,1.44225 -3.49469,0 -3.49469,-5.38071 z m 50.53426,78.15891 q -12.92479,0 -20.24698,-8.15426 -7.3222,-8.15427 -7.3222,-22.74319 0,-14.97722 7.59955,-23.2979 7.59956,-8.37615 20.8017,-8.37615 7.82144,0 14.97722,2.71809 l -1.49772,4.88146 q -7.82144,-2.60715 -13.59044,-2.60715 -11.09424,0 -16.80777,6.87843 -5.71354,6.82296 -5.71354,19.69228 0,12.20366 5.71354,19.13756 5.71353,6.87843 15.9757,6.87843 8.20974,0 15.25458,-2.93998 v 5.10335 q -5.76901,2.82903 -15.14364,2.82903 z m 53.64064,-62.5715 q 3.82751,0 8.20974,0.77659 l -1.05396,5.26977 q -3.77204,-0.94301 -7.82143,-0.94301 -7.7105,0 -12.64744,6.5456 -4.93693,6.5456 -4.93693,16.53041 v 33.28272 h -5.49165 V 217.6473 h 4.65958 l 0.55471,10.87236 h 0.3883 q 3.71657,-6.65655 7.93238,-9.31916 4.21581,-2.71809 10.2067,-2.71809 z m 68.06315,31.23028 q 0,14.75534 -7.15578,23.07601 -7.15579,8.26521 -19.74775,8.26521 -7.93238,0 -13.97874,-3.82751 -6.04636,-3.82751 -9.26369,-10.9833 -3.21733,-7.15578 -3.21733,-16.53041 0,-14.75534 7.15579,-22.96508 7.15578,-8.2652 19.6368,-8.2652 12.42555,0 19.47039,8.37615 7.10031,8.32068 7.10031,22.85413 z m -47.59428,0 q 0,12.42555 5.43617,19.41492 5.49165,6.9339 15.47647,6.9339 9.98481,0 15.42099,-6.9339 5.49165,-6.98937 5.49165,-19.41492 0,-12.48102 -5.54712,-19.35945 -5.49165,-6.87843 -15.47647,-6.87843 -9.98481,0 -15.42099,6.87843 -5.3807,6.82296 -5.3807,19.35945 z m 101.67869,14.53345 q 0,8.0988 -6.1573,12.48102 -6.1573,4.32675 -17.47343,4.32675 -12.09272,0 -19.19303,-3.71657 v -5.93542 q 9.09728,4.54864 19.19303,4.54864 8.93087,0 13.53497,-2.93997 4.65958,-2.99545 4.65958,-7.93238 0,-4.54864 -3.71657,-7.65503 -3.66109,-3.10638 -12.09272,-6.10183 -9.0418,-3.2728 -12.7029,-5.60259 -3.6611,-2.38526 -5.54712,-5.32523 -1.83055,-2.99545 -1.83055,-7.26673 0,-6.76748 5.65806,-10.70594 5.71354,-3.93845 15.92024,-3.93845 9.76293,0 18.52738,3.6611 l -2.05244,4.9924 q -8.87539,-3.6611 -16.47494,-3.6611 -7.37767,0 -11.70442,2.44074 -4.32676,2.44073 -4.32676,6.76748 0,4.71505 3.32827,7.54408 3.38375,2.82904 13.14668,6.32372 8.15426,2.93997 11.87083,5.32523 3.71657,2.32979 5.54712,5.32524 1.88602,2.99544 1.88602,7.04484 z m 39.60645,16.80777 q -12.9248,0 -20.247,-8.15426 -7.3222,-8.15427 -7.3222,-22.74319 0,-14.97722 7.5996,-23.2979 7.5995,-8.37615 20.8017,-8.37615 7.8214,0 14.9772,2.71809 l -1.4977,4.88146 q -7.8215,-2.60715 -13.5905,-2.60715 -11.0942,0 -16.8078,6.87843 -5.7135,6.82296 -5.7135,19.69228 0,12.20366 5.7135,19.13756 5.7136,6.87843 15.9757,6.87843 8.2098,0 15.2546,-2.93998 v 5.10335 q -5.769,2.82903 -15.1436,2.82903 z m 79.7676,-31.34122 q 0,14.75534 -7.1558,23.07601 -7.1558,8.26521 -19.7478,8.26521 -7.9323,0 -13.9787,-3.82751 -6.0464,-3.82751 -9.2637,-10.9833 -3.2173,-7.15578 -3.2173,-16.53041 0,-14.75534 7.1558,-22.96508 7.1558,-8.2652 19.6368,-8.2652 12.4255,0 19.4704,8.37615 7.1003,8.32068 7.1003,22.85413 z m -47.5943,0 q 0,12.42555 5.4362,19.41492 5.4916,6.9339 15.4764,6.9339 9.9848,0 15.421,-6.9339 5.4917,-6.98937 5.4917,-19.41492 0,-12.48102 -5.5471,-19.35945 -5.4917,-6.87843 -15.4765,-6.87843 -9.9848,0 -15.421,6.87843 -5.3807,6.82296 -5.3807,19.35945 z m 90.0852,31.34122 q -13.9233,0 -20.3024,-10.42858 h -0.3883 l 0.1664,4.65958 q 0.2219,4.10487 0.2219,8.98633 v 22.96508 h -5.4917 V 217.6473 h 4.6596 l 1.0539,8.59804 h 0.3329 q 6.2127,-9.76293 19.8586,-9.76293 12.2037,0 18.5829,8.04332 6.4347,7.98785 6.4347,23.2979 0,14.86628 -6.7675,23.07602 -6.712,8.15426 -18.361,8.15426 z m -0.1109,-4.88146 q 9.2637,0 14.3115,-6.87843 5.1034,-6.87843 5.1034,-19.2485 0,-26.57071 -19.1931,-26.57071 -10.5395,0 -15.4764,5.82448 -4.9369,5.769 -4.9369,18.8602 v 1.77508 q 0,14.14516 4.715,20.19152 4.7705,6.04636 15.4765,6.04636 z m 66.288,4.88146 q -13.1466,0 -20.5243,-8.09879 -7.3222,-8.0988 -7.3222,-22.68772 0,-14.42251 7.1003,-23.07602 7.1003,-8.70897 19.1376,-8.70897 10.6504,0 16.8077,7.43314 6.1574,7.43314 6.1574,20.19151 v 4.4377 h -43.434 q 0.1109,12.42554 5.769,18.97114 5.7135,6.54561 16.3085,6.54561 5.1589,0 9.0418,-0.72113 3.9385,-0.72113 9.9294,-3.10639 v 4.99241 q -5.1034,2.21885 -9.4301,2.99544 -4.3268,0.83207 -9.5411,0.83207 z m -1.6086,-57.69004 q -8.709,0 -13.9788,5.76901 -5.2697,5.71353 -6.1573,16.53041 h 37.2767 q 0,-10.48405 -4.5487,-16.364 -4.5486,-5.93542 -12.5919,-5.93542 z"
|
|
id="text13"
|
|
style="font-weight:300;font-size:113.605px;font-family:'Open Sans', 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;-inkscape-font-specification:'Open Sans, Light';stroke-width:1.93904"
|
|
inkscape:label="microscope"
|
|
aria-label="microscope" />
|
|
|
|
</g></g><text
|
|
xml:space="preserve"
|
|
style="font-weight:600;font-size:4.9389px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans Semi-Bold';text-align:center;letter-spacing:0px;word-spacing:0px;text-anchor:middle;stroke-width:0.264583"
|
|
x="140.47612"
|
|
y="184.50215"
|
|
id="text3"><tspan
|
|
sodipodi:role="line"
|
|
id="tspan3"
|
|
style="stroke-width:0.264583"
|
|
x="140.47612"
|
|
y="184.50215" /></text><g
|
|
id="g11070-4"
|
|
transform="translate(-134.09892,42.596973)"><rect
|
|
style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.5;stroke-linecap:round;stroke-dasharray:none"
|
|
id="rect234-7-6-8"
|
|
width="253.35805"
|
|
height="136.57356"
|
|
x="227.42459"
|
|
y="-8.3172293"
|
|
ry="2.8414457" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-7"
|
|
transform="translate(75.353446,-10.87906)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan95">Raspbian OpenFlexure</tspan></text><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:55.6129;display:inline;fill:#7e7e7e;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-2-5"
|
|
transform="translate(200.30729,12.926222)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan96">Things, are WC3 Web Of Things compliant </tspan><tspan
|
|
x="21.304592"
|
|
y="53.762691"
|
|
id="tspan97">Python Objects used to add functionality </tspan><tspan
|
|
x="21.304592"
|
|
y="57.290466"
|
|
id="tspan98">(such as hardware control) with HTTP API </tspan><tspan
|
|
x="21.304592"
|
|
y="60.818241"
|
|
id="tspan99">endpoints</tspan></text><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.6947;display:inline;fill:#7e7e7e;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-2-5-8"
|
|
transform="translate(263.54648,13.112113)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan100">The server makes use of a number of </tspan><tspan
|
|
x="21.304592"
|
|
y="53.762691"
|
|
id="tspan101">other python libraries. Some are </tspan><tspan
|
|
x="21.304592"
|
|
y="57.290466"
|
|
id="tspan102">standard libraries such as NumPy, Pillow, </tspan><tspan
|
|
x="21.304592"
|
|
y="60.818241"
|
|
id="tspan103">SciPy, etc. Others are specific to </tspan><tspan
|
|
x="21.304592"
|
|
y="64.346016"
|
|
id="tspan104">OpenFlexure</tspan></text><text
|
|
xml:space="preserve"
|
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82223px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;stroke-width:0.264583"
|
|
x="97.004364"
|
|
y="46.05175"
|
|
id="text6"><tspan
|
|
sodipodi:role="line"
|
|
id="tspan5"
|
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;text-anchor:start;stroke-width:0.264583"
|
|
x="97.004364"
|
|
y="46.05175">A customised Raspberry Pi operating system, for the embedded Raspberry Pi in the Microscope</tspan></text><a
|
|
id="a28"
|
|
xlink:href="https://gitlab.com/openflexure/raspberry-pi-os-image-customiser"><g
|
|
id="g2-1-0"
|
|
transform="translate(34.237517,-141.38259)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-2-6"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="102.67485"
|
|
y="177.12749"
|
|
ry="1.3326334" /><g
|
|
id="LOGO-8-92"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.38117,175.66234)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76-7-54"
|
|
style="fill:#e24329" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78-9-05"
|
|
style="fill:#fc6d26" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80-2-9"
|
|
style="fill:#fca326" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82-0-4"
|
|
style="fill:#fc6d26" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-3-9"
|
|
transform="matrix(1.9854168,0,0,1.9854168,68.131328,82.87189)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan105">3</tspan></text></g></a><rect
|
|
style="fill:none;fill-opacity:1;stroke:#7e7e7e;stroke-width:0.5;stroke-linecap:round;stroke-dasharray:1, 2.00001;stroke-dashoffset:0;stroke-opacity:1"
|
|
id="rect234-7-6-6-0"
|
|
width="58.063263"
|
|
height="111.95364"
|
|
x="281.98734"
|
|
y="54.076138"
|
|
ry="0" /><g
|
|
id="g6"
|
|
transform="translate(-2.553195,-4.0983888)"><rect
|
|
style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.500003;stroke-linecap:round;stroke-dasharray:none"
|
|
id="rect234-7-7-2-3"
|
|
width="52.371429"
|
|
height="14.909955"
|
|
x="287.67917"
|
|
y="83.542847"
|
|
ry="1.1470081" /><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:37.2843;display:inline;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-35-0-0-1"
|
|
transform="translate(267.96654,36.842553)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan106">OpenFlexure Stitching</tspan></text><a
|
|
id="a30"
|
|
xlink:href="https://gitlab.com/openflexure/openflexure-stitching"><g
|
|
id="g2-7-3"
|
|
transform="translate(223.88058,-92.131311)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-6-9"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="102.67485"
|
|
y="177.12749"
|
|
ry="1.3326334" /><g
|
|
id="LOGO-54-4"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.38117,175.66234)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76-8-0"
|
|
style="fill:#e24329" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78-1-3"
|
|
style="fill:#fc6d26" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80-28-9"
|
|
style="fill:#fca326" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82-93-1"
|
|
style="fill:#fc6d26" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-8-6"
|
|
transform="matrix(1.9854168,0,0,1.9854168,68.131328,82.87189)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan107">5</tspan></text></g></a><text
|
|
xml:space="preserve"
|
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82223px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:37.1719;display:inline;stroke-width:0.264583"
|
|
x="289.38358"
|
|
y="90.774696"
|
|
id="text6-3"
|
|
transform="translate(0,0.52916667)"><tspan
|
|
x="289.38358"
|
|
y="90.774696"
|
|
id="tspan108">For stitching images </tspan><tspan
|
|
x="289.38358"
|
|
y="94.302484"
|
|
id="tspan109">together</tspan></text></g><g
|
|
id="g6-7"
|
|
transform="translate(-2.553195,49.676856)"><rect
|
|
style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.500003;stroke-linecap:round;stroke-dasharray:none"
|
|
id="rect234-7-7-2-3-5"
|
|
width="52.371429"
|
|
height="30.97831"
|
|
x="287.67917"
|
|
y="83.542847"
|
|
ry="3.2470024" /><text
|
|
xml:space="preserve"
|
|
style="font-style:italic;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82223px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans Italic';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:49.1001;display:inline;fill:#ff2222;fill-opacity:1;stroke-width:0.264583"
|
|
x="289.38358"
|
|
y="90.774696"
|
|
id="text6-3-0"
|
|
transform="translate(0.4012199,13.788378)"><tspan
|
|
x="289.38358"
|
|
y="90.774696"
|
|
id="tspan110">Plan to remove this in favour of </tspan><tspan
|
|
x="289.38358"
|
|
y="94.302484"
|
|
id="tspan111">bringing these methods into the </tspan><tspan
|
|
x="289.38358"
|
|
y="97.83027"
|
|
id="tspan112">microscope where they can be tested.</tspan></text><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:37.2843;display:inline;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-35-0-0-1-6"
|
|
transform="translate(267.96654,36.842553)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan113">Camera stage </tspan><tspan
|
|
x="21.304592"
|
|
y="54.64463"
|
|
id="tspan114">mapping</tspan></text><a
|
|
id="a33"
|
|
xlink:href="https://gitlab.com/openflexure/microscope-extensions/camera-stage-mapping"><g
|
|
id="g2-7-3-7"
|
|
transform="translate(223.88058,-92.131311)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-6-9-6"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="102.67485"
|
|
y="177.12749"
|
|
ry="1.3326334" /><g
|
|
id="LOGO-54-4-2"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.38117,175.66234)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76-8-0-8"
|
|
style="fill:#e24329" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78-1-3-2"
|
|
style="fill:#fc6d26" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80-28-9-9"
|
|
style="fill:#fca326" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82-93-1-9"
|
|
style="fill:#fc6d26" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-8-6-0"
|
|
transform="matrix(1.9854168,0,0,1.9854168,68.131328,82.87189)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan115">8</tspan></text></g></a><text
|
|
xml:space="preserve"
|
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82223px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:50.667;display:inline;stroke-width:0.264583"
|
|
x="289.38358"
|
|
y="90.774696"
|
|
id="text6-3-7"
|
|
transform="translate(0,6.3500003)"><tspan
|
|
x="289.38358"
|
|
y="90.774696"
|
|
id="tspan116">For analysing images to calibrate </tspan><tspan
|
|
x="289.38358"
|
|
y="94.302484"
|
|
id="tspan117">stage movement</tspan></text></g><g
|
|
id="g6-7-9"
|
|
transform="translate(-2.553195,31.860321)"><rect
|
|
style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.500003;stroke-linecap:round;stroke-dasharray:none"
|
|
id="rect234-7-7-2-3-5-9"
|
|
width="52.371429"
|
|
height="14.584316"
|
|
x="287.67917"
|
|
y="83.542847"
|
|
ry="2.1803718" /><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:37.2843;display:inline;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-35-0-0-1-6-1"
|
|
transform="translate(267.96654,36.842553)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan118">Micat</tspan></text><a
|
|
id="a32"
|
|
xlink:href="https://gitlab.com/openflexure/micat"><g
|
|
id="g2-7-3-7-1"
|
|
transform="translate(223.88058,-92.131311)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-6-9-6-0"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="102.67485"
|
|
y="177.12749"
|
|
ry="1.3326334" /><g
|
|
id="LOGO-54-4-2-0"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.38117,175.66234)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76-8-0-8-7"
|
|
style="fill:#e24329" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78-1-3-2-5"
|
|
style="fill:#fc6d26" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80-28-9-9-8"
|
|
style="fill:#fca326" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82-93-1-9-7"
|
|
style="fill:#fc6d26" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-8-6-0-4"
|
|
transform="matrix(1.9854168,0,0,1.9854168,68.131328,82.87189)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan119">7
|
|
</tspan></text></g></a><text
|
|
xml:space="preserve"
|
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82223px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:37.3055;display:inline;stroke-width:0.264583"
|
|
x="289.38358"
|
|
y="90.774696"
|
|
id="text6-3-7-0"><tspan
|
|
x="289.38358"
|
|
y="90.774696"
|
|
id="tspan120">For analysing images for </tspan><tspan
|
|
x="289.38358"
|
|
y="94.302484"
|
|
id="tspan121">optical system calibration</tspan></text></g><g
|
|
id="g14"
|
|
transform="translate(3.8173973)"><a
|
|
id="a21"
|
|
xlink:href="https://github.com/labthings/labthings-fastapi"><g
|
|
id="g10"
|
|
transform="translate(193.30842,-6.4847987)"><g
|
|
id="g3"
|
|
transform="translate(-61.416974,24.489389)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-1"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="97.488258"
|
|
y="190.33562"
|
|
ry="1.3326334" /><g
|
|
style="fill:none"
|
|
id="g1"
|
|
transform="matrix(0.00480606,0,0,0.00480606,99.075735,191.41727)"><path
|
|
fill-rule="evenodd"
|
|
clip-rule="evenodd"
|
|
d="M 8,0 C 3.58,0 0,3.58 0,8 c 0,3.54 2.29,6.53 5.47,7.59 0.4,0.07 0.55,-0.17 0.55,-0.38 0,-0.19 -0.01,-0.82 -0.01,-1.49 C 4,14.09 3.48,13.23 3.32,12.78 3.23,12.55 2.84,11.84 2.5,11.65 2.22,11.5 1.82,11.13 2.49,11.12 3.12,11.11 3.57,11.7 3.72,11.94 4.44,13.15 5.59,12.81 6.05,12.6 6.12,12.08 6.33,11.73 6.56,11.53 4.78,11.33 2.92,10.64 2.92,7.58 2.92,6.71 3.23,5.99 3.74,5.43 3.66,5.23 3.38,4.41 3.82,3.31 c 0,0 0.67,-0.21 2.2,0.82 0.64,-0.18 1.32,-0.27 2,-0.27 0.68,0 1.36,0.09 2,0.27 1.53,-1.04 2.2,-0.82 2.2,-0.82 0.44,1.1 0.16,1.92 0.08,2.12 0.51,0.56 0.82,1.27 0.82,2.15 0,3.07 -1.87,3.75 -3.65,3.95 0.29,0.25 0.54,0.73 0.54,1.48 0,1.07 -0.01,1.93 -0.01,2.2 0,0.21 0.15,0.46 0.55,0.38 C 13.71,14.53 16,11.53 16,8 16,3.58 12.42,0 8,0 Z"
|
|
transform="scale(64)"
|
|
fill="#1b1f23"
|
|
id="path1" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-2"
|
|
transform="matrix(1.9854168,0,0,1.9854168,62.94471,96.08002)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan122">1</tspan></text></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:44.3218;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-4-1"
|
|
transform="translate(28.160238,167.04096)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan123">github.com/labthings/labthings-</tspan><tspan
|
|
x="21.304592"
|
|
y="53.762691"
|
|
id="tspan124">fastapi</tspan></text></g></a><a
|
|
id="a15"
|
|
xlink:href="https://gitlab.com/openflexure/openflexure-microscope-server"><g
|
|
id="g7"
|
|
transform="translate(-9.5250005,1.5875)"><g
|
|
id="g2"
|
|
transform="translate(0,4.7625002)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="102.67485"
|
|
y="177.12749"
|
|
ry="1.3326334" /><g
|
|
id="LOGO"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.38117,175.66234)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3"
|
|
transform="matrix(1.9854168,0,0,1.9854168,68.131328,82.87189)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan125">1</tspan></text></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:44.3218;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-4-1-6"
|
|
transform="translate(94.763804,134.11353)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan126">gitlab.com/openflexure/</tspan><tspan
|
|
x="21.304592"
|
|
y="53.762691"
|
|
id="tspan127">openflexure-microscope-server</tspan></text></g></a><a
|
|
id="a13"
|
|
xlink:href="https://gitlab.com/openflexure/openflexure-connect"
|
|
target=""><g
|
|
id="g7-2"
|
|
transform="translate(54.099477,1.8718434)"><g
|
|
id="g2-2"
|
|
transform="translate(0,4.7625002)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-83"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="102.67485"
|
|
y="177.12749"
|
|
ry="1.3326334" /><g
|
|
id="LOGO-0"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.38117,175.66234)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76-5"
|
|
style="fill:#e24329" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78-52"
|
|
style="fill:#fc6d26" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80-90"
|
|
style="fill:#fca326" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82-2"
|
|
style="fill:#fc6d26" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-80"
|
|
transform="matrix(1.9854168,0,0,1.9854168,68.131328,82.87189)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan128">2</tspan></text></g><a
|
|
id="a12"
|
|
xlink:href=""><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:44.3218;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-4-1-6-0"
|
|
transform="translate(94.763804,134.11353)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan129">gitlab.com/openflexure/</tspan><tspan
|
|
x="21.304592"
|
|
y="53.762691"
|
|
id="tspan130">openflexure-connect</tspan></text></a></g></a><a
|
|
id="a14"
|
|
xlink:href="https://gitlab.com/openflexure/raspberry-pi-os-image-customiser"><g
|
|
id="g7-2-6"
|
|
transform="translate(126.70485,1.8718434)"><g
|
|
id="g2-2-2"
|
|
transform="translate(0,4.7625002)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-83-3"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="102.67485"
|
|
y="177.12749"
|
|
ry="1.3326334" /><g
|
|
id="LOGO-0-5"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.38117,175.66234)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76-5-4"
|
|
style="fill:#e24329" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78-52-4"
|
|
style="fill:#fc6d26" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80-90-9"
|
|
style="fill:#fca326" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82-2-9"
|
|
style="fill:#fc6d26" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-80-6"
|
|
transform="matrix(1.9854168,0,0,1.9854168,68.131328,82.87189)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan131">3</tspan></text></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:47.8765;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-4-1-6-0-0"
|
|
transform="translate(94.763804,134.11353)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan132">gitlab.com/openflexure/raspberry-</tspan><tspan
|
|
x="21.304592"
|
|
y="53.762691"
|
|
id="tspan133">pi-os-image-customiser</tspan></text></g></a><a
|
|
id="a16"
|
|
xlink:href="https://gitlab.com/openflexure/openflexure-microscope-cli"><g
|
|
id="g7-2-5"
|
|
transform="translate(-9.5250005,14.018861)"><g
|
|
id="g2-2-1"
|
|
transform="translate(0,4.7625002)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-83-9"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="102.67485"
|
|
y="177.12749"
|
|
ry="1.3326334" /><g
|
|
id="LOGO-0-7"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.38117,175.66234)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76-5-43"
|
|
style="fill:#e24329" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78-52-1"
|
|
style="fill:#fc6d26" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80-90-4"
|
|
style="fill:#fca326" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82-2-6"
|
|
style="fill:#fc6d26" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-80-4"
|
|
transform="matrix(1.9854168,0,0,1.9854168,68.131328,82.87189)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan134">4</tspan></text></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:44.3218;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-4-1-6-0-4"
|
|
transform="translate(94.763804,134.11353)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan135">gitlab.com/openflexure/</tspan><tspan
|
|
x="21.304592"
|
|
y="53.762691"
|
|
id="tspan136">openflexure-microscope-cli</tspan></text></g></a><a
|
|
id="a19"
|
|
xlink:href="https://gitlab.com/bath_open_instrumentation_group/pysangaboard"><g
|
|
id="g7-2-8"
|
|
transform="translate(126.70485,14.018861)"><g
|
|
id="g2-2-9"
|
|
transform="translate(0,4.7625002)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-83-33"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="102.67485"
|
|
y="177.12749"
|
|
ry="1.3326334" /><g
|
|
id="LOGO-0-0"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.38117,175.66234)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76-5-6"
|
|
style="fill:#e24329" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78-52-8"
|
|
style="fill:#fc6d26" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80-90-7"
|
|
style="fill:#fca326" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82-2-90"
|
|
style="fill:#fc6d26" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-80-37"
|
|
transform="matrix(1.9854168,0,0,1.9854168,68.131328,82.87189)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan137">6</tspan></text></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:63.1072;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-4-1-6-0-6"
|
|
transform="translate(94.763804,134.11353)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan138">gitlab.com/bath_open_instrumentation_group/</tspan><tspan
|
|
x="21.304592"
|
|
y="53.762691"
|
|
id="tspan139">pysangaboard</tspan></text></g></a><a
|
|
id="a17"
|
|
xlink:href="https://gitlab.com/openflexure/micat"><g
|
|
id="g7-2-59"
|
|
transform="translate(-9.5250005,26.45022)"><g
|
|
id="g2-2-3"
|
|
transform="translate(0,4.7625002)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-83-2"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="102.67485"
|
|
y="177.12749"
|
|
ry="1.3326334" /><g
|
|
id="LOGO-0-57"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.38117,175.66234)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76-5-08"
|
|
style="fill:#e24329" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78-52-19"
|
|
style="fill:#fc6d26" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80-90-97"
|
|
style="fill:#fca326" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82-2-8"
|
|
style="fill:#fc6d26" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-80-5"
|
|
transform="matrix(1.9854168,0,0,1.9854168,68.131328,82.87189)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan140">7
|
|
</tspan></text></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:62.75;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-4-1-6-0-9"
|
|
transform="translate(94.763804,135.70104)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan141">gitlab.com/openflexure/micat</tspan></text></g></a><a
|
|
id="a18"
|
|
xlink:href="https://gitlab.com/openflexure/openflexure-stitching"><g
|
|
id="g7-2-58"
|
|
transform="translate(54.099477,14.018861)"><g
|
|
id="g2-2-7"
|
|
transform="translate(0,4.7625002)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-83-87"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="102.67485"
|
|
y="177.12749"
|
|
ry="1.3326334" /><g
|
|
id="LOGO-0-9"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.38117,175.66234)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76-5-60"
|
|
style="fill:#e24329" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78-52-41"
|
|
style="fill:#fc6d26" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80-90-0"
|
|
style="fill:#fca326" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82-2-4"
|
|
style="fill:#fc6d26" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-80-0"
|
|
transform="matrix(1.9854168,0,0,1.9854168,68.131328,82.87189)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan142">5</tspan></text></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:44.3218;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-4-1-6-0-2"
|
|
transform="translate(94.763804,134.11353)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan143">gitlab.com/openflexure/</tspan><tspan
|
|
x="21.304592"
|
|
y="53.762691"
|
|
id="tspan144">openflexure-stitching</tspan></text></g></a><a
|
|
id="a20"
|
|
xlink:href="https://gitlab.com/openflexure/microscope-extensions/camera-stage-mapping"><g
|
|
id="g7-2-3"
|
|
transform="translate(54.099477,26.45022)"><g
|
|
id="g2-2-92"
|
|
transform="translate(0,4.7625002)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-83-5"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="102.67485"
|
|
y="177.12749"
|
|
ry="1.3326334" /><g
|
|
id="LOGO-0-83"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.38117,175.66234)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76-5-0"
|
|
style="fill:#e24329" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78-52-17"
|
|
style="fill:#fc6d26" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80-90-89"
|
|
style="fill:#fca326" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82-2-1"
|
|
style="fill:#fc6d26" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-80-49"
|
|
transform="matrix(1.9854168,0,0,1.9854168,68.131328,82.87189)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan145">8</tspan></text></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:48.3874;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-4-1-6-0-7"
|
|
transform="translate(94.763804,134.11353)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan146">gitlab.com/openflexure/microscope-</tspan><tspan
|
|
x="21.304592"
|
|
y="53.762691"
|
|
id="tspan147">extensions/camera-stage-mapping</tspan></text></g></a><g
|
|
id="g3-6"
|
|
transform="translate(38.119409,50.311629)"><rect
|
|
style="fill:none;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke"
|
|
id="rect1-1-4"
|
|
width="218.64067"
|
|
height="42.239395"
|
|
x="51.279865"
|
|
y="125.8181"
|
|
ry="1.3326334" /><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52778px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:59.476;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-4-1-6-4"
|
|
transform="translate(33.766534,79.79883)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan148">Repository URLs</tspan></text></g></g><g
|
|
id="g5"
|
|
transform="translate(0,-49.101066)"><rect
|
|
style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.500003;stroke-linecap:round;stroke-dasharray:none"
|
|
id="rect234-7-7-2-3-5-9-3"
|
|
width="52.371429"
|
|
height="14.584316"
|
|
x="285.62866"
|
|
y="146.6877"
|
|
ry="2.1803718" /><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:33.3205;display:inline;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-35-0-0"
|
|
transform="translate(265.96652,100.84995)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan149">PySangaboard</tspan></text><a
|
|
id="a31"
|
|
xlink:href="https://gitlab.com/bath_open_instrumentation_group/pysangaboard"><g
|
|
id="g2-7"
|
|
transform="translate(221.32739,-28.635658)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-6"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="102.67485"
|
|
y="177.12749"
|
|
ry="1.3326334" /><g
|
|
id="LOGO-54"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.38117,175.66234)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76-8"
|
|
style="fill:#e24329" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78-1"
|
|
style="fill:#fc6d26" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80-28"
|
|
style="fill:#fca326" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82-93"
|
|
style="fill:#fc6d26" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-8"
|
|
transform="matrix(1.9854168,0,0,1.9854168,68.131328,82.87189)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan150">6</tspan></text></g></a><text
|
|
xml:space="preserve"
|
|
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82223px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:37.3055;display:inline;stroke-width:0.264583"
|
|
x="289.38358"
|
|
y="90.774696"
|
|
id="text6-3-7-0-9"
|
|
transform="translate(-1.7406986,64.538728)"><tspan
|
|
x="289.38358"
|
|
y="90.774696"
|
|
id="tspan151">Motor control</tspan></text></g><g
|
|
id="g13166-3-9"
|
|
transform="translate(88.879776,41.640742)"><rect
|
|
style="fill:none;fill-opacity:1;stroke:#000000;stroke-width:0.5;stroke-linecap:round;stroke-dasharray:none"
|
|
id="rect234-7-5-6-5"
|
|
width="45.292286"
|
|
height="54.527985"
|
|
x="8.8345165"
|
|
y="52.215397"
|
|
ry="3.7866247" /><text
|
|
xml:space="preserve"
|
|
style="font-style:italic;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82223px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans Italic';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:41.1848;display:inline;fill:#ff2222;fill-opacity:1;stroke-width:0.264583"
|
|
x="289.38358"
|
|
y="90.774696"
|
|
id="text6-3-0-6"
|
|
transform="translate(-278.87673,8.1433512)"><tspan
|
|
x="289.38358"
|
|
y="90.774696"
|
|
id="tspan152">Plan to move these scripts into </tspan><tspan
|
|
x="289.38358"
|
|
y="94.302484"
|
|
id="tspan153">the OS repo.</tspan></text><text
|
|
xml:space="preserve"
|
|
style="font-size:3.52777px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:44.8976;display:inline;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-7-0"
|
|
transform="translate(-10.744418,6.0580183)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan154">OpenFlexure Microscope </tspan><tspan
|
|
x="21.304592"
|
|
y="54.64463"
|
|
id="tspan155">CLI
|
|
</tspan></text><a
|
|
id="a29"
|
|
xlink:href="https://gitlab.com/openflexure/openflexure-microscope-cli"><g
|
|
id="g2-10-1"
|
|
transform="translate(-62.208149,-119.73772)"><rect
|
|
style="fill:#ffffff;stroke:#065bf9;stroke-width:0.282001;stroke-linecap:round;stroke-linejoin:round;stroke-opacity:1;paint-order:fill markers stroke;fill-opacity:1"
|
|
id="rect1-9-7"
|
|
width="11.907674"
|
|
height="6.9632993"
|
|
x="102.67485"
|
|
y="177.12749"
|
|
ry="1.3326334" /><g
|
|
id="LOGO-6-5"
|
|
transform="matrix(0.02603441,0,0,0.02603441,101.38117,175.66234)"><path
|
|
class="cls-1"
|
|
d="m 282.83,170.73 -0.27,-0.69 -26.14,-68.22 a 6.81,6.81 0 0 0 -2.69,-3.24 7,7 0 0 0 -8,0.43 7,7 0 0 0 -2.32,3.52 l -17.65,54 h -71.47 l -17.65,-54 a 6.86,6.86 0 0 0 -2.32,-3.53 7,7 0 0 0 -8,-0.43 6.87,6.87 0 0 0 -2.69,3.24 L 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.08,-56.04 z"
|
|
id="path76-1-9"
|
|
style="fill:#e24329" /><path
|
|
class="cls-2"
|
|
d="m 282.83,170.73 -0.27,-0.69 a 88.3,88.3 0 0 0 -35.15,15.8 L 190,229.25 c 19.55,14.79 36.57,27.64 36.57,27.64 l 40.06,-30 0.1,-0.08 a 48.56,48.56 0 0 0 16.1,-56.08 z"
|
|
id="path78-5-7"
|
|
style="fill:#fc6d26" /><path
|
|
class="cls-3"
|
|
d="m 153.43,256.89 19.7,14.91 12,9.06 a 8.07,8.07 0 0 0 9.76,0 l 12,-9.06 19.7,-14.91 c 0,0 -17.04,-12.89 -36.59,-27.64 -19.55,14.75 -36.57,27.64 -36.57,27.64 z"
|
|
id="path80-9-7"
|
|
style="fill:#fca326" /><path
|
|
class="cls-2"
|
|
d="M 132.58,185.84 A 88.19,88.19 0 0 0 97.44,170 l -0.26,0.69 a 48.54,48.54 0 0 0 16.1,56.1 l 0.09,0.07 0.24,0.17 39.82,29.82 c 0,0 17,-12.85 36.57,-27.64 z"
|
|
id="path82-4-6"
|
|
style="fill:#fc6d26" /></g><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:45.8948;display:inline;fill:#065bf9;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-6-7-9-7-3-0-3"
|
|
transform="matrix(1.9854168,0,0,1.9854168,68.131328,82.87189)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan156">4</tspan></text></g></a><g
|
|
id="g17702"
|
|
transform="translate(-6.6463931,6.2925213)"><path
|
|
id="rect16151"
|
|
style="fill:#181818;stroke-width:0.264999;stroke-linecap:round;stroke-dashoffset:6.04949"
|
|
d="m 16.641098,63.224724 h 18.234776 v 5.046995 H 16.641098 Z"
|
|
sodipodi:nodetypes="ccccc" /><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#ffffff;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-3-2"
|
|
transform="translate(-3.6810273,16.263405)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan157">$ ofm start</tspan></text></g><g
|
|
id="g17702-2"
|
|
transform="translate(14.976446,6.2925213)"><path
|
|
id="rect16151-6"
|
|
style="fill:#181818;stroke-width:0.264999;stroke-linecap:round;stroke-dashoffset:6.04949"
|
|
d="m 16.641098,63.224724 h 18.234776 v 5.046995 H 16.641098 Z"
|
|
sodipodi:nodetypes="ccccc" /><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#ffffff;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-3-2-1"
|
|
transform="translate(-3.6810273,16.263405)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan158">$ ofm stop</tspan></text></g><g
|
|
id="g17702-0"
|
|
transform="translate(-6.6463931,13.255809)"><path
|
|
id="rect16151-61"
|
|
style="fill:#181818;stroke-width:0.264999;stroke-linecap:round;stroke-dashoffset:6.04949"
|
|
d="m 16.641098,63.224724 h 18.234776 v 5.046995 H 16.641098 Z"
|
|
sodipodi:nodetypes="ccccc" /><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#ffffff;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-3-2-5"
|
|
transform="translate(-3.6810273,16.263405)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan159">$ ofm status</tspan></text></g><g
|
|
id="g17702-0-0"
|
|
transform="translate(-6.6463931,27.187449)"><path
|
|
id="rect16151-61-9"
|
|
style="fill:#181818;stroke-width:0.264999;stroke-linecap:round;stroke-dashoffset:6.04949"
|
|
d="m 16.641098,63.224724 h 22 v 5.046995 h -22 z"
|
|
sodipodi:nodetypes="ccccc" /><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#ffffff;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-3-2-5-1"
|
|
transform="translate(-3.6810273,16.263405)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan160">$ ofm activate</tspan></text></g><g
|
|
id="g17702-9"
|
|
transform="translate(14.976446,13.255809)"><path
|
|
id="rect16151-4"
|
|
style="fill:#181818;stroke-width:0.264999;stroke-linecap:round;stroke-dashoffset:6.04949"
|
|
d="m 16.641098,63.224724 h 18.234776 v 5.046995 H 16.641098 Z"
|
|
sodipodi:nodetypes="ccccc" /><text
|
|
xml:space="preserve"
|
|
style="font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:53.4457;display:inline;fill:#ffffff;fill-opacity:1;stroke-width:0.264583"
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="text844-2-1-3-2-9"
|
|
transform="translate(-3.6810273,16.263405)"><tspan
|
|
x="21.304592"
|
|
y="50.234917"
|
|
id="tspan161">$ ofm log</tspan></text></g><text
|
|
xml:space="preserve"
|
|
style="font-style:italic;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans Italic';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:35.3031;display:inline;stroke-width:0.264583"
|
|
x="15.056169"
|
|
y="80.215981"
|
|
id="text844-3-7-7"
|
|
transform="translate(-4.4766282,-16.121765)"><tspan
|
|
x="15.056169"
|
|
y="80.215981"
|
|
id="tspan162">Most commands are a </tspan><tspan
|
|
x="15.056169"
|
|
y="83.743759"
|
|
id="tspan163">wrapper around systemctl</tspan></text><text
|
|
xml:space="preserve"
|
|
style="font-style:italic;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:2.82222px;line-height:1.25;font-family:'Open Sans','Segoe UI','Helvetica Neue',Arial,sans-serif;-inkscape-font-specification:'Open Sans Italic';text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;white-space:pre;inline-size:42.8539;display:inline;stroke-width:0.264583"
|
|
x="15.056169"
|
|
y="80.215981"
|
|
id="text844-3-7-7-7"
|
|
transform="translate(-4.8056531,5.8657173)"><tspan
|
|
x="15.056169"
|
|
y="80.215981"
|
|
id="tspan164">Activates the ofm python </tspan><tspan
|
|
x="15.056169"
|
|
y="83.743759"
|
|
id="tspan165">environment </tspan></text></g></g></svg>
|