Autodesk Forge Design Automation / API-интерфейс для определения модели - программа для просмотра кэширующих файлов SVF - PullRequest
0 голосов
/ 16 января 2020

Я использую API автоматизации проектирования для генерации модели, затем я не хочу загружать видимое в программу просмотра, я использую v6. Когда я делаю это в первый раз, он работает нормально, но затем программа просмотра всегда будет продолжать загружать один и тот же файл .svf, я попытался удалить манифест, я передаю значение true параметру x-ads-force и я мы включили заголовок If-Modified-Since при инициализации средства просмотра ...

im, используя. net SDK

DerivativesAPI.Translate(Job, True)

Forge Javascript ....

var viewer;

function showModel(AccessToken, urn) {
var options = {
    env: 'AutodeskProduction',
    accessToken: AccessToken,
    api: 'derivativeV2'    // for models uploaded to EMEA change this option to 'derivativeV2_EU'
};
var documentId = 'urn:' + urn;
Autodesk.Viewing.endpoint.HTTP_REQUEST_HEADERS['If-Modified-Since'] = 'Sat, 29 Oct 1994 19:43:31 GMT';
Autodesk.Viewing.Initializer(options, function onInitialized() {
    Autodesk.Viewing.Document.load(documentId, onDocumentLoadSuccess, onDocumentLoadFailure);
});
}

function onDocumentLoadSuccess(doc) {

// A document contains references to 3D and 2D geometries.
var geometries = doc.getRoot().search({ 'type': 'geometry' });
if (geometries.length === 0) {
    console.error('Document contains no geometries.');
    return;
 }

// Choose any of the avialable geometries
var initGeom = geometries[0];

// Create Viewer instance
var viewerDiv = document.getElementById('MyViewerDiv');
var config = {
    extensions: initGeom.extensions() || []
};
viewer = new Autodesk.Viewing.Private.GuiViewer3D(viewerDiv, config);

// Load the chosen geometry
  var svfUrl = doc.getViewablePath(initGeom);
   var modelOptions = {
    sharedPropertyDbPath: doc.getPropertyDbPath()
   };
   viewer.start(svfUrl, modelOptions, onLoadModelSuccess, onLoadModelError);

   }


function onDocumentLoadFailure(viewerErrorCode) {
console.error('onDocumentLoadFailure() - errorCode:' + viewerErrorCode);
}


function onLoadModelSuccess(model) {
console.log('onLoadModelSuccess()!');
console.log('Validate model loaded: ' + (viewer.model === model));
console.log(model);
}


function onLoadModelError(viewerErrorCode) {
console.error('onLoadModelError() - errorCode:' + viewerErrorCode);
 }

Ответы [ 2 ]

0 голосов
/ 22 января 2020

Это потому, что я работал в режиме отладки из Visual Studio, переход в режим выпуска решил проблему

0 голосов
/ 17 января 2020

Пожалуйста, измените эту строку для загрузки других SVF:

// Choose any of the avialable geometries
var initGeom = geometries[0];

Чтобы включить среду выполнения, вы можете использовать Autodesk.DocumentBrowser

var config = {
    extensions: ['Autodesk.DocumentBrowser'].concat( initGeom.extensions() )
};
viewer = new Autodesk.Viewing.Private.GuiViewer3D(viewerDiv, config);

enter image description here

Наконец, обратите внимание на Publi sh Настройки модели RVT, Model Derivative API будет экспортировать наборы представлений, выбранные в Publi sh Настройки только. Если нет предопределенных наборов видов для Publi sh Settings , он будет использовать 3D-вид по умолчанию для экспорта по умолчанию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...