Fix:修复当思维导图全部移除可视区域后小地图中的指示器也会移除小地图区域的问题

This commit is contained in:
wanglin2 2023-08-02 18:48:08 +08:00
parent 8fc7f7d32c
commit 0bdf9f3add

View File

@ -55,19 +55,28 @@ class MiniMap {
bottom: 0 bottom: 0
} }
viewBoxStyle.left = viewBoxStyle.left =
Math.max(0, (-_rectX / _rectWidth) * actWidth) + miniMapBoxLeft + 'px' Math.max(0, (-_rectX / _rectWidth) * actWidth) + miniMapBoxLeft
viewBoxStyle.right = viewBoxStyle.right =
Math.max(0, ((_rectX2 - origWidth) / _rectWidth) * actWidth) + Math.max(0, ((_rectX2 - origWidth) / _rectWidth) * actWidth) +
miniMapBoxLeft + miniMapBoxLeft
'px'
viewBoxStyle.top = viewBoxStyle.top =
Math.max(0, (-_rectY / _rectHeight) * actHeight) + miniMapBoxTop + 'px' Math.max(0, (-_rectY / _rectHeight) * actHeight) + miniMapBoxTop
viewBoxStyle.bottom = viewBoxStyle.bottom =
Math.max(0, ((_rectY2 - origHeight) / _rectHeight) * actHeight) + Math.max(0, ((_rectY2 - origHeight) / _rectHeight) * actHeight) +
miniMapBoxTop + miniMapBoxTop
'px'
if (viewBoxStyle.top > miniMapBoxTop + actHeight) {
viewBoxStyle.top = miniMapBoxTop + actHeight
}
if (viewBoxStyle.left > miniMapBoxLeft + actWidth) {
viewBoxStyle.left = miniMapBoxLeft + actWidth
}
Object.keys(viewBoxStyle).forEach((key) => {
viewBoxStyle[key] = viewBoxStyle[key] + 'px'
})
this.removeNodeContent(svg) this.removeNodeContent(svg)
return { return {
svgHTML: svg.svg(), // 小地图html svgHTML: svg.svg(), // 小地图html