Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/350.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python如何在拉伸(线段)2D中查找点?_Python_Math - Fatal编程技术网

python如何在拉伸(线段)2D中查找点?

python如何在拉伸(线段)2D中查找点?,python,math,Python,Math,2D中有两个点 point1 = (x1, y1) point2 = (x2, y2) 这两点之间有一定的距离: stretch = math.hypot(x2 - x1, y2 - y1) 如何在该段中的任何位置找到点(x3,y3?如果您想获得位于P1P2段上的点,可以使用线性插值方程: x3 = x1 + t * (x2 - x1) y3 = y1 + t * (y2 - y1) 如果t在范围0..1内,如果您想得到P1P2段上的某个点,可以使用线性插值方程: x3 = x1 + t

2D中有两个点

point1 = (x1, y1)
point2 = (x2, y2)
这两点之间有一定的距离:

stretch = math.hypot(x2 - x1, y2 - y1)

如何在该段中的任何位置找到点(x3,y3?

如果您想获得位于P1P2段上的点,可以使用线性插值方程:

x3 = x1 + t * (x2 - x1)
y3 = y1 + t * (y2 - y1)

如果
t
在范围0..1

内,如果您想得到P1P2段上的某个点,可以使用线性插值方程:

x3 = x1 + t * (x2 - x1)
y3 = y1 + t * (y2 - y1)
其中,
t
在0..1范围内

您称之为“拉伸”的是a,您可以使用

对于0和1之间的任何
t
,点
(x1+t*(x2-x1),y1+t*(y2-y1))
是线段的一部分。特别是,使用
t=0
时,您的点将是
(x1,y1)
,使用
t=1
时,您的点将是
(x2,y2)

如果在区间
[0,1]
之外使用
t
值,则在同一条线上有一个点,但在线段之外。

您称之为“拉伸”的是a,并使用

对于0和1之间的任何
t
,点
(x1+t*(x2-x1),y1+t*(y2-y1))
是线段的一部分。特别是,使用
t=0
时,您的点将是
(x1,y1)
,使用
t=1
时,您的点将是
(x2,y2)


如果在区间
[0,1]
之外使用
t
值,则在同一条线上有一个点,但在线段之外。

我想您需要插值。尝试搜索。请详细说明,您需要一个距离(x1,y1)为“m”的点?我想您需要插值。尝试搜索。请详细说明,您需要一个距离(x1,y1)为“m”的点?谢谢!这很有帮助,谢谢!这很有帮助。