繁体   English   中英

蟒蛇。 如何在拉伸(线段)2D中找到点?

[英]Python. How to find a point in the stretch(line segment) 2D?

2D有两点

point1 = (x1, y1)
point2 = (x2, y2)

这两点之间有牵扯:

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

如何在该拉伸中的任意位置找到点(x3,y3)?

所谓的“拉伸”是线段 ,然后使用math.hypot计算其范数(或长度,如果可以)。

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

如果您在间隔[0,1]之外使用t值,那么您将在同一条线上但在线段之外有一个点。

如果要在P1P2线段上得到一些点,可以使用线性插值方程:

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

其中t在0..1范围内

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM