Files
cup_edit/docs/images/drawing.svg
2024-06-16 15:03:52 +08:00

314 lines
14 KiB
XML

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
width="698.05615mm"
height="271.6131mm"
viewBox="0 0 698.05615 271.6131"
version="1.1"
id="svg5"
inkscape:version="1.2.2 (b0a84865, 2022-12-01)"
sodipodi:docname="drawing.svg"
inkscape:export-filename="drawing.png"
inkscape:export-xdpi="96"
inkscape:export-ydpi="96"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns="http://www.w3.org/2000/svg"
xmlns:svg="http://www.w3.org/2000/svg">
<sodipodi:namedview
id="namedview7"
pagecolor="#ffffff"
bordercolor="#000000"
borderopacity="0.25"
inkscape:showpageshadow="2"
inkscape:pageopacity="0.0"
inkscape:pagecheckerboard="0"
inkscape:deskcolor="#d1d1d1"
inkscape:document-units="mm"
showgrid="false"
inkscape:zoom="1.0406414"
inkscape:cx="441.55462"
inkscape:cy="759.14723"
inkscape:window-width="1390"
inkscape:window-height="950"
inkscape:window-x="0"
inkscape:window-y="25"
inkscape:window-maximized="0"
inkscape:current-layer="layer1" />
<defs
id="defs2">
<marker
style="overflow:visible"
id="TriangleStart"
refX="0"
refY="0"
orient="auto-start-reverse"
inkscape:stockid="TriangleStart"
markerWidth="5.3244081"
markerHeight="6.155385"
viewBox="0 0 5.3244081 6.1553851"
inkscape:isstock="true"
inkscape:collect="always"
preserveAspectRatio="xMidYMid">
<path
transform="scale(0.5)"
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
d="M 5.77,0 -2.88,5 V -5 Z"
id="path135" />
</marker>
<marker
style="overflow:visible"
id="TriangleStart-5"
refX="0"
refY="0"
orient="auto-start-reverse"
inkscape:stockid="TriangleStart"
markerWidth="5.3244081"
markerHeight="6.155385"
viewBox="0 0 5.3244081 6.1553851"
inkscape:isstock="true"
inkscape:collect="always"
preserveAspectRatio="xMidYMid">
<path
transform="scale(0.5)"
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
d="M 5.77,0 -2.88,5 V -5 Z"
id="path135-8" />
</marker>
<marker
style="overflow:visible"
id="TriangleStart-7"
refX="0"
refY="0"
orient="auto-start-reverse"
inkscape:stockid="TriangleStart"
markerWidth="5.3244081"
markerHeight="6.155385"
viewBox="0 0 5.3244081 6.1553851"
inkscape:isstock="true"
inkscape:collect="always"
preserveAspectRatio="xMidYMid">
<path
transform="scale(0.5)"
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
d="M 5.77,0 -2.88,5 V -5 Z"
id="path135-7" />
</marker>
<marker
style="overflow:visible"
id="TriangleStart-7-1"
refX="0"
refY="0"
orient="auto-start-reverse"
inkscape:stockid="TriangleStart"
markerWidth="5.3244081"
markerHeight="6.155385"
viewBox="0 0 5.3244081 6.1553851"
inkscape:isstock="true"
inkscape:collect="always"
preserveAspectRatio="xMidYMid">
<path
transform="scale(0.5)"
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
d="M 5.77,0 -2.88,5 V -5 Z"
id="path135-7-1" />
</marker>
<marker
style="overflow:visible"
id="TriangleStart-50"
refX="0"
refY="0"
orient="auto-start-reverse"
inkscape:stockid="TriangleStart"
markerWidth="5.3244081"
markerHeight="6.155385"
viewBox="0 0 5.3244081 6.1553851"
inkscape:isstock="true"
inkscape:collect="always"
preserveAspectRatio="xMidYMid">
<path
transform="scale(0.5)"
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
d="M 5.77,0 -2.88,5 V -5 Z"
id="path135-0" />
</marker>
<marker
style="overflow:visible"
id="TriangleStart-5-1"
refX="0"
refY="0"
orient="auto-start-reverse"
inkscape:stockid="TriangleStart"
markerWidth="5.3244081"
markerHeight="6.155385"
viewBox="0 0 5.3244081 6.1553851"
inkscape:isstock="true"
inkscape:collect="always"
preserveAspectRatio="xMidYMid">
<path
transform="scale(0.5)"
style="fill:context-stroke;fill-rule:evenodd;stroke:context-stroke;stroke-width:1pt"
d="M 5.77,0 -2.88,5 V -5 Z"
id="path135-8-3" />
</marker>
</defs>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-3.5245818,9.2399567)">
<rect
style="fill:#ffffff;fill-opacity:0;stroke:#000000;stroke-width:0.927375;stroke-miterlimit:4.7;stroke-dasharray:none"
id="rect234-1"
width="379.63364"
height="129.73656"
x="3.9882693"
y="-5.8997526" />
<rect
style="fill:#ffffff;fill-opacity:0;stroke:#000000;stroke-width:1.09465;stroke-miterlimit:4.7;stroke-dasharray:none"
id="rect234-1-3"
width="288.13705"
height="238.15767"
x="412.89633"
y="-8.6926317" />
<rect
style="fill:#ffffff;fill-opacity:0;stroke:#000000;stroke-width:0.586207;stroke-miterlimit:4.7;stroke-dasharray:none"
id="rect234-1-3-0"
width="151.29199"
height="130.07773"
x="5.1431384"
y="132.0023" />
<text
xml:space="preserve"
style="font-size:12.7px;font-family:'HarmonyOS Sans SC';-inkscape-font-specification:'HarmonyOS Sans SC';text-align:center;letter-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:0;stroke:#000000;stroke-width:1.32292;stroke-miterlimit:4.7"
x="92.048431"
y="56.811131"
id="text398"><tspan
sodipodi:role="line"
id="tspan396"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Arial;-inkscape-font-specification:Arial;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.32292"
x="92.048431"
y="56.811131">FilamentController (Dart)</tspan></text>
<text
xml:space="preserve"
style="font-size:12.7px;font-family:'HarmonyOS Sans SC';-inkscape-font-specification:'HarmonyOS Sans SC';text-align:center;letter-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:0;stroke:#000000;stroke-width:1.32292;stroke-miterlimit:4.7"
x="304.37106"
y="57.530262"
id="text398-4"><tspan
sodipodi:role="line"
id="tspan396-8"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Arial;-inkscape-font-specification:Arial;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.32292"
x="304.37106"
y="57.530262">ThermionFlutterFFI</tspan></text>
<text
xml:space="preserve"
style="font-size:12.7px;font-family:'HarmonyOS Sans SC';-inkscape-font-specification:'HarmonyOS Sans SC';text-align:center;letter-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:0;stroke:#000000;stroke-width:1.32292;stroke-miterlimit:4.7"
x="578.62885"
y="60.701408"
id="text398-4-7"><tspan
sodipodi:role="line"
id="tspan396-8-1"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Arial;-inkscape-font-specification:Arial;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.32292"
x="578.62885"
y="60.701408">ThermionViewerFFI / Filament Engine (etc)</tspan></text>
<text
xml:space="preserve"
style="font-size:12.7px;font-family:'HarmonyOS Sans SC';-inkscape-font-specification:'HarmonyOS Sans SC';text-align:center;letter-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:0;stroke:#000000;stroke-width:1.32292;stroke-miterlimit:4.7"
x="472.51691"
y="10.943201"
id="text398-4-1"><tspan
sodipodi:role="line"
id="tspan396-8-9"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Arial;-inkscape-font-specification:Arial;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.32292"
x="472.51691"
y="10.943201">Render thread</tspan></text>
<text
xml:space="preserve"
style="font-size:12.7px;font-family:'HarmonyOS Sans SC';-inkscape-font-specification:'HarmonyOS Sans SC';text-align:center;letter-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:0;stroke:#000000;stroke-width:1.32292;stroke-miterlimit:4.7"
x="69.463997"
y="14.792676"
id="text398-9"><tspan
sodipodi:role="line"
id="tspan396-5"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Arial;-inkscape-font-specification:Arial;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.32292"
x="69.463997"
y="14.792676">Main Flutter Thread</tspan></text>
<text
xml:space="preserve"
style="font-size:12.7px;font-family:'HarmonyOS Sans SC';-inkscape-font-specification:'HarmonyOS Sans SC';text-align:center;letter-spacing:0px;text-anchor:middle;fill:#ffffff;fill-opacity:0;stroke:#000000;stroke-width:1.32292;stroke-miterlimit:4.7"
x="78.957222"
y="191.72818"
id="text398-1"><tspan
sodipodi:role="line"
id="tspan396-7"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-family:Arial;-inkscape-font-specification:Arial;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.32292"
x="78.957222"
y="191.72818">Platform Channel</tspan></text>
<path
style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.39242;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#TriangleStart)"
d="m 168.09598,47.800956 77.0034,-0.600221"
id="path1399"
inkscape:connector-type="polyline"
inkscape:connector-curvature="0" />
<path
style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.39242;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#TriangleStart-50)"
d="m 245.89691,60.584035 -77.0034,-0.600221"
id="path1399-8"
inkscape:connector-type="polyline"
inkscape:connector-curvature="0" />
<path
style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.53928;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#TriangleStart-7)"
d="M 48.091478,64.785894 47.803757,161.23719"
id="path1399-3"
inkscape:connector-type="polyline"
inkscape:connector-curvature="0" />
<path
style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.53928;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#TriangleStart-7-1)"
d="M 107.57319,166.38716 107.28547,69.935859"
id="path1399-3-8"
inkscape:connector-type="polyline"
inkscape:connector-curvature="0" />
<path
style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.39242;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#TriangleStart-5)"
d="m 370.3702,53.077344 77.0034,-0.600221"
id="path1399-6"
inkscape:connector-type="polyline"
inkscape:connector-curvature="0" />
<path
style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.39242;stroke-linecap:butt;stroke-linejoin:miter;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#TriangleStart-5-1)"
d="m 448.28011,64.65204 -77.0034,-0.600221"
id="path1399-6-4"
inkscape:connector-type="polyline"
inkscape:connector-curvature="0" />
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:6.35px;font-family:Arial;-inkscape-font-specification:Arial;text-align:center;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.32292;stroke-miterlimit:4.7;stroke-dasharray:none"
x="83.648346"
y="207.46822"
id="text2612"><tspan
sodipodi:role="line"
id="tspan2610"
style="font-size:6.35px;stroke-width:1.32292"
x="83.648346"
y="207.46822">Sets up OpenGL/Metal/etc rendering context, </tspan><tspan
sodipodi:role="line"
style="font-size:6.35px;stroke-width:1.32292"
x="83.648346"
y="215.40572"
dx="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.25425026"
id="tspan2614">render target textures/window, etc</tspan></text>
<text
xml:space="preserve"
style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:6.35px;font-family:Arial;-inkscape-font-specification:Arial;text-align:center;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;stroke-width:1.32292;stroke-miterlimit:4.7;stroke-dasharray:none"
x="79.772552"
y="225.02937"
id="text2612-4"><tspan
sodipodi:role="line"
style="font-size:6.35px;stroke-width:1.32292"
x="79.772552"
y="225.02937"
id="tspan2614-7">Asset loading</tspan></text>
</g>
</svg>