antvis/G6

自定义节点内部多个元素与外部其他元素的连线 #5329

CheyenneRowe posted onGitHub

G6 版本

4.x

问题描述

想要实现一个自定义节点类型A,它内部包含多个image节点, A的外部会可能有多条线连接到A内部的各个子shape,如下图所示 <img width="621" alt="image" src="https://github.com/antvis/G6/assets/18679459/64cd8e31-3d53-47d4-bd79-dfd0b33df09c">

我的思路是: 1.获取到A所在的group nodeA.getContainer() 2.找到内部的子shape subA = group.find(element => element.get('name') === '子shape的唯一name')) 3.创建外部节点到子shape的连线 edge:[{ source: '外部node的id', target: 'subA.id' //2中找到的sub-shape }]

自定义节点中也配置了subA的id,但上面步骤3并不生效,无法创建edge。

请问上述步骤的问题在哪,以及这种场景有没有什么其他方案?

重现链接

重现步骤

见上

预期行为

自定义节点外部可以获取节点内部的元素创建边

平台

操作系统: macOS 网页浏览器: Google Chrome G6 版本: 4.8.23

屏幕截图或视频(可选)

见上

补充说明(可选)

见上


Hi @CheyenneRowe, Please star this repo if you find it useful! Thanks :star:! 你好 @CheyenneRowe。如果该仓库对你有用,可以 star 一下,感谢你的 :star:!

posted by github-actions[bot] over 1 year ago

在 5.0 中,你可以通过定义多个内部连接桩来实现 https://g6-next.antv.antgroup.com/api/elements/nodes/base-node#ports

posted by Aarebecca 11 months ago

Fund this Issue

$0.00
Funded

Pull requests