文章目录

  • 1 外接圆半径公式
    • 1.1 用三角形的边和角来表示它的外接圆的半径
    • 1.2 用三角形的三边来表示它的外接圆的半径
    • 1.3 用三角形的三边和面积表示外接圆半径的公式
  • 2 函数原型
  • 3 代码实现
  • 4 输出结果
  • 5 源码

1 外接圆半径公式

经过三角形各顶点的圆叫做三角形的外接圆,表示三角形外接圆半径的方法有:

  1. 用三角形的边和角来表示它的外接圆的半径;
  2. 用三角形的三边来表示它的外接圆的半径;
  3. 用三角形的三边和面积表示外接圆半径的公式。

1.1 用三角形的边和角来表示它的外接圆的半径

设在 △ABC\triangle ABC△ABC 中,已知一边和它的对角,由正弦定理的推论知,外接圆的半径 RRR 可由已知边和角来表示:

1.2 用三角形的三边来表示它的外接圆的半径

设在 △ABC\triangle ABC△ABC 中,已知三边 a,b,ca,b,ca,b,c,则

其中,p=a+b+c2p=\cfrac{a+b+c}{2}p=2a+b+c​

1.3 用三角形的三边和面积表示外接圆半径的公式

R=abc4SR=\cfrac{abc}{4S}R=4Sabc​
其中,a,b,ca,b,ca,b,c 为三边边长, SSS 为三角形面积

本文就是用这种方法计算三角形外接圆半径

2 函数原型

pcl::getCircumcircleRadius (const PointT &pa, const PointT &pb, const PointT &pc)

3 代码实现

给定三角形的三个顶点,返回三角形外接圆半径。

#include <iostream>
#include <pcl\io\pcd_io.h>
#include <pcl\common\common.h>using namespace std;int main()
{pcl::PointXYZ p1, p2, p3;  //三角形的三个点p1.x = 0;p1.y = 0;p1.z = 0;p2.x = 10;p2.y = 0;p2.z = 0;p3.x = 5;p3.y = 10;p3.z = 10;float radius;             //三角形外接圆半径radius = pcl::getCircumcircleRadius(p1, p2, p3);cout << "->三角形外接圆半径为:" << radius << endl;return 0;
}

4 输出结果

->三角形外接圆半径为:7.95495

5 源码

template <typename PointT> inline double
pcl::getCircumcircleRadius (const PointT &pa, const PointT &pb, const PointT &pc)
{Eigen::Vector4f p1 (pa.x, pa.y, pa.z, 0);Eigen::Vector4f p2 (pb.x, pb.y, pb.z, 0);Eigen::Vector4f p3 (pc.x, pc.y, pc.z, 0);double p2p1 = (p2 - p1).norm (), p3p2 = (p3 - p2).norm (), p1p3 = (p1 - p3).norm ();// Calculate the area of the triangle using Heron's formula // (http://en.wikipedia.org/wiki/Heron's_formula)double semiperimeter = (p2p1 + p3p2 + p1p3) / 2.0;double area = sqrt (semiperimeter * (semiperimeter - p2p1) * (semiperimeter - p3p2) * (semiperimeter - p1p3));// Compute the radius of the circumscribed circlereturn ((p2p1 * p3p2 * p1p3) / (4.0 * area));
}

相关链接:

PCL点云数据处理基础❤️❤️❤️目录

计算三角形内切圆半径的C++实现

百度百科:外接圆半径公式

