Есть ли примеры, доступные для автоматической подделки, используя angular 8 для просмотра версии 7. * - PullRequest
0 голосов
/ 25 февраля 2020

Я не могу загрузить документ на основе урны в программе просмотра. Что-то не так во время публикации задания svf, это мой

 {
    "input": {
        "urn": "{{Urn}}",
        "compressedUrn": false
    },
    "output": {
        "destination": {
            "region": "us"
        },
        "formats": [
        {
            "type": "svf",
            "views": ["3d", "2d"]
        }]
    }
}

Я пытался реализовать средство просмотра во многих отношениях и всегда заканчивался этой ошибкой. Правильно ли загружается документ ??

Не удается прочитать свойство 'viewer' из неопределенного

export class ForgeAutodeskComponent {
  private viewer: Autodesk.Viewing.Viewer3D;
  async ngOnInit() {
    this.initViewer();

  }
  private async initViewer() {
    var options = {
      env: 'AutodeskProduction',
      api: 'derivativeV2',
      getAccessToken: this.getAccessToken
    };
    Autodesk.Viewing.Initializer(options, () => {
      let htmlDiv = document.getElementById('forgeViewer')
      let config3d = {

      }
      this.viewer = new Autodesk.Viewing.GuiViewer3D(htmlDiv, config3d);
      console.log(this.viewer);
      var startedCode = this.viewer.start();
      if (startedCode > 0) {
        console.error('Failed to create a Viewer: WebGL not supported.');
        return;
      }
      let documentId = 'urn:dXJuOmFkc2sub2JqZWN0czpvcy5vYmplY3Q6c2Fuei0yNC0wNS9kc3AtMS5ydnWQF0P=';
      Autodesk.Viewing.Document.load(documentId, onDocumentLoadSuccess, onDocumentLoadFailure);

      function onDocumentLoadSuccess(viewerDocument) {
        var defaultModel = viewerDocument.getRoot().getDefaultGeometry();
        console.log(this.viewer);
        this.viewer.loadDocumentNode(viewerDocument, defaultModel);
      }

      function onDocumentLoadFailure() {
        
      }

    });
  }

  private getAccessToken(onSuccess: any) {
    const access_token = ; // Access Token
    const expires_in = 86399;
    onSuccess(access_token, expires_in);
  }
}

Мне понадобится программа просмотра, так как я буду выполнять некоторые изменения свойств для него. - Я поместил файлы сценариев в индекс. html - Я получаю 0 для начального кода - Пробовал с Unpadded Base64 и Base64

Ответы [ 2 ]

0 голосов
/ 26 февраля 2020

У нас есть несколько образцов, и вы можете найти их в моем другом ответе здесь: Как интегрировать производную api модели (node.js) с angular 4?

0 голосов
/ 25 февраля 2020

Вы можете начать с просмотра проектов на github Autodesk. Там есть пример машинописи. Вы также можете начать обучение с learnforge . Если у вас есть некоторые знания Angular и машинописного текста, вам следует отрегулировать простой Javascript учебника так, чтобы он соответствовал компоненту Angular.

Вот код, с которого можно начать.

Component.ts

export class GenericViewerComponent implements OnInit {
  private viewer: Autodesk.Viewing.Viewer3D;
  async ngOnInit() {
    this.initViewer();

  }
  private async initViewer() {

    var options = {
      env: 'AutodeskProduction',
      api: 'derivativeV2', // for models uploaded to EMEA change this option to 'derivativeV2_EU'
      getAccessToken: null // get your 2 legged access token here instead of null (folow the turial)
    };

    Autodesk.Viewing.Initializer(options, () => {

      let htmlDiv = document.getElementById('forgeViewer')
      let config3d = {

      }

      this.viewer = new Autodesk.Viewing.GuiViewer3D(htmlDiv, config3d);

      var startedCode = this.viewer.start();
      if (startedCode > 0) {
        console.error('Failed to create a Viewer: WebGL not supported.');
        return;
      }
      console.log('Initialization complete, loading a model next...');

    });
  }
}

Компонент. html

<div id="forgeViewer"></div>

Также обязательно включите в свой индекс

<link rel="stylesheet" href="https://developer.api.autodesk.com/modelderivative/v2/viewers/7.*/style.min.css" type="text/css">
<script src="https://developer.api.autodesk.com/modelderivative/v2/viewers/7.*/viewer3D.min.js"></script>

. html

Удачи!

...