PHP前端开发

如何使用 Python 在三维空间内生成随机坐标点位?

百变鹏仔 5天前 #Python
文章标签 坐标

三维空间内创建随机坐标点位

用户希望在三维空间(例如圆柱体)内生成具有边界判定的随机坐标点位。该空间中的点位应具有 xyz 坐标。

实现方法:

一种可行的解决方案是由 stackoverflow 上的用户提供的:

立即学习“Python免费学习笔记(深入)”;

# 生成圆柱体内随机点位的 Python 代码import numpy as npimport random# 定义圆柱体边界参数radius = 5  # 圆柱体半径height = 10  # 圆柱体高度# 生成随机点位points = []for i in range(1000):  # 生成 1000 个点位    # 计算随机半径和高度    r = random.uniform(0, radius)    h = random.uniform(0, height)    # 根据圆柱体方程生成 z 坐标    z = random.sqrt(radius**2 - r**2)    # 计算随机角度    theta = random.uniform(0, 2 * np.pi)    # 生成 XYZ 坐标    x = r * np.cos(theta)    y = r * np.sin(theta)    z = h    # 将点位添加到列表中    points.append([x, y, z])

备注:

此示例中的样本数据可能相对较少,用户可以根据需要调整代码以生成更多点位。