Совместные бумажные координаты

В моем приложении есть контроллер панорамирования, который прокручивает бумагу. Как я могу получить координаты того, что отображается, чтобы увидеть, находится ли элемент полностью на экране?

Спасибо Дениз

1 ответ

Вам нужно знать координаты (x, y, ширина, высота) бумажного элемента. x, y может быть scrollLeft, scrollTop, width а также height это размер элемента. Давайте назовем это "координатами клиента". Клиентские координаты такие же, как и на графике соединения, если на бумаге нет преобразований (например, масштаб). В противном случае вам нужно выполнить преобразование между клиентскими координатами и координатами графика.

Методы как paper.clientToLocalPoint(clientX, clientY) или же paper.clientToLocalRect(clientX, clientY, width, height) могу сделать работу.

Или в RappidJS вы можете просто позвонить getVisibleArea на joint.ui.PaperScroller плагин

Другие вопросы по тегам