[英]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.