Autodesk Forge3D标注,用户在该页面,添加标注信息,记录下坐标数据,退出该页面,等到该用户下一次进入该页面,页面重载的时候,如何显示出用户上次标记的信息?
https://github.com/Autodesk-F...,用的是这个扩展包。
Markup3D.PinPoint.js:
constructor(viewer, worldPoint) {
......
this.activateLock3d(viewer);
this.setWorldPoint(worldPoint);
this.timeoutId = 0;
}
setWorldPoint({"x":32.04636390620801,"y":218.75012207031264,"z":13.843699405939578})为设置开始坐标
Markup3D.Label.js:
onMouseMove (event) {
if (this.parent.dragging) {
this.parent.setLeaderEndPoint({
x: event.clientX,
y: event.clientY
})
}
}
setLeaderEndPoint({"x":800, "y":500})设置结束坐标
如何在页面重载进入的时候,执行这方法,绘制自己的坐标点?或者是有其它方式操作?
可以通过
viewer.getState()
获取 Philippe MarkUp3D 的 Markup 信息,把这个信息记录到数据库里;之后重载模型后执行viewer.restoreState( viewstate )
就可以回复了,原因是因为载入 MarkUp3D 扩展后,你的 viewState 会多了一个叫Markup3D
的属性,在回复时 MarkUp3D 扩展会去读取这个属性将 Markup 回复到画面上,我的测试代码如下:数据结构:

希望对您有帮助