0
我需要通過創建幾個圓柱體然後使用Three.js庫將它們旋轉到不同的方向來創建一個球體。我已經嘗試了循環2個餅圖,它改變了旋轉軸的設置,但它不起作用。我該怎麼辦 ?如何在three.js中創建指向多個方向的隨機對象
var cylinder;
var cylinderMaterial = new THREE.MeshPhongMaterial(
{ color: 0x5500DD,
specular: 0xD1F5FD,
shininess: 100 });
var cylinderGeo = new THREE.CylinderGeometry(3, 3, 500, 32);
var cylinder = new THREE.Mesh(cylinderGeo, cylinderMaterial);
var untransformedCylinder = cylinder.clone();
console.log("Untransformed cylinder matrix:")
console.log(untransformedCylinder.matrix);
scene.add(untransformedCylinder);
var maxCorner = new THREE.Vector3( 1, 1, 1);
var minCorner = new THREE.Vector3(-1, -1, -1);
var cylAxis = new THREE.Vector3().subVectors(maxCorner, minCorner);
cylAxis.normalize();
var theta = Math.acos(cylAxis.y);
var rotationAxis = new THREE.Vector3(1, 0, 0);
rotationAxis.normalize();
cylinder.matrixAutoUpdate = false;
cylinder.matrix.makeRotationAxis(rotationAxis, theta);
console.log("Theta: " + theta);
console.log(" cos: " + Math.cos(theta));
console.log(" sin: " + Math.sin(theta));
console.log("Transformed cylinder matrix:")
console.log(cylinder.matrix);
scene.add(cylinder);