2

下面的代码在 x 和 z 坐标平面上为我绘制了一圈 3d 球体对象。

 double radiusCircle =0.5;
 double i;
 double j;

 for(i = 0.0f;i<6.0f;i+=0.2f){
     sphere1 = new Sphere;
     sphere1->position.x = radiusCircle *cos(i * (2.0 * 3.14) /6)+4;
     sphere1->position.z = radiusCircle *sin(i * (2.0 * 3.14) / 6 )+2;
 }

我也试图将它们堆叠在 y 轴上,但无法正确处理。我想知道是否有人可以帮助我这样做。

基本上,我想要上面的代码在一个圆圈中绘制 30 sphere1,但我也希望它有 4 高。

4

1 回答 1

0
 double radiusCircle =0.5;
 double i;
 double j;


for (y = 0; y < 4; y++) {
     for(i = 0.0f;i<6.0f;i+=0.2f){
         sphere1 = new Sphere;
         sphere1->position.x = radiusCircle *cos(i * (2.0 * 3.14) /6)+4;
         sphere1->position.z = radiusCircle *sin(i * (2.0 * 3.14) / 6 )+2;
         sphere1->position.y = sphere1.radius * 2 * y; // <-- assign position.y to the sphere height
     }
}
于 2013-04-29T04:49:39.080 回答