|
@@ -427,6 +427,7 @@ export const genMoveLineHandler = (data: LineData, lineId: string, ctx = getInit
|
|
|
const line = data.lines.find((line) => line.id === lineId)!;
|
|
|
const pointIds = [line.a, line.b];
|
|
|
const points = pointIds.map((id) => data.points.find((p) => p.id === id)!);
|
|
|
+ const initPoints = copy(points)
|
|
|
const angleRange = [MathUtils.degToRad(10), MathUtils.degToRad(170)];
|
|
|
const getJoinLine = (pId: string) =>
|
|
|
data.lines
|
|
@@ -552,7 +553,7 @@ export const genMoveLineHandler = (data: LineData, lineId: string, ctx = getInit
|
|
|
}
|
|
|
|
|
|
const handler = (finalPoss: Pos[]) => {
|
|
|
- const moveDires = finalPoss.map((pos, ndx) => lineVector([points[ndx], pos]))
|
|
|
+ const moveDires = finalPoss.map((pos, ndx) => lineVector([initPoints[ndx], pos]))
|
|
|
if (!inited) {
|
|
|
inited = true
|
|
|
init(moveDires)
|
|
@@ -561,7 +562,6 @@ export const genMoveLineHandler = (data: LineData, lineId: string, ctx = getInit
|
|
|
for (let i = 0; i < snapLines.length; i++) {
|
|
|
const snapLine = snapLines[i]
|
|
|
const fpos = !snapLine ? finalPoss[i] : linePointProjection(snapLine, finalPoss[i])
|
|
|
- console.log(snapLines[i], fpos, i)
|
|
|
Object.assign(points[i], fpos)
|
|
|
ctx.update.points[points[i].id] = points[i]
|
|
|
}
|