程序上生成球体网格

cla*_*amp 26 3d mesh

我正在寻找一种生成球形网格的3d坐标的算法(伪代码),如下所示:

替代文字

水平和横向切片的数量应该是可配置的

Jon*_*han 36

如果有M行纬度(水平)和N行经度(垂直),则将点放在

(x,y,z)=(sin(Pi*m/M)cos(2Pi*n/N),sin(Pi*m/M)sin(2Pi*n/N),cos(Pi*m/M) ))

对于{0,...,M}中的每个m和{0,...,N-1}中的n,并相应地绘制点之间的线段.

编辑:可以根据需要将M调整1或2,因为您应该决定是否计算极点处的"纬度线"

  • @kiltek:这给出了(x,y,z)从0到1的值.要将它缩放到任何半径,只需将每个点乘以所需的半径即可. (5认同)
  • +1,因为这适用于任何图形库.另一个问题:有没有办法控制球体的半径? (2认同)