aboutsummaryrefslogtreecommitdiff
path: root/src/client/views/InkTangentHandles.tsx
diff options
context:
space:
mode:
authorbobzel <zzzman@gmail.com>2021-09-29 22:51:21 -0400
committerbobzel <zzzman@gmail.com>2021-09-29 22:51:21 -0400
commit1d2f03125cbfd1c7a03f0000454de4d70e73d690 (patch)
tree22ff01b179e1430b7a59b6a5356eb54966486bb1 /src/client/views/InkTangentHandles.tsx
parentb9adc2fec10d4509cd96558bb832f7c02bc70b25 (diff)
made IsClosed a static function. fixed warnings and errors.
Diffstat (limited to 'src/client/views/InkTangentHandles.tsx')
-rw-r--r--src/client/views/InkTangentHandles.tsx7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/client/views/InkTangentHandles.tsx b/src/client/views/InkTangentHandles.tsx
index 4f1a406c2..8f7bef936 100644
--- a/src/client/views/InkTangentHandles.tsx
+++ b/src/client/views/InkTangentHandles.tsx
@@ -11,6 +11,7 @@ import { Transform } from "../util/Transform";
import { UndoManager } from "../util/UndoManager";
import { Colors } from "./global/globalEnums";
import { InkStrokeProperties } from "./InkStrokeProperties";
+import { InkingStroke } from "./InkingStroke";
export interface InkHandlesProps {
inkDoc: Doc;
@@ -53,8 +54,8 @@ export class InkTangentHandles extends React.Component<InkHandlesProps> {
*/
@action
onBreakTangent = (controlIndex: number) => {
- const closed = this.props.screenCtrlPoints.lastElement().X === this.props.screenCtrlPoints[0].X && this.props.screenCtrlPoints.lastElement().Y === this.props.screenCtrlPoints[0].Y;
- var brokenIndices = Cast(this.props.inkDoc.brokenInkIndices, listSpec("number"));
+ const closed = InkingStroke.IsClosed(this.props.screenCtrlPoints);
+ const brokenIndices = Cast(this.props.inkDoc.brokenInkIndices, listSpec("number"));
if (!brokenIndices?.includes(controlIndex) &&
((controlIndex > 0 && controlIndex < this.props.screenCtrlPoints.length - 1) || closed)) {
if (brokenIndices) brokenIndices.push(controlIndex);
@@ -70,7 +71,7 @@ export class InkTangentHandles extends React.Component<InkHandlesProps> {
const data = this.props.screenCtrlPoints;
const tangentHandles: HandlePoint[] = [];
const tangentLines: HandleLine[] = [];
- const closed = data.lastElement().X === data[0].X && data.lastElement().Y === data[0].Y;
+ const closed = InkingStroke.IsClosed(data);
if (data.length >= 4) {
for (let i = 0; i <= data.length - 4; i += 4) {
tangentHandles.push({ ...data[i + 1], I: i + 1, dot1: i, dot2: i === 0 ? (closed ? data.length - 1 : i) : i - 1 });