gpt4 book ai didi

javascript - 如何检查我的 Cytoscape.js 图形在平移和/或缩放后是否在 View 之外(甚至部分)?

转载 作者:行者123 更新时间:2023-11-29 20:43:04 26 4
gpt4 key购买 nike

我想检查我的图形是否在 View 之外,也许是在平移和/或缩放之后,以便我可以激活 Cytoscape 导航器。

例子:

这些是看不见的 enter image description here

enter image description here

但这不是: enter image description here

谢谢。

最佳答案

function isGraphOutOfView() {
const width = cy.width();
const height = cy.height();
const boundingBox = cy.elements().boundingbox();
const pan = cy.pan();
const zoom = cy.zoom();

return boundingBox.x1 * zoom + pan.x < 0
|| boundingBox.y1 * zoom + pan.y < 0
|| boundingBox.x2 * zoom + pan.x > width
|| boundingBox.y2 * zoom + pan.y > height;
}

编辑:使用renderedBoundingBox:

function isGraphOutOfView() {
const width = cy.width();
const height = cy.height();
const rbb = cy.elements().renderedBoundingbox();

return rbb.x1 < 0 || rbb.y1 < 0 || rbb.x2 > width || rbb.y2 > height;
}

关于javascript - 如何检查我的 Cytoscape.js 图形在平移和/或缩放后是否在 View 之外(甚至部分)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55057075/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com