问题标签 [autodesk-viewer]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
574 浏览

autodesk-forge - 在 Autodesk Viewer 中突出显示节点数组

问题:

我有一个节点数组,我想在动作发生时突出显示它们。

我尝试的解决方案

我曾尝试使用模型浏览器中的代码,但它似乎一次只接受一个 dbId。我试图遍历我的数组并调用它,但是完成后突出显示不起作用。

任何关于如何正确实施的建议都会有很大的帮助。

谢谢

0 投票
1 回答
342 浏览

ios - 如何在 iOS 中以离线模式渲染 Autodesk 模型?

我正在制作一个 ios 应用程序并使用 forge api 在 webview 中呈现模型。我正在使用 React Native,但我也对 Objective-c 的建议持开放态度。

我遇到的问题是在离线模式下渲染模型。该应用程序可以下载 svf 文件并保存在手机的磁盘上,但是我如何加载文件并在 webview 中呈现它?我发现 A360 应用程序可以在离线模式下渲染模型,但不确定它是否在 webview 中渲染。我还找到了 Autodesk.Viewing.FileLoader api,但无法弄清楚它,我没有找到一个例子。这是我尝试过的:

有人可以帮忙吗?

0 投票
1 回答
2357 浏览

autodesk-forge - 在 Autodesk Forge Viewer 中获取 THREE.Mesh 元素

我想在 Autodesk Forge Viewer 中获取元素的 THREE.Mesh 对象。这是代码:

返回的网格对象是一个 THREE.Mesh 对象,但几何和材质为空,因此无用。如何获得真正的 THREE.Mesh 对象?

谢谢你。

0 投票
1 回答
876 浏览

autodesk-forge - Autodesk Forge 查看器如何管理多个场景以选择多个元素

我想了解 Autodesk Forge 查看器如何将节点元素存储在多个 THREE.Scene 对象中。有几个场景:

每当在 Forge 查看器中选择一个元素时,它的 THREE.Mesh 对象就会添加到 viewer.impl.overlayScenes.selection.scene.children。然而它的边界几何总是为零,不像原始的 THREE.Mesh 对象在执行 geometry.computeBoundaryBox() 后会有边界

由于 Forge 元素的零边界,我不能使用 THREE.Raycaster 通过覆盖元素进行投影以在鼠标选择时获取它们的 dbId。我如何选择内部 dbId,因为它将获得外部 dbId?Forge 查看器不允许在单击外部对象时选择内部对象。如何在另一个元素中选择一个元素?

主要场景也有空的孩子。所有元素在哪里,它们如何在屏幕上呈现?

了解 Forge 查看器数据结构以获得完整的 API 控制将有更好的文档。我必须自己学习 Autodesk Forge 查看器的 viewer3D.js 和 wgs.js。

0 投票
1 回答
1258 浏览

autodesk-forge - 更改 Autodesk Forge 查看器隐藏元素的材质

我想更改被查看器隐藏的元素的材质 (THREE.MeshPhongMaterial)。默认隐藏元素仍然可见,但我想更改它们的透明度和颜色。

这是示例代码。我尝试更改主题颜色和材料,但没有成功:

但是,更新隐藏元素的材质后没有任何变化。如何解决。我想要具有不同颜色和透明度的自定义隐藏元素。

0 投票
1 回答
294 浏览

autodesk-forge - 从 3D 点获取 2D 位置

我有一个 THREE.Vector3,在查看器中具有位置 x、y、z 的网格。如何在画布上获得相应的 2D 点?我想在查看器中 3D 模型所在的同一位置放置一些 x、y。

0 投票
3 回答
1877 浏览

autodesk-forge - 在 Autodesk Forge 查看器中的元素下拾取

我想完成一个可以在 Three.js 中完成但不能在 Autodesk Forge 查看器中完成的功能。这是测试的链接:http: //app.netonapp.com/JavaScript/Three.js/select_inner_objects.html

要求是选择对象内的对象。这项工作可以在上面的演示中使用 THREE.Raycaster 来完成,使用 raycaster 来检测光线通过线上的所有元素。然后我可以在另一个对象后面或内部获取对象。

我在 Autodesk Forge 查看器中尝试了这个概念,但没有成功。这是代码:

我发现 Forge 查看器的viewer.impl.renderer().idAtPixel方法非常适合在拾取像素处获取元素。但是,我希望它做更多的事情,在拾取像素处选择所有元素(在下面或嵌套)。如何使用 Forge Viewer API 做到这一点?

0 投票
1 回答
250 浏览

svg - 以编程方式打开上下文菜单

我在使用 snap.svg 创建的查看器画布顶部有一个 svg 元素,因此我可以在这个 svg 层上为元素绘制名称标签。在我创建 svg 图层后,查看器对左键单击做出正常反应,但不再打开上下文菜单。如何以编程方式打开上下文菜单?我可以用 jQuery 捕捉点击事件并获取 x 和 y 位置。

我还尝试更改 .menu 和 svg 层的 z-index,但如果 svg 层位于顶部并显示 svg 元素,则它不会通过右键单击打开上下文菜单。

0 投票
1 回答
128 浏览

autodesk-forge - 使用 loadModel 时抛出的请求

我尝试使用查看器 API 来使用离线数据(SVF)。当我调用 loadModel 时,发送的任何请求如下。

这个请求是什么意思?是否检查数据是否正确?

0 投票
1 回答
88 浏览

autodesk-forge - 在完全私有的网络中使用查看器 API

我想在完全私有的网络中使用查看器 API,在这种情况下你有什么问题吗?

使用 loadModel 时抛出的请求