推导将点映射到平面坐标系的计算公式

python 复制代码
import numpy as np
import matplotlib.pyplot as plt

# 生成10000个随机点
np.random.seed(42)
n_points = 10000
x = np.random.random(n_points)
y = np.random.random(n_points)
z = np.random.random(n_points)

# 计算映射后的坐标
mapped_x = (2*y + z)/(2*(x + y + z))
mapped_y = (np.sqrt(3)*z)/(2*(x + y + z))

# 创建散点图
plt.figure(figsize=(12, 12))
plt.scatter(mapped_x, mapped_y, alpha=0.1, s=5)

# 绘制等边三角形的边界
triangle_x = [0, 1, 0.5, 0]
triangle_y = [0, 0, np.sqrt(3)/2, 0]
plt.plot(triangle_x, triangle_y, 'r-', linewidth=2, label='三角形边界')

plt.grid(True)
plt.title('单位立方体到等边三角形的映射 (10000点)')
plt.xlabel('x = (2y+z)/(2(x+y+z))')
plt.ylabel('y = (√3*z)/(2(x+y+z))')
plt.axis('equal')
plt.legend()

# 添加参考线
plt.axhline(y=0, color='k', linestyle='--', alpha=0.3)
plt.axvline(x=0, color='k', linestyle='--', alpha=0.3)

plt.show()
相关推荐
文火冰糖的硅基工坊1 天前
[激光原理与应用-261]:理论 - 几何光学 - 平面不过是半径无限大的球面
平面
小一亿8 天前
【0基础PS】PS工具详解--直接选择工具
学习·平面·adobe·信息可视化·传媒·photoshop
终端域名9 天前
元宇宙的三维革命:突破手机平面的数字新境
平面·智能手机·元宇宙
元让_vincent10 天前
论文Review LIO Multi-session Voxel-SLAM | 港大MARS出品!体素+平面特征的激光SLAM!经典必读!
论文阅读·平面·自动驾驶·激光点云·激光slam
小一亿12 天前
【0基础PS】Photoshop (PS) 理论知识
学习·平面·adobe·信息可视化·photoshop
小一亿13 天前
【0基础PS】PS工具详解--仿制图章工具
学习·平面·adobe·信息可视化·媒体·photoshop
爱代码的小黄人14 天前
利用劳斯判据分析右半平面极点数量的方法研究
算法·机器学习·平面
莫小夕儿呀14 天前
地理坐标系和平面坐标系种类
平面
小一亿17 天前
【0基础PS】PS工具详解--选择工具--对象选择工具
学习·平面·adobe·信息可视化·传媒·photoshop
元让_vincent1 个月前
论文Review 3DGSSLAM GauS-SLAM: Dense RGB-D SLAM with Gaussian Surfels
图像处理·人工智能·平面·3d·图形渲染