繁体   English   中英

伪造查看器中对象的X,Y,Z坐标

[英]X,Y,Z coordinates of an object in forge viewer

我正在尝试在Autodesk Forge中的单个元素上绘制svg / pointcloud点。 如何获取元素的(x,y,z)坐标。

有没有一种方法可以提取单个对象的位置,以便我们获得世界空间中的位置矢量。

到目前为止我尝试过的是:

  • 我似乎无法理解如何使用frags = viewer.impl.getRenderProxy( viewer.model, fragId )使用此线程中描述的positions数组

    positions = frags.geometry.vb

  • Autodesk.ADN.Viewing.Extension.MeshData.js为我提供了组成该元素的三角形(网格/碎片)的顶点。

我创建了一个自包含的扩展程序,可以将其添加到查看器中,并说明如何获取组件位置: 在此处输入图片说明

检查仓库和TransformationExplorerExtension

负责提取转换矩阵的代码为:

 getFragmentWorldMatrixByNodeId(nodeId) { let result = { fragId: [], matrix: [], }; let viewer = this.viewer; this.tree.enumNodeFragments(nodeId, function (frag) { let fragProxy = viewer.impl.getFragmentProxy(viewer.model, frag); let matrix = new THREE.Matrix4(); fragProxy.getWorldMatrix(matrix); result.fragId.push(frag); result.matrix.push(matrix); }); return result; } 

暂无
暂无

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

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