从 Forge 查看器裁剪特定 room/area
crop particular room/area from the forge viewer
我们在我们的网络应用程序中使用 forge viewer(v7)。
我们的要求是从 forge 查看器中裁剪特定的 room/area。例如,如果我们在 Forge 查看器中显示了一个房屋模型,那么如果用户 select 一个 厨房 (来自菜单或导航栏),那么查看器应该只显示 厨房区域(包括其所有物品,如橱柜、燃烧器、冰箱、水槽等)和所有其他 objects/sections 应隐藏。同样适用于 卧室、浴室等 。它仅供在 运行 时查看,不用于任何自动化。
对我们如何实现这一点有什么帮助吗?
您可以使用 SectionExtension - 此处提到:
Create a section plane leaning against one object
记录于此:
https://forge.autodesk.com/en/docs/viewer/v7/reference/Extensions/SectionExtension/
这还有一个名为 setSectionBox(box) 的函数,它可能最适合您的需求。
如果你能计算出房间的范围,那么你就可以将这些值传递给它。
这是一篇关于将房间相关信息提取到 SVF 的博客 post:
https://forge.autodesk.com/blog/new-rvt-svf-model-derivative-parameter-generates-additional-content-including-rooms-and-spaces
另一种选择是找到给定房间内的所有物品并隐藏其他所有物品。如果每个对象都有一个 属性 指定它们所在的房间,那么您可以使用 Viewer.search()
我们在我们的网络应用程序中使用 forge viewer(v7)。
我们的要求是从 forge 查看器中裁剪特定的 room/area。例如,如果我们在 Forge 查看器中显示了一个房屋模型,那么如果用户 select 一个 厨房 (来自菜单或导航栏),那么查看器应该只显示 厨房区域(包括其所有物品,如橱柜、燃烧器、冰箱、水槽等)和所有其他 objects/sections 应隐藏。同样适用于 卧室、浴室等 。它仅供在 运行 时查看,不用于任何自动化。
对我们如何实现这一点有什么帮助吗?
您可以使用 SectionExtension - 此处提到: Create a section plane leaning against one object
记录于此: https://forge.autodesk.com/en/docs/viewer/v7/reference/Extensions/SectionExtension/
这还有一个名为 setSectionBox(box) 的函数,它可能最适合您的需求。 如果你能计算出房间的范围,那么你就可以将这些值传递给它。
这是一篇关于将房间相关信息提取到 SVF 的博客 post: https://forge.autodesk.com/blog/new-rvt-svf-model-derivative-parameter-generates-additional-content-including-rooms-and-spaces
另一种选择是找到给定房间内的所有物品并隐藏其他所有物品。如果每个对象都有一个 属性 指定它们所在的房间,那么您可以使用 Viewer.search()