如何将2d点从一个坐标系映射到另一个坐标系
问题描述:
我有一些源点在(0,100)之间,想象一下坐标系左上方是(0,0),右下是(100,100)。 而目标坐标系是(-1/2,1/2)之间的空格。 一些点是这样的:如何将2d点从一个坐标系映射到另一个坐标系
x=0,y=0 ---> x'=-1/2,y'=1/2
x=50,y=50 ---> x'=0,y'=0
x=100,y=100 ---> x'=1/2,y'=-1/2
现在,我怎么能映射任何点从第一坐标到第二? 任何帮助真的很感激。
答
我假设一个线性转换是你在找什么。
所以x->ax+b, y->cy+d
一般情况下,开始与(0,0)
,因为这是比较容易 0->b
和0->d
,所以b=-1/2, d=1/2
现在平凡来休息50->50a-1/2=0
所以a=1/100
,并50c+1/2=0
所以c=-1/100
总体,使用x->x/100-1/2
和y->-y/100+1/2
感谢您的回复!现在使用这种转换想象y = 5 - > y'= 5/100-1/2 = -0.45,但它不应该是negative.am我错了吗? –
哎呀,我错过了减号/不减号。更正了答案 y = 5-> 0.45,但x = 5 - > - 0.45 –
非常感谢!这是答案! –