2017-09-12 125 views
0

是否可以使用three.jsOrthographicTrackballControls与Angular 4?我试着用:three.js带有角度的OrthographicTrackballControls

npm install --save three-orthographic-trackball-controls 

而且在我的组件:

import { OrthographicTrackballControls } from 'three-orthographic-trackball-controls'; 

我没有成功,就如何做到这一点不知道。我找到了解决方案OrbitControls,但使用另一个npm包和RequireJS。任何想法来解决这个问题将是有益的。提前致谢。

回答

0

见采用了棱角分明+ three.js所包括OrbitControls和ColladaLoader的工作例如:https://github.com/makimenko/angular-three-examples

目前,three.js所例子并不纳入一个模块,并利用它们在角打字稿代码可能是有点棘手。之一的溶液/解决方法可以是:

首先,包括依赖关系:

three 
@types/three 

其次,进口在组分:

import * as THREE from 'three'; 
import "./js/EnableThreeExamples"; 
import "three/examples/js/controls/OrbitControls"; 
import "three/examples/js/loaders/ColladaLoader"; 

在scene.component.ts替换OrbitControls到OrthographicTrackballControls。很可能相机的特性也应该调整。

this.controls = new THREE.OrbitControls(this.camera); 
this.controls.rotateSpeed = 1.0; 
this.controls.zoomSpeed = 1.2; 
this.controls.addEventListener('change', this.render); 

希望这可以帮助你开始。它还显示了一个替代解决方案(直接访问three.js模块中的原始示例,而无需安装额外的NPM软件包)。