繁体   English   中英

使用外部按钮控制 Autodesk-forge 查看器

[英]Controlling the autodesk-forge viewer with external buttons

目前,我正在将 forge 添加到公司内部网站,在那里我们可以查看我们已经建造或正在建造的所有机器。 该网站的工作原理是这样的:用户选择一个机器号,所有关于机器的信息都会弹出。 这包括机器内的工作站,以及每个工作站内的所有单独零件。 我的任务是将 autodesk-forge 添加到网站。 目前我已经成功使用了autodesk-forge查看器,这样无论何时选择一台机器,用户只要按下一个按钮,就会弹出整台机器的model进行查看。 下一步是让查看器由网站上的外部按钮控制。 我们希望它这样工作:

  1. 用户选择了一台机器。 之后会弹出机器中每个工位内的工位、零件等所有信息(即完成)。

  2. 用户单击“查看模型”按钮,该按钮将使用伪造查看器使机器在网站上弹出(这已由我完成)。

  3. 一旦带有 model 的伪造查看器出现在屏幕上,我们希望查看器能够通过站点上已有的外部按钮进行控制。

例如,如果有一台名为 MC-000 的机器,并且在该机器中有一个名为 ST010 的工位,则该工位内有许多零件,例如一个齿轮。 当用户正在查看机器 MC-000 时,我们希望能够单击已经制作好的外部按钮(例如 ST010),查看器将自动放大并突出显示机器内的该站点。 我们也希望机器内的零件也一样。 当一台机器被挑选出来时,它的工位以及工位内的零件已经在我们的网站上打印出来了。 我们现在希望能够单击车站或零件,并让查看器自动放大该零件#或车站#。 我在这里找到了类似的代码示例。 在此示例中,查看器的部分由不在查看器内的按钮控制。 例如,当单击“引擎”按钮时,查看器将自动放大引擎。 此示例的问题在于,所有位置都被硬编码到代码中,这意味着引擎的 position 已经在代码中。 我不能这样做,因为我们有许多不同的机器和数千个零件,所以我不可能将它们全部硬编码。这样的事情可以用 autodesk-forge 查看器来做吗? 任何帮助或指导将不胜感激。 干杯!

编辑**

任何关于我如何更改查看器放大位置的指导都将不胜感激,并将有很大帮助。 目前,我有方法 go 从 GET:urn/metadata/:guid http 请求中获取 dbid 和外部 objectId。 再次感谢!

看来您确实具有指定的引擎 dbid,并且您可以将查看器功能与外部代码链接起来。 查看器的默认双击行为是指向鼠标指针碰撞的项目 select。 然后相机放大(或缩小)该项目以使其适合视图。

您可以使用:

select

适合查看

实现模拟交互。

例如在 Typescript 中:

// Your dbid is for example 1234
this.viewer.select(1234);
this.viewer.fitToView([1234]);

暂无
暂无

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

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