Forge Viewer - Markups - можем ли мы получить координаты xy текущего выделения?

Я использую расширение разметки, чтобы рисовать в моем средстве просмотра, после рисования, при выборе события разметки, могу ли я получить его центральные координаты текущего выделения или любые координаты внутри него? если нет, по крайней мере, могу ли я получить dbId за текущим выбором?

заранее спасибо


comment
Я попытался поставить var pos = markup.markups [0] .getClientPosition (). Это правильное решение?   -  person A DEv    schedule 03.02.2020


Ответы (1)


Yelp ~ это так, и см. Также:

// Get the markup's position in browser pixel space. the (0,0) is top left
Markup#getClientPosition()
// Get the markup's bounding rect in browser pixel space.

Markup#getClientSize()
// get the markup's bounding rect in browser pixel space, including the stroke width

Markup#getBoundingRect()

Кстати, чтобы получить dbId в пределах разметки, вы можете сделать это:

  1. Получить BoundingRect разметки в пиксельном пространстве браузера
  2. Преобразуйте координаты вершин прямоугольника в трехмерное пространство зрителя с помощью Viewer3D # clientToWorld
  3. Выполните коллизию ограничивающего прямоугольника, чтобы определить пересекающуюся сетку для dbId, см. Пример здесь: https://forge.autodesk.com/blog/custom-window-selection-forge-viewer-simpler-extension
person Eason Kang    schedule 05.02.2020