2014-02-04 7 views
0

говорят, что у меня есть массив x сферных сеток, которые я хочу добавить к сцене таким образом, чтобы все объекты в совокупности выглядели как большая сфера. как бы я это сделал?Объекты карты за пределами сферы

Я могу сопоставить их по кругу, но трехмерная часть несколько сложнее.

это код им использовать, чтобы привлечь их в круг образом:

var theta = 0; 
var rad = 5 * objectsToAddToScene.length; 

for (var i = 0; i < objectsToAddToScene.length; i++) { 

    var obj = objectsToAddToScene[i]; 

    theta = ((Math.PI * 2)/objectsToAddToScene.length) * i; 

    obj.position.x = Math.sin(theta) * rad; 
    obj.position.y = -Math.cos(theta) * rad; 

    Three.addObjToScene(obj); 
}; 

вид такой же, как этот пример http://threejs.org/examples/webgl_interactive_cubes_gpu.html но со сферой, и только размещение объектов на внешней границе

ответ

2

Один из способов - позволить three.js сделать это за вас.

var geometry = new THREE.SphereGeometry(radius, n, n/2); 
geometry.mergeVertices(); 

, а затем использовать geometry.vertices для ваших позиций.

В качестве альтернативы, вы можете использовать IcosahedronGeometry(radius, n);

three.js r.65

+0

Прохладный, спасибо, я сделаю снимок. – BuildingJarl

Смежные вопросы