已知三点坐标,求外接圆圆心坐标与半径。
来源:互联网 发布:python 变量生存周期 编辑:程序博客网 时间:2024/04/29 08:32
已知三点坐标,求外接圆圆心坐标与半径。
a=((y2-y1)*(y3*y3-y1*y1+x3*x3-x1*x1)-(y3-y1)*(y2*y2-y1*y1+x2*x2-x1*x1))/(2.0*((x3-x1)*(y2-y1)-(x2-x1)*(y3-y1)));
b=((x2-x1)*(x3*x3-x1*x1+y3*y3-y1*y1)-(x3-x1)*(x2*x2-x1*x1+y2*y2-y1*y1))/(2.0*((y3-y1)*(x2-x1)-(y2-y1)*(x3-x1)));
r2=(x1-a)*(x1-a)+(y1-b)*(y1-b);
HDU4720:已知三点求最小覆盖圆的圆心坐标与半径。
#include#include#include#include#include#include#includeusing namespace std;int main(){int t;scanf("%d",&t);int Case=1;while(t--){ double x,y,x3,x1,x2,y3,y1,y2,a,b,r2; scanf("%lf%lf",&x1,&y1); scanf("%lf%lf",&x2,&y2); scanf("%lf%lf",&x3,&y3); scanf("%lf%lf",&x,&y); if((x2-x1)*(x3-x1)+(y2-y1)*(y3-y1)<0) //(x1,y1)是钝角 { a=(x3+x2)/2.0,b=(y3+y2)/2.0; r2=(a-x2)*(a-x2)+(b-y2)*(b-y2); } else if((x1-x2)*(x3-x2)+(y1-y2)*(y3-y2)<0) //(x2,y2)是钝角 { a=(x3+x1)/2.0,b=(y3+y1)/2.0; r2=(a-x1)*(a-x1)+(b-y1)*(b-y1); } else if((x1-x3)*(x2-x3)+(y1-y3)*(y2-y3)<0) //(x3,y3)是钝角 { a=(x2+x1)/2.0,b=(y2+y1)/2.0; r2=(a-x1)*(a-x1)+(b-y1)*(b-y1); } else //三角形是锐角三角形 { a=((y2-y1)*(y3*y3-y1*y1+x3*x3-x1*x1)-(y3-y1)*(y2*y2-y1*y1+x2*x2-x1*x1))/(2.0*((x3-x1)*(y2-y1)-(x2-x1)*(y3-y1))); b=((x2-x1)*(x3*x3-x1*x1+y3*y3-y1*y1)-(x3-x1)*(x2*x2-x1*x1+y2*y2-y1*y1))/(2.0*((y3-y1)*(x2-x1)-(y2-y1)*(x3-x1))); r2=(x1-a)*(x1-a)+(y1-b)*(y1-b); }if((x-a)*(x-a)+(y-b)*(y-b)<=r2) printf("Case #%d: Danger\n",Case++); else printf("Case #%d: Safe\n",Case++);} return 0;}
- 已知三点坐标,求外接圆圆心坐标与半径。
- BugZhu抽抽抽!!(已知三角形三点坐标,求外接圆半径及三角面积)
- 已知圆上三点坐标求圆心和半径
- 已知两点坐标和半径求圆心坐标程序C++
- 求内切圆的圆心和半径(已知三个点的坐标)
- 求内切圆的圆心和半径(已知三个点的坐标)
- 已知圆心,半径,角度,求圆上的点坐标
- 已知圆心,半径,角度,求圆上的点坐标。
- 已知圆心,半径,角度,求圆上的点坐标
- 已知圆心,半径,角度,求圆上的点坐标
- 已知圆心、半径、角度,求圆上的点坐标
- 已知圆心,半径,角度,求圆上的点坐标
- 已知圆心,半径,角度,求圆上的点坐标
- 已知圆心,半径,角度,求圆上的点坐标
- 2017 ACM/ICPC Asia Regional Qingdao Online 1001-Apple(Java大实数类BigDecimal应用)(已知三点坐标求圆心坐标和半径)
- 已三个点坐标,判断能否构成三角形。若能,则求三角形外接圆的圆心和半径
- HDU BugZhu抽抽抽!! 知道三点坐标,求三角形面积,外接圆面积,半径
- 已知圆上三点坐标求圆心
- Unity如何使用WindowsForm
- Java排序算法总结(六):堆排序
- 欧拉四面体公式,用来求三棱椎的体积。
- 如何求一个真分数的循环节
- 简单的选择排序
- 已知三点坐标,求外接圆圆心坐标与半径。
- Installation MEMCACHE_ENGINE for MySQL5.1
- 「ubuntu」下安装sogoupinyin
- HDU1069
- 委托的简单调用(1)
- 导航设计:关于图标式导航的改进
- HDU2955 01 背包变形
- 委托调用之把代理作为方法的参数并进行动态调用
- 复杂指针的声明