PCL:getCircumcircleRadius ❤️ 计算三角形外接圆半径相关推荐

  1. 计算三角形内切圆半径的C++实现

    1 计算公式 已知 △ABC\triangle ABC△ABC 的三边 a,b,ca,b,ca,b,c 和面积 SSS,则三角形内接圆的半径为: r=2Sa+b+cr=\cfrac{2S}{a+b+c ...

  2. PCL点云处理之计算三角形的外接圆半径(一百二十七)

    PCL点云处理之计算三角形的外接圆的半径(一百二十七) 一.算法介绍 二.代码实现 三.效果展示 一.算法介绍 给出三角形的三个顶点坐标,计算外接圆的半径,具体代码实现如下: 二.代码实现 #incl ...

  3. ZOJ 1090 The Circumference of the Circle(计算三角形的外接圆)

    提交地址:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=1090 这是我最喜欢做的题之一,因为这种题我感觉 做一遍以后就会了 ...

  4. Java黑皮书课后题第3章:**3.19(计算三角形的周长)编写程序,读取三角形的三个边,如果输入值合法就计算这个三角形的周长;否则,显示这些输入值不合法。如果任意两条边的和大于第三边,则输入值都是合

    **3.18(计算三角形的周长)编写程序,读取三角形的三个边,如果输入值合法就计算这个三角形的周长:否则,显示这些输入值不合法.如果任意两条边的和大于第三边,则输入值都是合法的 题目 题目概述 破题 ...

  5. C++编程练习:抽象类——编写一个程序,计算三角形、正方形的面积,抽象出一个基类base。

    例.编写一个程序,要求计算三角形.正方形的面积,抽象出一个基类base,在其中说明一个虚函数display( )用来展示其参数且求出面积. 代码如下: 头文件headfile.h: #pragma o ...

  6. 信息学奥赛一本通 1034:计算三角形面积 | OpenJudge NOI 1.3 17

    [题目链接] ybt 1034:计算三角形面积 OpenJudge NOI 1.3 17:计算三角形面积 [题目考点] 1. 已知三点求三角形面积公式 已知三点分别为(x1,y1),(x2,y2),( ...

  7. 信息学奥赛一本通(1034:计算三角形面积)

    1034:计算三角形面积 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 67428     通过数: 21782 [题目描述] 平面上有一个三角形,它的三个顶点坐 ...

  8. 编程三角形面积公式_利用边长计算三角形面积 — 海伦公式推导

    > 之前在计算三角形面积时使用了海伦公式 (p为周长的一半) 但对于如何推导出该公式,当时并不了解.现在推导一下. 假设一个普通三角形三边长分别为a.b.c,c边的高为h: 根据勾股定理,我们 ...

  9. python编写函数判断三角形_使用Python三角函数公式计算三角形的夹角案例

    题目内容: 对于三角形,三边长分别为a, b, c,给定a和b之间的夹角C,则有:.编写程序,使得输入三角形的边a, b, c,可求得夹角C(角度值). 输入格式: 三条边a.b.c的长度值,每个值占 ...

  10. java继承类长方形面积_java_java用接口、多态、继承、类计算三角形和矩形周长及面积的方法,本文实例讲述了java用接口、多 - phpStudy...

    java用接口.多态.继承.类计算三角形和矩形周长及面积的方法 本文实例讲述了java用接口.多态.继承.类计算三角形和矩形周长及面积的方法.分享给大家供大家参考.具体如下: 定义接口规范: /** ...

最新文章

  1. Windows Server 2008 多元密码策略之ADSIEDIT
  2. GDAL算法进度条使用说明
  3. 201703-4 地铁修建
  4. 谷歌开发者大会焦点:大中华区新掌门亮相,Android 10原生支持5G,TF2.0大更新...
  5. 5位随机数重复的概率 php_PHP产生不重复随机数的5个方法总结
  6. [react] 你有在项目中使用过Yeoman脚手架吗?
  7. uTorrent for mac(BT下载客户端)v1.8.7中文版
  8. 关于ie7下display:inline-block;不支持的解决方案
  9. python中math模块函数_python中math模块函数
  10. centos安装词典——图形界面的和命令行
  11. android:异步任务asyncTask介绍及异步任务下载图片(带进度条)
  12. 第08课:GDB 实用调试技巧( 上)
  13. 腾讯云播放器TcPlayer实现网络直播
  14. Python爬虫_03_urllib_xpath_JsonPath_BeautifulSoup应用及案例
  15. PHP学习总结(二)
  16. 如何用matlab画一个球
  17. rk3588 驱动调试记录
  18. 我喜欢出发(汪国真)
  19. 王传宝老师--宏观经济学家--金融研究专家---沪师经纪刘建
  20. Games104现代游戏引擎入门-lecture12游戏引擎的粒子和声效系统

热门文章

  1. 图扑软件数字孪生挖掘机实现远程操控
  2. 量子密码(二)——经典的希特勒密码、紫色密码、乘数密码以及量子密码、量子纠缠初探
  3. MSN QQ在线聊天代码
  4. 【数字孪生】UE4虚幻引擎与前端Web页面的结合
  5. 硬盘坏道数据如何恢复?如何知道硬盘是否坏道?
  6. 如何下载macOS Ventura、Monterey、Big Sur、Catalina Mojave完整安装程序
  7. P3376 【模板】网络最大流
  8. Word控件Spire.Doc 转换教程(三):如何将 Word 转换为 PDF
  9. 大龄程序员都去哪了?
  10. 小米手机已连接但无法访问互联网解决办法