The issue has been closed
问题描述
想将一个图片节点(大尺寸)作为底图,其他节点、边、combo在其上方显示(不被覆盖)。现在使用toBack()函数置底该图片节点,但是效果不理想,其他节点显示在该图片节点上方,但是边、combo被该节点覆盖。
重现链接
https://codesandbox.io/s/confident-flower-g96wrw?file=/index.js:1338-1346
重现步骤
1、进入页面
2、查看当前页面
预期行为
期望其他节点、边、combo不被该图片节点覆盖。
平台
- 操作系统: [macOS, Windows, Linux, React Native ...]
- 网页浏览器: [Google Chrome, Safari, Firefox]
- G6 版本: [4.5.1 ... ]
屏幕截图或视频(可选)

补充说明(可选)
No response

@LeaveZzz 直接使用给canvas 设置 background 不就可以了嘛,为什么要用一个「图片节点」作为底图,逻辑有点奇怪
posted by pomelo-nwu almost 2 years ago
@LeaveZzz 直接使用给canvas 设置 background 不就可以了嘛,为什么要用一个「图片节点」作为底图,逻辑有点奇怪
抱歉问题没有描述清楚,该图片节点是一张平面室内扫描图,有指定宽高且在g6坐标系中位置固定,滚轮滑动时需要同其他节点一样缩放,给canvas 设置 background不能满足需求。
posted by LeaveZzz almost 2 years ago
有 combo 的图,节点、combo、edge 的前后关系是受控的,所以通过 toBack toFront 都会失效。
如果是一张背景图且需要跟随画布缩放滚动,可以在 graph 的根 group 加图片试试
const bg = graph.getGroup().addShape('image', { attrs: {} }) // 其他配置省略
bg.toBack()
只需要在 graph render 之后加一次
posted by Yanyan-Wang almost 2 years ago
有 combo 的图,节点、combo、edge 的前后关系是受控的,所以通过 toBack toFront 都会失效。
如果是一张背景图且需要跟随画布缩放滚动,可以在 graph 的根 group 加图片试试
const bg = graph.getGroup().addShape('image', { attrs: {} }) // 其他配置省略 bg.toBack()
只需要在 graph render 之后加一次
感谢解答!
posted by LeaveZzz almost 2 years ago
@LeaveZzz 如果有帮助,还望给我们项目点个赞🌟哈
posted by pomelo-nwu almost 2 years ago