概述
本文的纹理映射将三维曲面与二维的纹理建立对应关系。
曲面参数表达:
x = x ( s , t ) , y = y ( s , t ) , z = z ( s , t ) x = x(s,t), y = y(s,t), z=z(s,t) x=x(s,t),y=y(s,t),z=z(s,t)
即给定纹理坐标(s,t),我们能可以计算出曲面坐标(x,y,z)
映射
考虑由参数方程定义的曲面
p ( u , v ) = ( x ( u , v ) , y ( u , v ) , z ( u , v ) ) p(u,v)=(x(u,v),y(u,v),z(u,v)) p(u,v)=(x(u,v),y(u,v),z(u,v))
此时通常采用如下形式从纹理元素对应到曲面上的点
u = a s + b t + c , v = d s + e t + f u = as + bt + c, v = ds + et + f u=as+bt+c,v=ds+et+f
只要 a e ≠ b d ae \neq bd ae=bd, 上述映射是可逆
圆柱映射
假设纹理坐标在单位正方形[0,1]2内变化,圆柱高h, 半径r
那么圆柱的参数方程为
x = r cos ( 2 π s ) , y = r sin ( 2 π s ) , z = h t x = r \cos(2\pi s), y=r \sin (2\pi s), z = ht x=rcos(2πs),y=rsin(2πs),z=ht
从纹理坐标到圆柱面上没有变形
适合于构造与无底的圆柱面拓朴同构的曲面上的纹理
##球映射
球的参数方程
x = r cos ( 2 π s ) , y = r sin ( 2 π s ) cos ( 2 π t ) , z = r sin ( 2 π s ) sin ( 2 π t ) x = r \cos (2\pi s), y = r \sin(2\pi s) \cos(2\pi t), z = r \sin(2\pi s) \sin (2\pi t) x=rcos(2πs),y=rsin(2πs)cos(2πt),z=rsin(2πs)sin(2πt)
类似于地图绘制中的映射
肯定有变形
用在环境映射中
参数化
参考文献
- http://staff.ustc.edu.cn/~lgliu/Courses/ComputerGraphics_2020_spring-summer/default.htm#%E5%8F%82%E8%80%83%E8%B5%84%E6%96%99
- games 301
- http://staff.ustc.edu.cn/~lgliu/Courses/GAMES102_2020/PPT/GAMES102-10_SplineSurfaces.pdf
- https://blog.csdn.net/seamanj/article/details/53576173
- https://www.inf.usi.ch/hormann/papers/Floater.2005.SPA.pdf
- https://www.cnblogs.com/mazhen/archive/2011/12/24/2300732.html
- https://wenku.baidu.com/view/3164e185bb1aa8114431b90d6c85ec3a86c28b6a.html?wkts=1722237778298