原理地址传送:https://blog.csdn.net/yanmy2012/article/details/8111600

https://blog.csdn.net/cwj066/article/details/82692271(顺便推荐一个基础计算博客)

这里不讲公式推导数学计算,自己去问别人。博主也不想算,拿来就用。想弄清楚一点的,可以看原理传送门。

C/C++代码实现(注意两点没有写,自己去写吧:1.三点不能共线2.两点不能相同):

//部分代码实现
struct PT3
{double x, y, z;
};
////吐槽:好恶心计算数学>_<
//算法实现
int solveCenterPointOfCircle(std::vector<PT3> pt, double centerpoint[] = {0})
{double a1, b1, c1, d1;double a2, b2, c2, d2;double a3, b3, c3, d3;double x1 = pt[0].x, y1 = pt[0].y, z1 = pt[0].z;double x2 = pt[1].x, y2 = pt[1].y, z2 = pt[1].z;double x3 = pt[2].x, y3 = pt[2].y, z3 = pt[2].z;a1 = (y1*z2 - y2*z1 - y1*z3 + y3*z1 + y2*z3 - y3*z2);b1 = -(x1*z2 - x2*z1 - x1*z3 + x3*z1 + x2*z3 - x3*z2);c1 = (x1*y2 - x2*y1 - x1*y3 + x3*y1 + x2*y3 - x3*y2);d1 = -(x1*y2*z3 - x1*y3*z2 - x2*y1*z3 + x2*y3*z1 + x3*y1*z2 - x3*y2*z1);a2 = 2 * (x2 - x1);b2 = 2 * (y2 - y1);c2 = 2 * (z2 - z1);d2 = x1 * x1 + y1 * y1 + z1 * z1 - x2 * x2 - y2 * y2 - z2 * z2;a3 = 2 * (x3 - x1);b3 = 2 * (y3 - y1);c3 = 2 * (z3 - z1);d3 = x1 * x1 + y1 * y1 + z1 * z1 - x3 * x3 - y3 * y3 - z3 * z3;double x, y, z;x = -(b1*c2*d3 - b1*c3*d2 - b2*c1*d3 + b2*c3*d1 + b3*c1*d2 - b3*c2*d1)/ (a1*b2*c3 - a1*b3*c2 - a2*b1*c3 + a2*b3*c1 + a3*b1*c2 - a3*b2*c1);y = (a1*c2*d3 - a1*c3*d2 - a2*c1*d3 + a2*c3*d1 + a3*c1*d2 - a3*c2*d1)/ (a1*b2*c3 - a1*b3*c2 - a2*b1*c3 + a2*b3*c1 + a3*b1*c2 - a3*b2*c1);z = -(a1*b2*d3 - a1*b3*d2 - a2*b1*d3 + a2*b3*d1 + a3*b1*d2 - a3*b2*d1)/ (a1*b2*c3 - a1*b3*c2 - a2*b1*c3 + a2*b3*c1 + a3*b1*c2 - a3*b2*c1);double r = 0.0;r = sqrt((x1 - x)*(x1 - x) + (y1 - y)*(y1 - y) + (z1 - z)*(z1 - z));r = sqrt((x2 - x)*(x2 - x) + (y2 - y)*(y2 - y) + (z2 - z)*(z2 - z));r = sqrt((x3 - x)*(x3 - x) + (y3 - y)*(y3 - y) + (z3 - z)*(z3 - z));return 0;
}

最后做成MFC检验:

