繁体   English   中英

伪造查看器 - 标记相机更改问题

[英]forge Viewer - Markup camera change issue

在我的查看器中,我使用云模式绘制了一个标记,并且在相机更改事件期间,我无法在标记移动时将关联标签与标记映射。 为了使这项工作,我存储坐标,而相机更改事件我使用 worldToClient 来查找新坐标,但这不起作用

所以问题是找到原始世界坐标。 我尝试了以下多种方法,但似乎没有任何方法对我有用。 非常感谢这方面的帮助。 只是出于对此的想法,我附上了相机更换前后模型的屏幕截图。

/*** option 1***/
worldCoord = markup.markups[0].generateBoundingBox().max;
/*** option 2***/
var coords = viewer.impl.clientToViewport(pos.x, pos.y);
worldCoord = coords.unproject(viewer.impl.camera)
/*** option 3***/
worldCoord = markup.markups[0].getClientPosition()
/*** option 4***/
worldCoord = viewer.clientToWorld(pos.x,pos.y,true);
/***option 5***/
worldCoord = markup.markups[0].getBoundingRect()

最后我明白了。

我们可以使用您的标签存储图层名称信息,并使用以下代码在您的相机更改事件中获取它。

position = markup.svgLayersMap[layerName].markups[0].getClientPosition()

希望这有助于某人

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM