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

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()
相关推荐
Xvisio诠视科技4 天前
超越平面交互:SLAM技术如何驱动MR迈向空间计算时代?诠视科技以算法引领变革
平面·mr·空间计算
把玩计算机5 天前
相机几何 空间点到像素平面转换
数码相机·平面
老歌老听老掉牙7 天前
OpenCascade几何建模:平面创建与法向拉伸的工程实现
c++·平面·opencascade
haing20198 天前
已知两个平面点的坐标、切线方向、曲率,构造三阶Bezier曲线的方法
平面·曲率·bezier曲线·g2连续
haing20199 天前
已知两个平面点的坐标、切线方向、曲率,使用牛顿迭代法构造三阶 Bézier 曲线的方法
平面·牛顿迭代·三阶bezier
haing201913 天前
两条平面直线之间通过三次多项式曲线进行过渡的方法介绍
平面·g1连续过渡·平面直线
三维重建-光栅投影13 天前
结构光三维重建之线结构光标定(光平面法)
平面
数字孪生家族21 天前
视频孪生技术赋能电力巡检:从“平面监控”到“立体智控”的跨越
平面·变电站三维数字模型·视频孪生电力巡检·视频孪生平台
鲸鱼240123 天前
线性回归笔记
机器学习·平面·线性回归
淡海水23 天前
【URP】[平面阴影]原理与实现
平面·unity·urp·阴影