Skip to content

🐞使用metro路由创建连线时箭头方向反了 #4999

@zhouAnptjf

Description

@zhouAnptjf

问题描述

在 new Graph 时,使用 metro 作为连线路由,使用 classic 箭头,设置如下:

new Graph({
  container: document.getElementById('container')!,
  connecting: {
    router: { name: 'metro' },
    connector: { name: 'rounded', args: { radius: 8 } },
    createEdge() {
        return new Shape.Edge({
          attrs: {
            line: {
              targetMarker: {
                name: 'classic',
                size: 8,
              },
            },
          },
          data: { type: '1' },
        });
      },
  },

在进行连线操作时,如果两个节点的连接桩间隔距离较短,会出现箭头方向指向不对的问题,如下图所示

Image

重现链接

https://codesandbox.io/p/sandbox/sharp-goodall-kd28nd

重现步骤

  1. 进入页面
  2. 选择距离较近的两个节点,选择距离最近的两个连接桩创建一条连线
  3. 如果连线箭头方向正常,尝试拖动节点缩小距离,直到复现问题描述所示现象

预期行为

我预期看到所有箭头的方向都跟连线末端的走向一致

平台

  • 操作系统: [macOS]
  • 网页浏览器: [Google Chrome]
  • X6 版本: [3.1.3]

屏幕截图或视频(可选但最好有)

Image

补充说明(可选)

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    waiting for maintainerTriage or intervention needed from a maintainer

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions