Как реализовать средство просмотра агрегатов моделей Forge Autodesk? - PullRequest
0 голосов
/ 12 июня 2019

В настоящее время я прохожу стажировку в компании, специализирующейся на BIM.Моя задача до сих пор состоит в том, чтобы внедрить программу просмотра Forge Autodesk, подходящую для агрегирования и отображения нескольких моделей.Мне удалось написать работающее средство просмотра и найти предполагаемый способ агрегирования моделей, но я не могу понять, как заставить их работать вместе.

Я уже реализовал средство просмотра, следуя Forge.Учебник Autodesk и статья в блоге Forge Autodesk о статье о просмотре нескольких моделей с помощью кода, который я пытаюсь интегрировать в программу просмотра, на данный момент безуспешно.

Программа просмотра, которую я реализовал: http://learnforge.autodesk.io/#/

Предполагаемый способ отображения агрегированных моделей: https://forge.autodesk.com/blog/supporting-multiple-models-new-modelstructurepanel

Я должен иметь возможность выбирать и отображать несколько загруженных моделей в одном средстве просмотра (например, модель для здания и модель для трубы).сети).Тем не менее, я не могу понять, как этот скрипт должен быть добавлен в мой зритель.Я уже пытался связаться с автором, но он ответил мне, что он больше не работает с Autodesk, и попросил меня обратиться в службу поддержки Forge по моей проблеме.

Заранее спасибо!

1 Ответ

0 голосов
/ 13 июня 2019

В целом, для упрощения агрегирования моделей нужно будет загрузить их соответственно:

viewer.start(model1URL, options); //first model
...
viewer.loadModel(model2URL, options) //second model
... //more models

См. Простой живой пример здесь

Как уже упоминалось в статье Филиппа, при работе с несколькими моделями вам нужно будет подписаться на разные события, а не на одну модель, такую ​​как AGGREGATE_SELECTION_CHANGED_EVENT, Autodesk.Viewing.AGGREGATE_ISOLATION_CHANGED_EVENT, Autodesk.Viewing.AGGREGATE_FIT_TO_VIEW_EVENT и т. Д.

А начиная с Viewer v6, встроенный model browser намного лучше справляется с несколькими моделями и почти охватывает функции, описанные в статье - вы можете посмотреть пример кода и найти собственное расширение: enter image description here

...