(这个问题在数学方面可能会更好,但我不确定)
这可能很简单,但我想这样做的方式似乎并不容易,必须有一个更简单的方法。我有一个图像,我想找到一些落在一条线上的点所以在这个例子中,我的线的起点下方的图像是(39,75),结束点是(75,142),我想要找到5个点(或任何数字,真正的5只是一个例子)线。
是否有一些我可以使用的等式,在给定任何起点和终点坐标的情况下会得到一定数量的点?
答案 0 :(得分:3)
是
假设(x0,y0)和(x1,y1)是该行的起点和终点。
t *(x0,y0)+(t-1)*(x1,y1)也将成为该行的点,其中t的范围为0到1.
注意:
如果t = 0,则得到(x0,y0)
如果t = 1,则得到(x1,y1)
如果t是(0,1)内的任何值,则得到从(x0,y0)到(x1,y1)的路径的“百分比”
(如果t = 0.5,你就在这两点之间)
这就是计算机图形学中经常被称为“补间”的东西
答案 1 :(得分:2)
是。您的线段可以用以下公式描述:
x = 39 + t * (75 - 39)
y = 75 + t * (142 - 75)
其中,t可以取0到1之间的任何值。
因此,要获得线上的随机点,只需为t选择一个随机值(0到1之间),然后计算x,y是什么。
这个想法是,x从39到75,而y从75到142,t表示已经完成的旅行分数。
答案 2 :(得分:0)
一条线可以由函数y = mx + b
定义,其中x和y是笛卡尔平面上的坐标,m是由(y2 - y1)/(x2 - x1)
定义的线的斜率,b是该线的点与y轴相交。
鉴于信息和线上的两个点,您可以用一些基本代数填充空白以确定定义线的函数。请注意,如果图像的坐标平面位于左上角(0,0),则可能需要翻转y坐标的符号。