Update XYZBC web simulation evidence
|
After Width: | Height: | Size: 178 KiB |
|
After Width: | Height: | Size: 178 KiB |
|
After Width: | Height: | Size: 177 KiB |
|
After Width: | Height: | Size: 179 KiB |
|
After Width: | Height: | Size: 180 KiB |
|
After Width: | Height: | Size: 180 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 180 KiB |
|
After Width: | Height: | Size: 180 KiB |
|
After Width: | Height: | Size: 180 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 180 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 179 KiB |
|
After Width: | Height: | Size: 179 KiB |
|
After Width: | Height: | Size: 178 KiB |
|
After Width: | Height: | Size: 179 KiB |
|
After Width: | Height: | Size: 180 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 180 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 179 KiB |
|
After Width: | Height: | Size: 178 KiB |
|
After Width: | Height: | Size: 178 KiB |
|
After Width: | Height: | Size: 180 KiB |
|
After Width: | Height: | Size: 180 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 180 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 180 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 179 KiB |
|
After Width: | Height: | Size: 179 KiB |
|
After Width: | Height: | Size: 178 KiB |
|
After Width: | Height: | Size: 179 KiB |
|
After Width: | Height: | Size: 180 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 182 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 180 KiB |
|
After Width: | Height: | Size: 180 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 181 KiB |
|
After Width: | Height: | Size: 180 KiB |
|
After Width: | Height: | Size: 179 KiB |
|
After Width: | Height: | Size: 177 KiB |
|
After Width: | Height: | Size: 177 KiB |
|
After Width: | Height: | Size: 220 KiB |
|
After Width: | Height: | Size: 220 KiB |
|
After Width: | Height: | Size: 221 KiB |
@@ -0,0 +1,392 @@
|
||||
{
|
||||
"apiName": "web-rtcp-5axis-xyzbc-trt-full-gcode-process-frame-capture",
|
||||
"status": "partial",
|
||||
"capturedAt": "2026-07-03T09:17:13.048Z",
|
||||
"projectRoot": "/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan",
|
||||
"outputDir": "/home/mes123456/cnc_wams/web-rtcp-5axis-xyzbc-trt-sim-plan/working/screenshots/web-simulation-gcode-full-50ms-20260703T091708Z",
|
||||
"url": "http://127.0.0.1:34309/web-rtcp-5axis-xyzbc-trt-sim-plan/app/index.html",
|
||||
"sourceRel": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
||||
"captureMethod": "Playwright drives the AXIS UI state one real programAxisPreviewPath sample at a time and screenshots after each 50ms sample.",
|
||||
"samplePeriodMs": 50,
|
||||
"expectedSampleCount": 1300,
|
||||
"capturedFrameCount": 3,
|
||||
"firstFrame": {
|
||||
"index": 0,
|
||||
"timeMs": 0,
|
||||
"file": "frame-0000-t000000ms.png",
|
||||
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
||||
"line": 16,
|
||||
"statement": "g53 g0 x0y0 z#<zmax> b0 c0 ; quadrant I",
|
||||
"operation": "rapid-machine-reset",
|
||||
"gcodeStepIndex": 16,
|
||||
"segmentIndex": 0,
|
||||
"motionType": "rapid",
|
||||
"activeKinematics": "identity",
|
||||
"joint": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 10,
|
||||
"b": 0,
|
||||
"c": 0
|
||||
},
|
||||
"tcp": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 10
|
||||
},
|
||||
"toolAxis": {
|
||||
"i": 0,
|
||||
"j": 0,
|
||||
"k": 1
|
||||
},
|
||||
"axisPose": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 10,
|
||||
"a": 0,
|
||||
"b": 0,
|
||||
"c": 0
|
||||
},
|
||||
"toolAxisVector": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 1
|
||||
},
|
||||
"canvasDataset": {
|
||||
"threeToolAxis": "{\"x\":0,\"y\":0,\"z\":1}",
|
||||
"threeToolGlyphAxis": "{\"x\":0,\"y\":0,\"z\":1}"
|
||||
}
|
||||
},
|
||||
"lastFrame": {
|
||||
"index": 2,
|
||||
"timeMs": 100,
|
||||
"file": "frame-0002-t000100ms.png",
|
||||
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
||||
"line": 18,
|
||||
"statement": "g0 x+20 y+20 z#<zmax>",
|
||||
"operation": "rapid-to-quadrant-center",
|
||||
"gcodeStepIndex": 18,
|
||||
"segmentIndex": 1,
|
||||
"motionType": "rapid",
|
||||
"activeKinematics": "identity",
|
||||
"joint": {
|
||||
"x": 1.1764705882352942,
|
||||
"y": 1.1764705882352942,
|
||||
"z": 10,
|
||||
"b": 0,
|
||||
"c": 0
|
||||
},
|
||||
"tcp": {
|
||||
"x": 1.1764705882352942,
|
||||
"y": 1.1764705882352942,
|
||||
"z": 10
|
||||
},
|
||||
"toolAxis": {
|
||||
"i": 0,
|
||||
"j": 0,
|
||||
"k": 1
|
||||
},
|
||||
"axisPose": {
|
||||
"x": 1.1764705882352942,
|
||||
"y": 1.1764705882352942,
|
||||
"z": 10,
|
||||
"a": 0,
|
||||
"b": 0,
|
||||
"c": 0
|
||||
},
|
||||
"toolAxisVector": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 1
|
||||
},
|
||||
"canvasDataset": {
|
||||
"threeToolAxis": "{\"x\":0,\"y\":0,\"z\":1}",
|
||||
"threeToolGlyphAxis": "{\"x\":0,\"y\":0,\"z\":1}"
|
||||
}
|
||||
},
|
||||
"gcodeExecutionProcess": {
|
||||
"status": "ok",
|
||||
"executionStepCount": 128,
|
||||
"summary": {
|
||||
"motionStepCount": 29,
|
||||
"switchkinsStepCount": 21,
|
||||
"parameterAssignmentStepCount": 41,
|
||||
"workOffsetStepCount": 9,
|
||||
"callStepCount": 5,
|
||||
"noMotionStepCount": 99,
|
||||
"finalJoint": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 10,
|
||||
"b": 0,
|
||||
"c": 0
|
||||
},
|
||||
"finalKinematics": "identity"
|
||||
}
|
||||
},
|
||||
"lineExecutionTraceCount": 64,
|
||||
"axisValuesByLineCount": 29,
|
||||
"finalState": {
|
||||
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
||||
"selectedGcodeSourceRel": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
||||
"source": "web-axis-source-execution-expanded-ngcgui-subroutines",
|
||||
"semanticBoundary": "linuxcnc_xyzbc_switchkins_ngc_execution_expanded_by_source_subroutines",
|
||||
"samplePeriodMs": 50,
|
||||
"sampleCount": 1300,
|
||||
"capturedSampleIndex": 2,
|
||||
"runState": "stepping",
|
||||
"programUiExecution": {
|
||||
"apiName": "web-rtcp-5axis-ui-gcode-live-execution",
|
||||
"status": "idle",
|
||||
"source": "programAxisPreviewPath.samples",
|
||||
"samplePeriodMs": 50,
|
||||
"sampleIndex": 2,
|
||||
"sampleCount": 1300,
|
||||
"executedSampleCount": 3,
|
||||
"timeMs": 100,
|
||||
"activeProgram": "configs/sim/axis/vismach/5axis/table-rotary-tilting/demos/xyzbc_switchkins.ngc",
|
||||
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
||||
"line": 18,
|
||||
"statement": "g0 x+20 y+20 z#<zmax>",
|
||||
"operation": "rapid-to-quadrant-center",
|
||||
"executionIndex": 4,
|
||||
"gcodeStepIndex": 18,
|
||||
"segmentIndex": 1,
|
||||
"motionType": "rapid",
|
||||
"activeKinematics": "identity",
|
||||
"joint": {
|
||||
"x": 1.1764705882352942,
|
||||
"y": 1.1764705882352942,
|
||||
"z": 10,
|
||||
"b": 0,
|
||||
"c": 0
|
||||
},
|
||||
"tcp": {
|
||||
"x": 1.1764705882352942,
|
||||
"y": 1.1764705882352942,
|
||||
"z": 10
|
||||
},
|
||||
"toolAxis": {
|
||||
"i": 0,
|
||||
"j": 0,
|
||||
"k": 1
|
||||
},
|
||||
"tool": {
|
||||
"id": 2,
|
||||
"pocket": 2,
|
||||
"length": 10,
|
||||
"diameter": 8
|
||||
},
|
||||
"machineState": {
|
||||
"spindle": {
|
||||
"speedRpm": 0,
|
||||
"direction": "stopped",
|
||||
"enabled": false
|
||||
},
|
||||
"feed": {
|
||||
"programmedMmPerMin": 2100,
|
||||
"actualMmPerMin": 2100,
|
||||
"overridePercent": 100
|
||||
},
|
||||
"cutting": {
|
||||
"active": false,
|
||||
"cuttingSpeedMmPerMin": 0
|
||||
},
|
||||
"tool": {
|
||||
"id": 2,
|
||||
"pocket": 2,
|
||||
"length": 10,
|
||||
"diameter": 8
|
||||
},
|
||||
"toolChange": {
|
||||
"activeTool": 2,
|
||||
"activePocket": 2,
|
||||
"changed": false,
|
||||
"command": null
|
||||
},
|
||||
"coolant": {
|
||||
"mist": false,
|
||||
"flood": false
|
||||
}
|
||||
},
|
||||
"semanticBoundary": "ui_updates_from_real_expanded_linuxcnc_gcode_sample_stream"
|
||||
},
|
||||
"gcodeExecutionProcess": {
|
||||
"status": "ok",
|
||||
"executionStepCount": 128,
|
||||
"summary": {
|
||||
"motionStepCount": 29,
|
||||
"switchkinsStepCount": 21,
|
||||
"parameterAssignmentStepCount": 41,
|
||||
"workOffsetStepCount": 9,
|
||||
"callStepCount": 5,
|
||||
"noMotionStepCount": 99,
|
||||
"finalJoint": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 10,
|
||||
"b": 0,
|
||||
"c": 0
|
||||
},
|
||||
"finalKinematics": "identity"
|
||||
}
|
||||
},
|
||||
"lineExecutionTraceCount": 64,
|
||||
"axisValuesByLineCount": 29,
|
||||
"programExecutionSourceMode": "fixture-line-playback",
|
||||
"taskHalRuntimeReadiness": {
|
||||
"apiName": "web-rtcp-5axis-linuxcnc-task-hal-runtime-readiness",
|
||||
"loaded": false,
|
||||
"taskRuntimeReady": false,
|
||||
"motionRuntimeReady": false,
|
||||
"halRuntimeReady": false,
|
||||
"nativeTaskReady": false,
|
||||
"nativeHalSyncReady": false,
|
||||
"error": "disabled for deterministic 50ms screenshot playback; task/HAL path is covered by browser smoke"
|
||||
}
|
||||
},
|
||||
"frames": [
|
||||
{
|
||||
"index": 0,
|
||||
"timeMs": 0,
|
||||
"file": "frame-0000-t000000ms.png",
|
||||
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
||||
"line": 16,
|
||||
"statement": "g53 g0 x0y0 z#<zmax> b0 c0 ; quadrant I",
|
||||
"operation": "rapid-machine-reset",
|
||||
"gcodeStepIndex": 16,
|
||||
"segmentIndex": 0,
|
||||
"motionType": "rapid",
|
||||
"activeKinematics": "identity",
|
||||
"joint": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 10,
|
||||
"b": 0,
|
||||
"c": 0
|
||||
},
|
||||
"tcp": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 10
|
||||
},
|
||||
"toolAxis": {
|
||||
"i": 0,
|
||||
"j": 0,
|
||||
"k": 1
|
||||
},
|
||||
"axisPose": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 10,
|
||||
"a": 0,
|
||||
"b": 0,
|
||||
"c": 0
|
||||
},
|
||||
"toolAxisVector": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 1
|
||||
},
|
||||
"canvasDataset": {
|
||||
"threeToolAxis": "{\"x\":0,\"y\":0,\"z\":1}",
|
||||
"threeToolGlyphAxis": "{\"x\":0,\"y\":0,\"z\":1}"
|
||||
}
|
||||
},
|
||||
{
|
||||
"index": 1,
|
||||
"timeMs": 50,
|
||||
"file": "frame-0001-t000050ms.png",
|
||||
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
||||
"line": 18,
|
||||
"statement": "g0 x+20 y+20 z#<zmax>",
|
||||
"operation": "rapid-to-quadrant-center",
|
||||
"gcodeStepIndex": 18,
|
||||
"segmentIndex": 1,
|
||||
"motionType": "rapid",
|
||||
"activeKinematics": "identity",
|
||||
"joint": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 10,
|
||||
"b": 0,
|
||||
"c": 0
|
||||
},
|
||||
"tcp": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 10
|
||||
},
|
||||
"toolAxis": {
|
||||
"i": 0,
|
||||
"j": 0,
|
||||
"k": 1
|
||||
},
|
||||
"axisPose": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 10,
|
||||
"a": 0,
|
||||
"b": 0,
|
||||
"c": 0
|
||||
},
|
||||
"toolAxisVector": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 1
|
||||
},
|
||||
"canvasDataset": {
|
||||
"threeToolAxis": "{\"x\":0,\"y\":0,\"z\":1}",
|
||||
"threeToolGlyphAxis": "{\"x\":0,\"y\":0,\"z\":1}"
|
||||
}
|
||||
},
|
||||
{
|
||||
"index": 2,
|
||||
"timeMs": 100,
|
||||
"file": "frame-0002-t000100ms.png",
|
||||
"sourceFile": "xyzbc_switchkins_sub.ngc",
|
||||
"line": 18,
|
||||
"statement": "g0 x+20 y+20 z#<zmax>",
|
||||
"operation": "rapid-to-quadrant-center",
|
||||
"gcodeStepIndex": 18,
|
||||
"segmentIndex": 1,
|
||||
"motionType": "rapid",
|
||||
"activeKinematics": "identity",
|
||||
"joint": {
|
||||
"x": 1.1764705882352942,
|
||||
"y": 1.1764705882352942,
|
||||
"z": 10,
|
||||
"b": 0,
|
||||
"c": 0
|
||||
},
|
||||
"tcp": {
|
||||
"x": 1.1764705882352942,
|
||||
"y": 1.1764705882352942,
|
||||
"z": 10
|
||||
},
|
||||
"toolAxis": {
|
||||
"i": 0,
|
||||
"j": 0,
|
||||
"k": 1
|
||||
},
|
||||
"axisPose": {
|
||||
"x": 1.1764705882352942,
|
||||
"y": 1.1764705882352942,
|
||||
"z": 10,
|
||||
"a": 0,
|
||||
"b": 0,
|
||||
"c": 0
|
||||
},
|
||||
"toolAxisVector": {
|
||||
"x": 0,
|
||||
"y": 0,
|
||||
"z": 1
|
||||
},
|
||||
"canvasDataset": {
|
||||
"threeToolAxis": "{\"x\":0,\"y\":0,\"z\":1}",
|
||||
"threeToolGlyphAxis": "{\"x\":0,\"y\":0,\"z\":1}"
|
||||
}
|
||||
}
|
||||
],
|
||||
"note": "executionStepCount is the expanded semantic G-code step count; capturedFrameCount is the 50ms visual frame count."
|
||||
}
|
||||
|
After Width: | Height: | Size: 220 KiB |
|
After Width: | Height: | Size: 220 KiB |
|
After Width: | Height: | Size: 221 KiB |
|
After Width: | Height: | Size: 222 KiB |
|
After Width: | Height: | Size: 223 KiB |
|
After Width: | Height: | Size: 222 KiB |
|
After Width: | Height: | Size: 222 KiB |
|
After Width: | Height: | Size: 222 KiB |
|
After Width: | Height: | Size: 223 KiB |
|
After Width: | Height: | Size: 221 KiB |
|
After Width: | Height: | Size: 223 KiB |
|
After Width: | Height: | Size: 222 KiB |
|
After Width: | Height: | Size: 222 KiB |
|
After Width: | Height: | Size: 221 KiB |
|
After Width: | Height: | Size: 223 KiB |
|
After Width: | Height: | Size: 221 KiB |
|
After Width: | Height: | Size: 222 KiB |
|
After Width: | Height: | Size: 223 KiB |
|
After Width: | Height: | Size: 216 KiB |
|
After Width: | Height: | Size: 217 KiB |
|
After Width: | Height: | Size: 217 KiB |
|
After Width: | Height: | Size: 216 KiB |
|
After Width: | Height: | Size: 217 KiB |
|
After Width: | Height: | Size: 217 KiB |
|
After Width: | Height: | Size: 215 KiB |
|
After Width: | Height: | Size: 216 KiB |