Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 有没有办法从Audtodesk forge API中提取模型的高度、宽度、长度度量和体积?_Javascript_Java_Autodesk Forge_Autodesk Viewer - Fatal编程技术网

Javascript 有没有办法从Audtodesk forge API中提取模型的高度、宽度、长度度量和体积?

Javascript 有没有办法从Audtodesk forge API中提取模型的高度、宽度、长度度量和体积?,javascript,java,autodesk-forge,autodesk-viewer,Javascript,Java,Autodesk Forge,Autodesk Viewer,我正试图开发一个网站,可以提取长度,宽度,高度和体积的模型,这是在步骤和stl扩展格式与autodesk forge API。我成功地制作了将step文件转换为svf的程序,并在3d viewer上设置了模型,但我无法获得所需的测量值。先谢谢你 要提取上面提到的数据,可能需要检索网格信息。首先,据我所知。以下是访问网格数据并将其从Forge碎片信息转换为网格数据的类似问题: 在从Forge片段获得THREE.Mesh后,根据我的经验,您可以通过编程方式从网格的顶点或面计算所需的内容 此外,在这种

我正试图开发一个网站,可以提取长度,宽度,高度和体积的模型,这是在步骤和stl扩展格式与autodesk forge API。我成功地制作了将step文件转换为svf的程序,并在3d viewer上设置了模型,但我无法获得所需的测量值。先谢谢你

要提取上面提到的数据,可能需要检索网格信息。首先,据我所知。以下是访问网格数据并将其从Forge碎片信息转换为网格数据的类似问题:

在从Forge片段获得
THREE.Mesh
后,根据我的经验,您可以通过编程方式从网格的顶点或面计算所需的内容

此外,在这种情况下,模型迭代可能会有帮助,因为模型迭代可能会损害应用程序的性能。JavaScript在现代浏览器的单线程中运行,在计算过程中,应用程序的UI可能会挂起。因此,建议使用web工作为在分离线程中执行的脚本运行计算脚本


希望对您有所帮助。

三网格的计算区域不是forge特定的,因此您可以只查找一般的three.js主题,例如。请注意,在执行任何计算之前,您的方法需要在查看器中加载模型,因此无法实现自动化,这一点很重要,我不确定这是否是您正在寻找的工作流


。。。step和stl是非常通用的格式,因此您可以找到第三方库,这些库允许您直接在这些原始文件上执行相同的计算,从而实现逻辑服务器端,以便在加载模型或甚至不加载模型时直接获得信息。另一种实现方法是使用将模型导出到.obj,但每次导出需要花费1个云积分。希望对您有所帮助

您是否尝试过查看器工具栏上的测量工具?图片的中间有标尺图标的按钮:<代码>https://developer.doc.autodesk.com/bPlouYTd/48/_images/overview1.jpg。或者,您希望通过访问网格信息以编程方式执行此操作。?我希望通过编程方式获得它。因为我需要根据这个方法开发其他逻辑。谢谢你的回复。我对音量有了概念。但是你能给我简单解释一下如何得到3.mesh的面积吗?正如Philippe所说,没有直接的方法或API来计算你在Forge viewer中提到的东西,不幸的是,这不是查看器的规范。然而,你可以自己解决这个问题,自己计算。计算面积的关键点是在将网格数据从Forge片段转换为“THREE.mesh”的过程中重建“THREE.Face3”。之后,您可以通过Philippe提供的链接计算面积。希望这有帮助。顺便说一句,我提供的链接()说明了如何在“THREE.Mesh”转换期间重建“THREE.Face3”。请检查一下。谢谢康奕迅和菲利普·利夫斯玛。根据您的指示,我从three.mesh和three.face获得了所有参数。谢谢你的帮助。谢谢你的回复。但你能给我一些python、java或javascript的参考库吗?我自己也不知道一个具体的参考库,你需要自己研究一下。。。从谷歌搜索开始。