defined split array

multi-curve-paths
Preet 1 year ago
parent 14bca119f7
commit c2867c9a93

@ -285,6 +285,7 @@ const restoreElement = (
points,
x,
y,
segmentSplitIndices: [],
});
}

@ -1472,6 +1472,28 @@ export class LinearElementEditor {
return coords;
};
static toggleSegmentSplitAtIndex(
element: NonDeleted<ExcalidrawLinearElement>,
appState: AppState,
index: number,
) {
let found = false;
const splitIndices = (element.segmentSplitIndices || []).filter((idx) => {
if (idx === index) {
found = true;
return false;
}
return true;
});
if (!found) {
splitIndices.push(index);
}
mutateElement(element, {
segmentSplitIndices: splitIndices,
});
}
}
const normalizeSelectedPoints = (

@ -374,6 +374,7 @@ export const newLinearElement = (
endBinding: null,
startArrowhead: opts.startArrowhead || null,
endArrowhead: opts.endArrowhead || null,
segmentSplitIndices: [],
};
};

@ -195,6 +195,7 @@ export type ExcalidrawLinearElement = _ExcalidrawElementBase &
Readonly<{
type: "line" | "arrow";
points: readonly Point[];
segmentSplitIndices: readonly number[] | null;
lastCommittedPoint: Point | null;
startBinding: PointBinding | null;
endBinding: PointBinding | null;

Loading…
Cancel
Save