现在的位置: 首页 > 综合 > 正文

三角形

2018年01月15日 ⁄ 综合 ⁄ 共 498字 ⁄ 字号 评论关闭

已知一个三角形的三个顶点的坐标,求他的外心及外接圆半径

void   miniCircle(myPoint   *p,myPoint&   center,double&   radius)  
  {  
  double   Xmove=p[0].x;  
  double   Ymove=p[0].y;  
  p[1].x=p[1].x-p[0].x;  
  p[1].y=p[1].y-p[0].y;  
  p[2].x=p[2].x-p[0].x;  
  p[2].y=p[2].y-p[0].y;  
  p[0].x=0;  
  p[0].y=0;  
   
  double   x1=p[1].x,y1=p[1].y,x2=p[2].x,y2=p[2].y;  
  double   m=2.0*(x1*y2-y1*x2);  
  center.x=(x1*x1*y2-x2*x2*y1+y1*y2*(y1-y2))/m;  
  center.y=(x1*x2*(x2-x1)-y1*y1*x2+x1*y2*y2)/m;  
  radius=distance(center,p[0]);  
  center.x+=Xmove;  
  center.y+=Ymove;     
    
  }

抱歉!评论已关闭.