searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

如何求两条直线的交点

2024-07-30 09:35:28
8
0

x1 = line1[0] #第1条直线的两端点
y1 = line1[1]
x2 = line1[2]
y2 = line1[3]

x3 = line2[0]#第2条直线的两端点
y3 = line2[1]
x4 = line2[2]
y4 = line2[3]
if (x2 - x1) == 0:
    k1 = None
else:
    k1 = (y2 - y1) * 1.0 / (x2 - x1)  # 计算k1
    b1 = y1  - x1 * k1 
if (x4 - x3) == 0:  # L2直线斜率不存在操作
    k2 = None
    b2 = 0
else:
    k2 = (y4 - y3) * 1.0 / (x4 - x3)  # 斜率存在操作
    b2 = y3  - x3 * k2 
if k1 is None:
    if not k2 is None:
        x = x1
        y = k2 * x1 + b2
        point_is_exist=True
elif k2 is None:
    x=x3
    y=k1*x3+b1
elif not k2==k1:
    x = (b2 - b1) * 1.0 / (k1 - k2)
    y = k1 * x  + b1 
x = int(x)
y = int(y)
两直线的交点为:[x,y]
0条评论
0 / 1000
王****锋
4文章数
0粉丝数
王****锋
4 文章 | 0 粉丝
王****锋
4文章数
0粉丝数
王****锋
4 文章 | 0 粉丝
原创

如何求两条直线的交点

2024-07-30 09:35:28
8
0

x1 = line1[0] #第1条直线的两端点
y1 = line1[1]
x2 = line1[2]
y2 = line1[3]

x3 = line2[0]#第2条直线的两端点
y3 = line2[1]
x4 = line2[2]
y4 = line2[3]
if (x2 - x1) == 0:
    k1 = None
else:
    k1 = (y2 - y1) * 1.0 / (x2 - x1)  # 计算k1
    b1 = y1  - x1 * k1 
if (x4 - x3) == 0:  # L2直线斜率不存在操作
    k2 = None
    b2 = 0
else:
    k2 = (y4 - y3) * 1.0 / (x4 - x3)  # 斜率存在操作
    b2 = y3  - x3 * k2 
if k1 is None:
    if not k2 is None:
        x = x1
        y = k2 * x1 + b2
        point_is_exist=True
elif k2 is None:
    x=x3
    y=k1*x3+b1
elif not k2==k1:
    x = (b2 - b1) * 1.0 / (k1 - k2)
    y = k1 * x  + b1 
x = int(x)
y = int(y)
两直线的交点为:[x,y]
文章来自个人专栏
图像处理
1 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0