在三维坐标中给出三个点,求三个点所在平面的圆心和圆心坐标相关推荐

  1. 使用三目运算求三个数的最大值、最小值和中间值

    public static void main(String[] args) {System.out.println("请输入三个整数,中间用空格隔开:");Scanner sc ...

  2. 用三种方法求三个正整数的最大公约数和最小公倍数(python3)。

    题目:求三个正整数的最大公约数和最小公倍数. 基本要求:1.程序风格良好(使用自定义注释模板),两种以上算法解决最大公约数问题,提供友好的输入输出. 提高要求:1.三种以上算法解决两个正整数最大公约数 ...

  3. 从一个三维数组中挑出最大值

    #include<stdio.h> int max(int array[][4]); //平平无奇的函数申明 int main(){int i,j,a[3][4];printf(" ...

  4. 三种算法求两个正整数的最大公约数和最小公倍数;求三个数的最大公约数和最小公倍数

    第二次作业 题目:求两个正整数的最大公约数和最小公倍数. 基本要求:1.程序风格良好(使用自定义注释模板),两种以上算法解决最大公约数问题,提供友好的输入输出. 提高要求:1.三种以上算法解决两个正整 ...

  5. ACMNO.33 C语言-最大值3 分别用函数和带参的宏,从三个数中找出最大的数。

    题目描述 分别用函数和带参的宏,从三个数中找出最大的数. 输入 3个实数 输出 最大的数,输出两遍,先用函数,再用宏. 保留3位小数. 样例输入 1 2 3 样例输出 3.000 3.000 来源/分 ...

  6. 从1~N中任选出三个数,最小公倍数最大

    已知一个正整数N,问从1~N中任选出三个数,它们的最小公倍数最大可以为多少. 当n为奇数:n.n-1.n-2这是三个最大数,并且它们两两互质.因为连续的奇.偶.奇,互质.连续的两个数互质是因为它们的公 ...

  7. 分别用函数和带参的宏,从三个数中找出最大的数。

    题目描述 分别用函数和带参的宏,从三个数中找出最大的数. 输入 3个实数 输出 最大的数,输出两遍,先用函数,再用宏. 保留3位小数. 样例输入 1 2 3 样例输出 3.000 3.000 #inc ...

  8. 立方体在三维坐标中的旋转(3D,Spining)

    立方体在三维坐标中的旋转(3D,Spining) 示例 HTML CSS 更多有趣示例 尽在 知屋安砖社区 示例 HTML <div id="ThreeJS" style=& ...

  9. python如何画3个相切的圆_如何在几何画板中画出三个两两相切的圆

    <圆和圆的位置关系>是人教版九年级数学必学内容,在学习圆与圆的位置关系时,我们都知道圆与圆的位置关系有:相离,外切,相交,内切,内含,它们之间的位置是由圆心距与两半径的长度来确定的.那么如 ...

  10. 给定 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点 (i, ai) 。在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0)。找出其中的两条线,

    给定 n 个非负整数 a1,a2,-,an,每个数代表坐标中的一个点 (i, ai) .在坐标内画 n 条垂直线,垂直线 i 的两个端点分别为 (i, ai) 和 (i, 0).找出其中的两条线,使得 ...

最新文章

  1. 从业务发展的阶段看系统发展
  2. python中文编码-Python中文乱码(转)
  3. python3.7扩展库是什么_Python3.4以后的版本中,____________库用于安装管理Python扩展包,________________库用于发布Python包。_学小易找答案...
  4. 团队作业10——复审与事后分析(Beta版本)
  5. jsp指令元素与动作元素
  6. http 请求 与其同步与异步请求的通透讲解
  7. cad 万能字体_CAD:“你的图纸缺少shx字体!”不知道该怎么办?不存在的!
  8. vue-router vue路由
  9. 近期在做或要做的实验
  10. SpringBoot 统一异常处理最佳实践 -- 拓展篇
  11. Kubernetes 小白学习笔记(32)--kubernetes云原生应用开发-sidecar注入和istio服务治理演示
  12. 【Tableau server日常维护9.0】window server2016 Tableau server保姆教学安装
  13. I5 4590 台式机安装黑苹果最新版笔记
  14. Python爬虫入门教程 12-100 半次元COS图爬取
  15. 各品牌进入Bios方法,附U盘制作启动盘
  16. Openharmony应用NAPI详解--基础篇
  17. 云框架研究:openstack基准测试框架rally
  18. Linux 下如何压缩/解压缩文件
  19. cesium加载谷歌影像底图
  20. Cocos2d-X 论文转载

热门文章

  1. HyperLPR中文车牌识别
  2. Axure 元件导入元件库
  3. python编程从入门到实践(第2版)第二章练习题解答
  4. Android 蓝牙开发之搜索、配对、连接、通信大全
  5. android生成kml和kmz
  6. FreeBSD使用网易镜像来安装软件
  7. 在jmeter中怎么提取数据_Jmeter正则提取请求响应数据
  8. KELL中程序封装的实现
  9. MTK Android 配置pmic电源
  10. html倒计时代码执行操作,JS倒计时两种实现方式代码实例