三角形垂点坐标js算法(三点定圆求圆心)
2023-09-14 08:57:36 时间
已知平面三点坐标A(x1, y1)、B(x2, y2)、C(x3, y3),三点定圆也就是三角形的中垂线交点,
//平面三点定位算法 function locate(x1, y1, x2, y2, x3, y3) { var a, b; a = (y2 - y1) / (x2 - x1); b = y1 - a * x1; var xMiddle = (x1 + x2) / 2; var yMiddle = (y1 + y2) / 2; var c, lastX, lastY; if (a != 0) { c = yMiddle - (-1 / a) * xMiddle; lastX = (Math.pow(x1, 2) + Math.pow(y1, 2) - Math.pow(x3, 2) - Math.pow(y3, 2) - 2 * c * y1 + 2 * c * y3) / (2 * ((x1 - x3) - (1 / a) * (y1 - y3))); lastY = (-1 / a) * lastX + c; } else { lastX = c = xMiddle; lastY = (Math.pow(x1, 2) + Math.pow(y1, 2) - Math.pow(x3, 2) - Math.pow(y3, 2) + 2 * lastX * (x3 - x1)) / (2 * (y1 - y3)); } console.log("定位点X坐标: " + lastX); console.log("定位点Y坐标: " + lastY); } locate(116.3, 39.9, 115.8, 39.8, 117, 39.5); locate(7,8, 7,23, 20,10);
相关文章
- 【NLP基础】英文关键词抽取RAKE算法
- JS算法探险之链表
- 程序员ppt工具reveal.js
- labuladong的算法小抄之js实现-第0章-学习算法和刷题的框架思维
- Js排序算法_js 排序算法
- js定时器与延时器_JS做定时器倒计时
- Js生成二维码_js在线生成二维码
- JS设置定时器_js设置定时器
- 【Node.js算法题】数组去重、数组删除元素、数组排序、字符串排序、字符串反向、字符串改大写 、数组改大写、字符替换
- JS算法之动态规划
- js 数组去除重复数据-5 个提升你 JS 编码水平的实例
- 【JS 逆向百例】某音 X-Bogus 逆向分析,JSVMP 纯算法还原
- JS校验手机号 座机 邮箱 微信号详解编程语言
- JS动态引入js、CSS动态创建script/link/style标签详解编程语言
- 使用JS实现Redis数据读取(js读取redis)
- 在页面预览客户端本地图片的js代码(兼容FFIE)
- js获取坐标通过JS得到当前焦点(鼠标)的坐标属性
- JS的千分位算法实现思路
- js数组随机字符串(广告不重复)
- JS比较2个日期间隔的示例代码
- Jquery+asp.net后台数据传到前台js进行解析的方法
- JS判断浏览器是否支持某一个CSS3属性的方法