您的位置:首页 > 其它

平面的坐标转换

2016-01-08 09:36 211 查看


【原文来自:http://blog.csdn.net/zhang11wu4/article/details/47754035】


平面的坐标转换

Written by Paul Bourke

January 1987

定义一个2维平面上的点的坐标转换:

P = ( x , y ) -> P' = ( x' , y' )


转换

转换(变换) 是通过在x方向上移动Tx距离,在y方向上移动 Ty 距离:

x' = x + Tx

y' = y + Ty


缩放

缩放是通过在x方向上关于原点作Sx 、在y方向上关于原点作Sy倍的缩放:

x' = Sx x

y' = Sy y

如果Sx 与 Sy 不相等,会导致在两者相比值更大的方向出现拉伸。

要在某一个特点的点附近进行缩放,首先将该点变换到原点,作缩放,在回复坐标位置。例如缩放点 (x0,y0)附近区域:

x' = x0 + Sx ( x - x0 )

y' = y0 + Sy ( y - y0 )


旋转

关于原点作顺时针旋转角度A:

x' = x cos(A) + y sin(A)

y' = y cos(A) - x sin(A)

如果要关于某个特点的点作旋转,方法同缩放。先把坐标变换到原点,作旋转,在回复坐标位置。


反射

关于x轴作镜面反射

x' = x

y' = - y

关于 y轴作镜面反射

x' = - x

y' = y

若要对任意一条直线作镜面反射,先把直线与数轴的交点(任选一个,选定不要变换)变换到原点,旋转到该直线与数轴重合,作反射,逆旋转,逆变换会原来位置。


切变

沿x轴切变 SHx 

x' = SHx x 

y' = y

沿y轴切变 SHy 

x' = x

y' = SHy y
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  平面坐标转换