算法题:计算2个线段的交点

while True:
    import random
    a=(random.randint(-9999,9999),random.randint(-9999,9999))
    b=(random.randint(-9999,9999),random.randint(-9999,9999))
    c=(random.randint(-9999,9999),random.randint(-9999,9999))
    d=(random.randint(-9999,9999),random.randint(-9999,9999))

    kab=(b[1]-a[1])/(b[0]-a[0])
    bab=a[1]-kab*a[0]
    #fxab=kab*x+bab

    kcd=(d[1]-c[1])/(d[0]-c[0])
    bcd=c[1]-kcd*c[0]
    #fxcd=kcd*x+bcd

    #两个函数交点,y相等
    #kab*x+bab=kcd*x+bcd
    x=(bab-bcd)/(kcd-kab)
    y=kab*x+bab
    #交点(x,y)

    print(x,y)

猜你喜欢

转载自blog.csdn.net/weixin_44417334/article/details/89676630