繁体   English   中英

如何在 Autodesk Viewer 中旋转

[英]How to rotate in Autodesk Viewer

我正在使用 GuiViewer3D 在我的 angular 应用程序上查看 3d 文件。 它加载正确,但我只能从右上角的立方体视图旋转。 拖动屏幕上的任何其他位置都不会执行任何操作(例如在在线查看器中)。 我尝试编写一个扩展并将其放入加载方法中,但仍然什么都不做。 我不确定这是否是一项功能,如果不是,我是否正确实施了轮换:

    let nav = this.viewer.navigation;
    let up = nav.getCameraUpVector();
    let axis = new THREE.Vector3(0, 0, 1);
    let speed = 10.0 * Math.PI / 180;
    let matrix = new THREE.Matrix4().makeRotationAxis(axis, speed * 0.1);

    let pos = nav.getPosition();
    pos.applyMatrix4(matrix);
    up.applyMatrix4(matrix);
    nav.setView(pos, new THREE.Vector3(0, 0, 0));
    nav.setCameraUpVector(up);

另外,我在在线查看器上看到有一个工具栏(在图片的底部),可以让你做不同的事情。 Autodesk 是否提供这些按钮/功能(即基本工具栏)或者我们是否打算制作自定义功能? 我找不到任何有关它的文档。

在此处输入图像描述

编辑:这是查看器的 .ts 文件中的代码(未设置扩展名):

 let  viewerOptions = {
      env: 'AutodeskProduction',
      api: 'derivativeV2',  // for models uploaded to EMEA change this option to 'derivativeV2_EU'
      getAccessToken: function(onTokenReady) {
          var token = 'TOKEN';
          var timeInSeconds = 3600; // Use value provided by Forge Authentication (OAuth) API
          onTokenReady(token, timeInSeconds);
      }
    };
      Autodesk.Viewing.Initializer(viewerOptions, () => {
        let config3d = {
          extensions: ['MyExtension'],
        }
        let viewer = new Autodesk.Viewing.GuiViewer3D(this.container.nativeElement, config3d);
        viewer.start();
        Autodesk.Viewing.Document.load(this.urn, function (doc) {
          let viewables = doc.getRoot().search({ 'type': 'geometry' });
          viewer.loadDocumentNode(doc, viewables[1]);
          
        }, this.onDocumentLoadFailure);
        
      });

默认情况下,查看器应该具有旋转和工具栏( 遵循本教程)。 根据您的描述,您似乎有一个基本的 Three.js 查看器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM