二维 uv 与单位球面坐标的相互转化公式

球面方向 -> uv

cpp 复制代码
float2 uv;
uv.x = atan2(z, x) / (2 * PI) + 0.5;
uv.y = acos(y) / PI;

atan2(y, x): 正反切双参数函数返回弧度制夹角(-PI, PI]

uv.x 是描述向量在 xoz 上投影偏离 x 轴正方向的程度(-1, 1]

uv.y 是描述向量偏移 y 轴正方向的程度

uv -> 球面方向

cpp 复制代码
float tetha = uv.x * 2 * PI - PI;
float phi = uv.y * PI;
float3 dir = float(sin(phi) * cos(tetha),
					cos(phi),
					sin(phi) * sin(tetha));
相关推荐
一直走下去-明2 天前
在 Windows 上安装 uv
windows·uv
<花开花落>3 天前
Python 项目迁移到 uv:经验小结与可复用工作流
python·uv
Hello Mr.Z3 天前
microduck_rl(MuJoCo+PPO+WandB+UV训练机器人)
机器人·uv·rl·ppo·microduck
kkkkira4 天前
(五)文字排版与渲染:字体度量模型
字体·计算机图形学
点心的游戏开发世界6 天前
UnityShaderGraph滚动UV笔记
笔记·uv
长江后浪博客9 天前
陶瓷盘UV喷墨印刷中的Z轴高度测量与防碰撞技术方案
数码相机·uv·陶瓷盘uv打印·uv喷墨印刷·z轴测高·喷头防碰撞·激光位移传感器
大衛說11 天前
02 · 环境搭建:uv 包管理与现代 IDE
ide·uv
咋吃都不胖lyh16 天前
使用 uv 根据 requirements.txt 创建并应用虚拟环境
uv
欧叶冲冲冲18 天前
uv Python 环境管理笔记
笔记·python·uv
hqzing18 天前
几个主流的环境管理器(rustup、uv、nvm、fnm)已经在鸿蒙 PC 上可用
uv