From bba9e38918110334a8c9cf9f42b314da140143a2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Kan=C4=9Bra?= Date: Mon, 26 Jun 2023 20:57:37 +0900 Subject: [PATCH] feat(routers.RightAngle): add useVertices option --- src/routers/rightAngle.mjs | 5 +++++ types/joint.d.ts | 1 + 2 files changed, 6 insertions(+) diff --git a/src/routers/rightAngle.mjs b/src/routers/rightAngle.mjs index 3c73863143..c1cb4477c8 100644 --- a/src/routers/rightAngle.mjs +++ b/src/routers/rightAngle.mjs @@ -684,6 +684,7 @@ function routeBetweenPoints(source, target, margin) { function rightAngleRouter(vertices, opt, linkView) { const { sourceDirection = Directions.AUTO, targetDirection = Directions.AUTO } = opt; const margin = opt.margin || 20; + const useVertices = opt.useVertices || false; const isSourcePort = !!linkView.model.source().port; const sourcePoint = pointDataFromAnchor(linkView.sourceView, linkView.sourceAnchor, linkView.sourceBBox, sourceDirection, isSourcePort, linkView.sourceAnchor); @@ -694,6 +695,10 @@ function rightAngleRouter(vertices, opt, linkView) { let resultVertices = []; let source = sourcePoint; + if (!useVertices) { + return routeBetweenPoints(sourcePoint, targetPoint, margin); + } + for (let i = 0; i < vertices.length; i++) { const current = vertices[i]; diff --git a/types/joint.d.ts b/types/joint.d.ts index ece16f7d81..a5ea3d0c94 100644 --- a/types/joint.d.ts +++ b/types/joint.d.ts @@ -3529,6 +3529,7 @@ export namespace routers { interface RightAngleRouterArguments { margin?: number; + useVertices?: boolean; sourceDirection?: RightAngleDirections; targetDirection?: RightAngleDirections; }