【数学】求三角形的外接圆圆心
1. 外心定义
三角形的三条边的垂直平分线一定相交于一点,这点是三角形外接圆圆心,即外心。
证明中垂线相交于一点:
∵XX′,YY′分别是△ABC的BC边与AC边的中垂线,
∴XX′,YY′必相交于一点,设为O(否则,XX′∥YY′,那么∠C必等于180°,这是不可能的).
∵OB=OC,OC=OA,∴OB=OA,
∴O点必在AB的垂直平分线ZZ′上,∴XX′,YY′,ZZ′相交于一点。
2. 求外心
代码:
def triangle_csc(pts): # pts是一个3行2列的二维数组,存储着一个三角形的三个顶点rows, cols = pts.shapeA = np.bmat([[2 * np.dot(pts, pts.T), np.ones((rows, 1))],[np.ones((1, rows)), np.zeros((1, 1))]])# np.bmat从数组建立矩阵, pts.T是转置b = np.hstack((np.sum(pts * pts, axis=1), np.ones((1))))# hstack的字母h来自于horizontal,表示两个数组是水平的,hstack((a,b))将把b排在a的右边的意思x = np.linalg.solve(A, b)# solve函数有两个参数a和b:a是一个N*N的二维数组,而b是一个长度为N的一维数组;# solve函数找到一个长度为N的一维数组x,使得a和x的矩阵乘积正好等于b,数组x就是多元一次方程组的解bary_coords = x[:-1] # 除去x数组的最后一个元素# tile函数将一个数组重复一定次数形成一个新的数组# tile(a,(m,n)):即是把a数组里面的元素复制n次放进一个数组c中,然后再把数组c复制m次放进数组b# np.sum(arr, axis=0), 表示按列相加 (axis=1表示按行相加)return np.sum(pts * np.tile(bary_coords.reshape((pts.shape[0], 1)), (1, pts.shape[1])), axis=0)if __name__ == "__main__":tri = [[[1. 0. ],[1. 0.8],[0. 0. ]], [[1. 0.8], [0. 1. ], [0. 0. ]]]triangle_csc(tri)
3. 外心直推公式
python代码和上述直推公式都不直观,下面给一个更直观的构造方式
原理:
根据直推公式写出C语言代码:
【数学】求三角形的外接圆圆心相关推荐
- 求三角形的外接圆圆心个半径
做华南师范大学校赛初赛的一道计算几何题,无聊暴力推公式. #include<stdio.h> #include<string.h> #include<math.h> ...
- 求三角形的外接圆和内切圆
三角形外接圆求法:: Point circumcircleofTriangle(PointSet[]) {double a,b,c,xa,xb,xc,ya,yb,yc,c1,c2;Point tem; ...
- [数学知识][几何]求三角形面积的几种方法
求三角形面积大家都会,但方法不止一种,不同的时候用不同的方法可以有效节省时间和计算强度. [法一] S=a*h/2 最基本的公式 [法二] S=1/2*a*b*sinC,sinC即a,b两边夹角的正弦 ...
- c#中计算三角形面积公式_高中数学|向量公式之用平面向量求三角形面积
高中数学|数列求和的几种策略 点击上方蓝字关注"公众号" 向量公式之 用平面向量求三角形面积 在学习向量时,我们能体会到向量的表达形式的多样化和直观性,而这些特点使解题更加简洁,可 ...
- java程序求内切圆_java 求三角形的内切圆,外接圆
================================= Triangle.java ============================== import java.awt.geom. ...
- java求外接圆圆心_由三点三维坐标计算圆半径和圆心位置
[实例简介] 通过输入任意三点空间坐标自动判断三点是否在一条直线上,若不在则求三点外接圆的圆心位置和半径,计算精度可调节.解决了"知三点求圆心半径"程序对于某些点无法计算的缺陷. ...
- java 求三角形的内切圆,外接圆
================================= Triangle.java ============================== import java.awt.geom. ...
- Triangle Fun UVA - 11437(一个数学定理 + 三角形求面积)
Triangle Fun UVA - 11437 题意: 给你一个三角形,被三条三等分线划分.要你求中间三角形的面积. 思路:(ans = SΔabc7\frac{S\Delta abc}{7}7SΔ ...
- 数学——》海伦公式:求三角形面积
参考链接: 海伦公式 1.介绍 海伦公式又译作希伦公式.海龙公式.希罗公式.海伦-秦九韶公式. 相传这个公式最早是由古希腊数学家阿基米德得出的,而因为这个公式最早出现在海伦的著作<测地术 ...
- java求外接圆圆心_吉软_Java_第六次作业
编写一个圆类Circle 要求: 1. 该类拥有两个属性: 1) Point p代表圆心 2) float radius代表半径 2. 构造方法 1) Circle() 2) Circle(Point ...
最新文章
- centos6.5mysql cluster 7.4.11_完美起航-MySQLMHA高可用集群部署及故障切换(图文详解)...
- 又一游戏大盗(完美世界、跑跑等)SysInfo1.dll
- python调用脚本_3种python调用其他脚本的方法
- apollo修改配置刷新bean_微服务配置中心完全解读
- C语言之字符串探究(十):递归逆置字符串
- 如何评价百度新目标:Everyone can AI ?| 在现场
- linux resin mysql_【转】Linux下Resin+JSP+MySQL的安装和配置
- 基础矩阵,本质矩阵,单应性矩阵讲解,在ORB-SLAM相机的位姿初始化的应用
- Python 实现定时任务
- 计算机病毒学,计算机病毒学.doc
- 等保知识|云计算问题的通俗解释
- 关于group by的用法
- 测试架构需要具备哪些能力
- python 期货现货差价监测_大宗商品现货数据不好拿?商品季节性难跟踪?Python爬虫一键解决没烦恼...
- 【kindle资源】一本不得不读的投资经典《唐朝-手把手教你读财报》
- includes方法
- Orbit Downloader 小巧无广告的下载工具,超赞的在线视频下载能力,比迅雷清爽多了!
- AUTOCAD2020入门学习笔记(一)
- request.getParameter和SpringMVC后台控制层获取参数的方式
- JD旗舰店店铺商品详情接口代码对接教程
热门文章
- 成功解决:ubuntu安装nginx时报错Failed to start A high performance web server and a reverse proxy server.
- windows时间服务器搭建
- 小记 -- cadence安装记录
- 小米MAX Root,第三方REC,XP框架刷入
- github安卓版下载_Pandownload安卓版+IDM神器,手机还有下载不了的资源吗?
- python语法分析图_Python的抽象语法树(二)
- 最新伯乐PHP个人在线自动发卡网源码V3.1
- 比较感兴趣的几个VC2012/VC2013特性
- 数据库系统概论第五版 (第 1 章 绪论 ) 笔记
- Java获取打印机打印图片