mathmatic求两圆交点


求两圆的交点,Solve[(x - a1)*(b2 - b1) == (y - b1)*(a2 - a1) && (x - c1)*(d2 -
                                           d1) == (y - d1)*(c2 - c1), {x, y}],当然这个很恐怖

即使化简也很恐怖{{x -> (1/(
   2 ((a1 - a2)^2 + (b1 - b2)^2)))(a1^3 - a1^2 a2 + a2^3 +
     a1 (-a2^2 + (b1 - b2)^2 - r1^2 + r2^2) -
     Sqrt[-(b1 - b2)^2 (((a1 - a2)^2 + (b1 - b2)^2 - r1^2)^2 -
        2 ((a1 - a2)^2 + (b1 - b2)^2 + r1^2) r2^2 + r2^4)] +
     a2 ((b1 - b2)^2 + (r1 - r2) (r1 + r2))),
  y -> (1/(2 ((a1 - a2)^2 + (b1 - b2)^2) (b1 -
      b2)))(a1^2 (b1 - b2) (b1 + b2) +
     a2^2 (b1 - b2) (b1 + b2) + (b1 - b2)^2 (b1^2 - b2^2 - r1^2 +
        r2^2) - a2 Sqrt[-(b1 -
          b2)^2 (((a1 - a2)^2 + (b1 - b2)^2 - r1^2)^2 -
         2 ((a1 - a2)^2 + (b1 - b2)^2 + r1^2) r2^2 + r2^4)] +
     a1 (2 a2 (-b1^2 + b2^2) +
        Sqrt[-(b1 - b2)^2 (((a1 - a2)^2 + (b1 - b2)^2 - r1^2)^2 -
           2 ((a1 - a2)^2 + (b1 - b2)^2 + r1^2) r2^2 +
           r2^4)]))}, {x -> (1/(
   2 ((a1 - a2)^2 + (b1 - b2)^2)))(a1^3 - a1^2 a2 + a2^3 +
     a1 (-a2^2 + (b1 - b2)^2 - r1^2 + r2^2) +
     Sqrt[-(b1 - b2)^2 (((a1 - a2)^2 + (b1 - b2)^2 - r1^2)^2 -
        2 ((a1 - a2)^2 + (b1 - b2)^2 + r1^2) r2^2 + r2^4)] +
     a2 ((b1 - b2)^2 + (r1 - r2) (r1 + r2))),
  y -> (1/(
   2 ((a1 - a2)^2 + (b1 - b2)^2) (b1 -
      b2)))(a1^2 (b1 - b2) (b1 + b2) +
     a2^2 (b1 - b2) (b1 + b2) + (b1 - b2)^2 (b1^2 - b2^2 - r1^2 +
        r2^2) + a2 Sqrt[-(b1 -
          b2)^2 (((a1 - a2)^2 + (b1 - b2)^2 - r1^2)^2 -
         2 ((a1 - a2)^2 + (b1 - b2)^2 + r1^2) r2^2 + r2^4)] -
     a1 (2 a2 (b1 - b2) (b1 + b2) +
        Sqrt[-(b1 - b2)^2 (((a1 - a2)^2 + (b1 - b2)^2 - r1^2)^2 -
           2 ((a1 - a2)^2 + (b1 - b2)^2 + r1^2) r2^2 + r2^4)]))}},

束手无策,

但是人类智慧是无穷的,把圆圆心相对于{a1,b1}偏移就简单多了

Solve[(x)^2 + (y)^2 == r1^2 && (x - a)^2 + (y - b)^2 == r2^2, {x,
  y}]   a=a2-a1,b=b2-b1



{{x -> (a^3 + a (b^2 + r1^2 - r2^2) - Sqrt[
    b^2 (-(a^2 + b^2 - r1^2)^2 + 2 (a^2 + b^2 + r1^2) r2^2 - r2^4)])/(
   2 (a^2 + b^2)),
  y -> (b^4 + b^2 (a^2 + r1^2 - r2^2) +
    a Sqrt[b^2 (-(a^2 + b^2 - r1^2)^2 + 2 (a^2 + b^2 + r1^2) r2^2 -
        r2^4)])/(2 b (a^2 + b^2))}, {x -> (
   a^3 + a (b^2 + r1^2 - r2^2) + Sqrt[
    b^2 (-(a^2 + b^2 - r1^2)^2 + 2 (a^2 + b^2 + r1^2) r2^2 - r2^4)])/(
   2 (a^2 + b^2)),
  y -> (b^4 + b^2 (a^2 + r1^2 - r2^2) -
    a Sqrt[b^2 (-(a^2 + b^2 - r1^2)^2 + 2 (a^2 + b^2 + r1^2) r2^2 -
        r2^4)])/(2 b (a^2 + b^2))}}


化简  c=a^2+b^2

  x (a(c+ r1^2 - r2^2)+-b((r1 + r2)^2-c))/(2c)
  y (b(c+ r1^2 - r2^2)-+a((r1 + r2)^2-c))/(2c)


x=x+a1

y=y+b1


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值