2015-04-27 22 views
19

Üç JS içinde 90 derece döndürmek istediğim bir ağım var. enter image description hereÜçJS'de bir ağı 90 derece nasıl döndürebilirim?

seçtiğim örgü büyük gözlü paralel olarak döndürülebilir istiyorum: İşte şimdiki durumun görüntüsüdür. Böyle matrisi dönen denedim:

matrix = new THREE.Matrix4().makeRotationX(1.57) 

Ama örgü garip rotasyonlar girer. Onu 90 derece döndürmenin daha kolay bir yolu var mı?

+2

object.rotation.y = THREE.Math.degToRad (90); – gaitat

cevap

5

X ekseninde meshToRotate'un 90 derece döndürülmesi gerektiğini varsayalım. Sonra aşağıdakileri yapın.

 var meshToRotate = new THREE.Mesh(geometry, material); 

     //Rotating mesh by 90 degree in X axis.  
     meshToRotate.rotateX(Math.PI/2); 
28

threejs rotasyon Radyan kullanır (Bildiğiniz gibi)

i oluşturulan ve kullanılan bu

mesh.rotation.x = Math.PI/2; 

ya yoktur

mesh.rotation.set(new THREE.Vector3(0, 0, Math.PI/2)); 
+1

Harika çalıştı. Teşekkürler! –

8

bir işlev kullanabilirsiniz projemde rotasyon. Bu işlevi kullanarak nesneyi döndürebilirsiniz.

function rotateObject(object,degreeX=0, degreeY=0, degreeZ=0){ 

    degreeX = (degreeX * Math.PI)/180; 
    degreeY = (degreeY * Math.PI)/180; 
    degreeZ = (degreeZ * Math.PI)/180; 

    object.rotateX(degreeX); 
    object.rotateY(degreeY); 
    object.rotateZ(degreeZ); 

} 


//such as rotating a plane ojbect 

rotateObject(myPlane, 40, 30 ,20); 
+5

NOT 'THREE.Math.degToRad()' veya 'THREE.Math.radToDeg()' –

İlgili konular