Autodesk Forge Viewer получает данные модели AE C по пути svf - PullRequest
0 голосов
/ 19 марта 2020

Мы используем Autodesk Forge Viewer с React js. Открываем модель с путем сохраненного svf.

Я хочу добавить AE C .LevelsExtension и AE C .MinimapExtension. Он работает правильно, когда я получаю Ae c modelData с urn моделей, но мне нужно получить его с svf path. Кто может помочь мне найти решение, как я могу это сделать?

Я открываю модель с этим кодом

const Autodesk = window.Autodesk;
const options = {env: 'Local'};
const config3d = {
  extensions: ["Autodesk.AEC.LevelsExtension"],
};

const url = window.location.search;

const init_div = document.getElementById('init_div');
const viewer = new Autodesk.Viewing.Private.GuiViewer3D(init_div, config3d);
const svf_path = `/${url.replace('?', 'storage/').rece(/%20/g, ' ')}`;


Autodesk.Viewing.Initializer(options, () => {
  viewer.start(svf_path, options);
}); 

1 Ответ

1 голос
/ 19 марта 2020

Пожалуйста, проверьте этот блог здесь https://forge.autodesk.com/blog/consume-aec-data-svfs-your-own-server. Он показывает четкий путь обхода, попробуйте:

  1. Сохраните где-нибудь манифест модели и переопределите функцию getItem:

    Autodesk.Viewing.endpoint. getItemApi = (конечная точка, производнаяUrn, api) => {вернуть 'URL-адрес вашей папки svf' + decodeURIComponent (производныйUrn.split ('ресурс') [1])}

  2. Создать объект документа себя

    const viewerDocument = новый Autodesk.Viewing.Document (manifestJsonObject);

  3. Вызовите загрузку данных модели AE C перед загрузкой модели

    viewerDocument .downloadAecModelData ();

После этого вы можете использовать расширения, связанные с AE C, как обычно.

...