使用python 在已知圆弧两个端点和中点坐标 计算圆弧的圆心坐标

该代码示例展示了如何使用Python从已知圆弧的两个端点和中点坐标来计算圆心坐标。通过输入点的坐标,程序将计算并输出圆心的x和y坐标。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

代码中x1 y1是端点1 ,x3 y3是端点2,x2 y2是中点。

 

# -*- coding:utf-8 -*-

#use to caculator the arc center from the three point

def getCenter(x1,y1,x2,y2,x3,y3):

#    x1 = 55.962697
#    y1 = 12.807461
#    x2 = 53.49
#    y2 = 25.11
#    x3 = 43.0
#    y3 = 32.0

    a = (x1 -x2)*(x1-x2)*(x1-x3)
    b = (x1 -x2)*2*y2*(y1-y3)
    c = a - b
    d = (pow(y2,2)-pow(y1,2))*(x1-x3)
    e = (y1-y2)*(x1-x3)
    f = (y1-y3)*(x2-x1)
    g = 2*(e+f)
    if g == 0:
        print "Caculator error"
        return False
    y0 = (c-d) / g
    print "y0",y0
    i = 2*y0*(y1-y2)
    j = (pow(y2,2)-pow(y1,2)) + (pow(x2,2)-pow(x1,2))
    k = i + j
    l = 2*(x2-x1)
    if l == 0:
        print "Caculator error"
        return False
    x0 = k / l
    print "x0",x0
    return (x0,y0)

          

# 程序入口
if (__name__=="__main__"):
   
    getCenter(1,0,0,1,-1,0)
  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值