#visual-studio-code #powerbi #autodesk-forge #forge
Вопрос:
Недавно я работал над этим хранилищем https://github.com/xiaodongliang/forgeviewer_embed_in_powerbi_report чтобы создать пользовательский визуальный элемент в Power BI для визуализации проблем, извлеченных из API Bim track.
Идея заключалась в том, чтобы визуализировать их в ассоциации с КОМНАТАМИ модели. Для этого я работал с файлом NWC, поэтому я решил экспортировать комнаты в виде геометрии.
Что я хотел бы сделать сейчас, так это выделить комнаты, если из таблицы выбрана связанная проблема. Проблема в том, что когда я выбираю проблему из таблицы, в дереве выбора я вижу выделенное имя родительского объекта (КОМНАТА) вместо дочернего (сплошное), и я думаю, что именно поэтому я не могу достичь своей цели (если нет, пожалуйста, поправьте меня).
Кто-нибудь знает, как это сделать?
Ответ №1:
Если вы хотите изменить свой выбор (FIRST_OBJECT, LAST_OBJECT, LEAF_OBJECT)
, вы можете изменить настройки выбора просмотра, чтобы проверить:
Если вы хотите добиться этого программно :
Viewer.setSelectionMode();
это тоже могло бы вам помочь.
Ответ №2:
Если я правильно понял, вы хотите выделить дочерний элемент (который содержит сетку) вместо родительского.
Выделение (изоляция) объекта выполняется /forgePowerbiView/src/visual.ts
с помощью этого кода:
const dbIds = options.dataViews[0].table.rows.map(r =>
<number>r[0].valueOf());
console.log('dbIds: ' dbIds)
this.forge_viewer.showAll();
this.forge_viewer.impl.setGhostingBrightness(true); //for isolate effect
this.forge_viewer.isolate(dbIds);
Взгляните на эту ссылку, перечисляющую конечные узлы в окне просмотра. Это поможет вам получить dbIds
то, что вы хотите изолировать.