已知2点,求中间点序列的算法,解决即结贴
已知2点A(x1,y1),B(x2,y2),x1,y1,x2,y2都是正整数
求在线段AB之间的点序列S
点序列满足要求:
1、设点序列的起点S1,终点Sn:S1,S2,...,Sn ,n=|x2+y2-x1-y1|-1;
2、Si 是 Si-1 和 Si+1的相邻点 1=<i<=n
当n=0时 点序列不存在
当n>0时 点序列存在,S0 即 A点,Sn+1 即 B点
相邻点满足关系 |Si+1(x)+ Si+1(y) - Si(x)- Si(y)| = 1
因此任何一个点都存在2个相邻点
3、点序列中的点都是最接近直线AB的点
求算法
举例:
A(0,0),B(2,2)
的一个点序列解:(0,1),(1,1),(1,2)