通过Python创建随机初始位置

时间:2016-08-10 13:47:52

标签: python numpy random position

我正在努力制作旋转轨迹。在开始我需要定义旋转对象的初始位置。如何通过Python或NumPy在这种对象的三维中制作1000个随机初始位置?我认为python函数可以解决问题。

1 个答案:

答案 0 :(得分:0)

如果我理解了这个问题,你需要拾取均匀分布在球体上的点。有关详细信息,请参阅here

import math
import numpy as np

cos_theta = 2.0 * np.random.random(100) - 1.0
phi       = 2.0 * math.pi * np.random.random(100)

sin_theta = np.sqrt( (1.0 - cos_theta)*(1.0 + cos_theta) )

x = sin_theta * np.cos(phi)
y = sin_theta * np.sin(phi)
z = cos_theta

print(x, y, z)
print("---------------------")
print(np.square(x) + np.square(y) + np.square(z))