求三角形外心

一直一個三角形的三個頂點的座標,求他的外心及外接圓半徑

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;  
  int   index;  
   
  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;     
    
  }

 

 

 

同時附上C++中常用函數的函數名:

三角函數和反三角函數
cos(),sin(),tan(),acos(),asin(),atan(),atan2()

雙曲函數:
cosh(),sinh(),tanh()

指數對數函數:
exp(),frexp(),ldexp(),log(),log10(),modf()

冪函數和平方根函數:
pow(),sqrt()

絕對值,上下限值,模函數:
ceil(),fabs(),floor(),fmod()

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章