下面的代码为我绘制了一个3d球体对象的圆圈,在x和z坐标平面上。
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。
答案 0 :(得分: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
}
}