3 changed files with 128 additions and 41 deletions
@ -0,0 +1,70 @@ |
|||||
|
import express from "express"; |
||||
|
import { delay } from "../utils/helper"; |
||||
|
const router = express.Router(); |
||||
|
|
||||
|
import points from "../utils/measure.json"; |
||||
|
import { WsProxy } from "../utils/wss"; |
||||
|
let ptIndex = 0; |
||||
|
let intervalId1: ReturnType<typeof setInterval>; |
||||
|
let intervalId2: ReturnType<typeof setInterval>; |
||||
|
|
||||
|
router.post("/startMeasure", (req, res) => { |
||||
|
setTimeout(() => { |
||||
|
ptIndex = 0; |
||||
|
WsProxy.sendFunc({ |
||||
|
func: "measureTaskEvent", |
||||
|
data: { event: "START_RECORD_LEFT" }, |
||||
|
}); |
||||
|
}, 10); |
||||
|
intervalId1 = setInterval(() => { |
||||
|
if (ptIndex >= points.length / 2) { |
||||
|
clearInterval(intervalId1); |
||||
|
WsProxy.sendFunc({ |
||||
|
func: "measureTaskEvent", |
||||
|
data: { event: "FINISH_RECORD_LEFT" }, |
||||
|
}); |
||||
|
setTimeout(() => { |
||||
|
WsProxy.sendFunc({ |
||||
|
func: "measureTaskEvent", |
||||
|
data: { event: "START_RECORD_RIGHT" }, |
||||
|
}); |
||||
|
intervalId2 = setInterval(() => { |
||||
|
if (ptIndex >= points.length) { |
||||
|
clearInterval(intervalId2); |
||||
|
ptIndex = 0; |
||||
|
WsProxy.sendFunc({ |
||||
|
func: "measureTaskEvent", |
||||
|
data: { event: "FINISH_RECORD_RIGHT" }, |
||||
|
}); |
||||
|
return; |
||||
|
} |
||||
|
WsProxy.sendFunc({ |
||||
|
func: "measurePointEvent", |
||||
|
data: { |
||||
|
x: points[ptIndex].x, |
||||
|
y: points[ptIndex].y + 1, |
||||
|
side: "right", |
||||
|
}, |
||||
|
}); |
||||
|
ptIndex = ptIndex + 2; |
||||
|
}, 10); |
||||
|
}, 2000); |
||||
|
return; |
||||
|
} |
||||
|
// 从中心向左边画
|
||||
|
const tempIdx = Math.max(Math.floor(points.length / 2) - ptIndex, 0); |
||||
|
WsProxy.sendFunc({ |
||||
|
func: "measurePointEvent", |
||||
|
data: { |
||||
|
x: points[tempIdx].x, |
||||
|
y: points[tempIdx].y + 1, |
||||
|
side: "left", |
||||
|
}, |
||||
|
}); |
||||
|
ptIndex = ptIndex + 2; |
||||
|
}, 10); |
||||
|
|
||||
|
res.json({ success: true }); |
||||
|
}); |
||||
|
|
||||
|
export default router; |
Write
Preview
Loading…
Cancel
Save
Reference in new issue