67 lines
3.6 KiB
XML
67 lines
3.6 KiB
XML
<svg xmlns="http://www.w3.org/2000/svg" width="1600" height="900" viewBox="0 0 1600 900">
|
||
<defs>
|
||
<style>
|
||
text { font-family: "Noto Sans CJK SC", "Microsoft YaHei", Arial, sans-serif; fill: #172033; }
|
||
.title { font-size: 40px; font-weight: 700; }
|
||
.sub { font-size: 23px; fill: #475569; }
|
||
.head { font-size: 27px; font-weight: 700; }
|
||
.body { font-size: 21px; }
|
||
.small { font-size: 18px; fill: #475569; }
|
||
.box { fill: #f8fafc; stroke: #64748b; stroke-width: 2.5; rx: 14; }
|
||
.native { fill: #eef6ff; stroke: #2563eb; stroke-width: 3; rx: 16; }
|
||
.web { fill: #f4fbf7; stroke: #16a34a; stroke-width: 3; rx: 16; }
|
||
.json { fill: #fff7ed; stroke: #f97316; stroke-width: 3; rx: 16; }
|
||
.ok { fill: #f0fdf4; stroke: #22c55e; stroke-width: 3; rx: 16; }
|
||
.line { stroke: #334155; stroke-width: 3; fill: none; marker-end: url(#arrow); }
|
||
</style>
|
||
<marker id="arrow" markerWidth="14" markerHeight="14" refX="12" refY="7" orient="auto" markerUnits="strokeWidth">
|
||
<path d="M 0 0 L 14 7 L 0 14 z" fill="#334155"/>
|
||
</marker>
|
||
</defs>
|
||
|
||
<rect width="1600" height="900" fill="#ffffff"/>
|
||
<text x="60" y="70" class="title">刀具预览路径与执行路径 JSON 比对流程</text>
|
||
<text x="60" y="110" class="sub">真实 LinuxCNC 与 Web 仿真统一采用 20 ms 采样周期,便于曲线、姿态和 switchkins 状态逐点对齐。</text>
|
||
|
||
<rect x="75" y="170" width="440" height="225" class="native"/>
|
||
<text x="110" y="220" class="head">LinuxCNC 真实系统</text>
|
||
<text x="110" y="270" class="body">1. 加载 xyzbc-trt.ini</text>
|
||
<text x="110" y="310" class="body">2. 预览 xyzbc_switchkins.ngc</text>
|
||
<text x="110" y="350" class="body">3. 采集 status / HAL / path</text>
|
||
|
||
<rect x="75" y="505" width="440" height="225" class="web"/>
|
||
<text x="110" y="555" class="head">Web 仿真系统</text>
|
||
<text x="110" y="605" class="body">1. 解析同一组配置和程序</text>
|
||
<text x="110" y="645" class="body">2. 生成等价预览和执行轨迹</text>
|
||
<text x="110" y="685" class="body">3. 输出同字段 evidence JSON</text>
|
||
|
||
<rect x="620" y="210" width="360" height="145" class="json"/>
|
||
<text x="660" y="260" class="head">native-evidence.json</text>
|
||
<text x="660" y="305" class="small">previewPath / executionPath / halPins</text>
|
||
|
||
<rect x="620" y="545" width="360" height="145" class="json"/>
|
||
<text x="678" y="595" class="head">web-evidence.json</text>
|
||
<text x="660" y="640" class="small">同 sampleIndex / timeMs / 坐标系</text>
|
||
|
||
<rect x="1080" y="360" width="410" height="185" class="box"/>
|
||
<text x="1125" y="410" class="head">逐点对齐和误差计算</text>
|
||
<text x="1125" y="458" class="body">位置误差:X/Y/Z/B/C</text>
|
||
<text x="1125" y="498" class="body">TCP 误差:toolTip 与 toolAxis</text>
|
||
<text x="1125" y="538" class="body">状态误差:kinsType / G-code / HAL</text>
|
||
|
||
<rect x="1080" y="645" width="410" height="115" class="ok"/>
|
||
<text x="1135" y="695" class="head">compare-report.json</text>
|
||
<text x="1135" y="735" class="small">max / rms / firstMismatch / screenshots</text>
|
||
|
||
<path d="M515 282 L620 282" class="line"/>
|
||
<path d="M515 617 L620 617" class="line"/>
|
||
<path d="M980 282 C1050 282 1050 405 1080 405" class="line"/>
|
||
<path d="M980 617 C1050 617 1050 500 1080 500" class="line"/>
|
||
<path d="M1285 545 L1285 645" class="line"/>
|
||
|
||
<rect x="610" y="750" width="385" height="65" class="json"/>
|
||
<text x="642" y="790" class="head">samplePeriodMs = 20</text>
|
||
<path d="M805 545 L805 355" class="line"/>
|
||
<text x="645" y="845" class="small">所有曲线采样周期固定一致,禁止真实系统与 Web 系统使用不同周期。</text>
|
||
</svg>
|