首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在ThreeJS中将网格旋转90度?

如何在ThreeJS中将网格旋转90度?
EN

Stack Overflow用户
提问于 2015-04-28 07:09:23
回答 5查看 105.2K关注 0票数 50

我有一个网格,我想在三个JS中旋转90度。以下是当前情况的图像:

我希望选定的网格平行于大网格旋转。我试着像这样旋转矩阵:

代码语言:javascript
复制
matrix =   new THREE.Matrix4().makeRotationX(1.57)

但是网格会进入奇怪的旋转状态。有没有更简单的方法把它旋转90度?

EN

回答 5

Stack Overflow用户

发布于 2015-05-11 01:01:49

threejs旋转使用弧度(如您所知)

你可以使用这个

代码语言:javascript
复制
mesh.rotation.x = Math.PI / 2;

代码语言:javascript
复制
mesh.rotation.set(new THREE.Vector3( 0, 0, Math.PI / 2));
票数 68
EN

Stack Overflow用户

发布于 2016-04-25 19:01:11

您可以使用以下函数旋转对象:

代码语言:javascript
复制
function rotateObject(object, degreeX=0, degreeY=0, degreeZ=0) {
   object.rotateX(THREE.Math.degToRad(degreeX));
   object.rotateY(THREE.Math.degToRad(degreeY));
   object.rotateZ(THREE.Math.degToRad(degreeZ));
}

// usage:
rotateObject(myPlane, 40, 30, 20);
票数 28
EN

Stack Overflow用户

发布于 2015-04-28 15:07:27

假设meshToRotate需要在X轴上旋转90度。然后执行以下操作。

代码语言:javascript
复制
var meshToRotate = new THREE.Mesh( geometry, material );

//Rotating mesh by 90 degree in X axis.     
meshToRotate.rotateX( Math.PI / 2 );
票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29907536

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档