社区
C#
帖子详情
求算法, 任意位置大小的两个圆过圆心直径确定的四边形四个顶点坐标
hanbin0514
2012-09-17 08:53:44
delphi 函数原型
function GetRect(x1,y1,r1, x2, y2, r2) : TPointList
x1,y1,r1 第一个圆的中心点坐标和半径
x2,y2,r2 第二个圆的中心点坐标和半径
返回值 唯一四边形的四个顶点坐标
返回值类型和方式随意,能有四个坐标即可
用C#语法也行
...全文
220
19
打赏
收藏
求算法, 任意位置大小的两个圆过圆心直径确定的四边形四个顶点坐标
delphi 函数原型 function GetRect(x1,y1,r1, x2, y2, r2) : TPointList x1,y1,r1 第一个圆的中心点坐标和半径 x2,y2,r2 第二个圆的中心点坐标和半径 返回值 唯一四边形的四个顶点坐标 返回值类型和方式随意,能有四个坐标即可 用C#语法也行
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
19 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
chinajhl1
2012-09-17
打赏
举报
回复
错了,应为Xa1 = x1 + R * cos (α - β)
chinajhl1
2012-09-17
打赏
举报
回复
∠A1O1O2 = Acos((R - r) / O1O2), 得到∠A1O1O2,假设为α
O1O2与水平线的夹角为β
则Xa1 = r1 + R * cos (α - β)
其余类推
chinajhl1
2012-09-17
打赏
举报
回复
如果是公切线,算法又不一样了
hanbin0514
2012-09-17
打赏
举报
回复
夹角和斜率有关系么
chinajhl1
2012-09-17
打赏
举报
回复
Xa = x1 + r1 * cos(PI/4 -α)
Ya = y1 + r1 * sin(PI/4 - α)
α: 两圆心连线与水平线夹角,a点为半径为r1的圆的一点,图片传不上去。
hanbin0514
2012-09-17
打赏
举报
回复
谢谢,我去找找
快溜
2012-09-17
打赏
举报
回复
几何都忘光了,搞图形编程的应该懂这算法,你在网上搜一下。
hanbin0514
2012-09-17
打赏
举报
回复
老大,还是你描述确切,我都不知道如何表达清楚, 能帮忙解决下么,急啊
hanbin0514
2012-09-17
打赏
举报
回复
对,就是这个意思
快溜
2012-09-17
打赏
举报
回复
你要求的是应该是两个圆的外公切线。
快溜
2012-09-17
打赏
举报
回复
hanbin0514
2012-09-17
打赏
举报
回复
呵呵,数学公式也行啊,问题是数学太烂了,没法求
yonglaixiazaide
2012-09-17
打赏
举报
回复
圆心连线,左垂直线,就可以了,说不是说。。怎么写代码。。。
hanbin0514
2012-09-17
打赏
举报
回复
你能看到我的头像么,那个就是图示,我不会传附件
快溜
2012-09-17
打赏
举报
回复
谁能把题目详解一遍,悟性不够啊
hanbin0514
2012-09-17
打赏
举报
回复
嗯,是的,所以只能有唯一一个,我数学不好,所以求高手指点算法
Chobitssp
2012-09-17
打赏
举报
回复
楼主意思是 2直径平行 且 垂直于圆心连接线?
hanbin0514
2012-09-17
打赏
举报
回复
嗯,我也描述不清,看我头像的示意图,就那唯一一个等腰梯形
真相重于对错
2012-09-17
打赏
举报
回复
唯一吗?
labview 知道1直线过
圆心
且知道圆上2点
求
圆心
坐标
labview 知道1直线过
圆心
且知道圆上2点
求
圆心
坐标
10250 The Other Two Trees
这道题乍看之下有些困难,其实题目的意思是告诉
两个
点的
坐标
,以这
两个
点连线作为
直径
画一个圆,然后
求
圆上面另外
两个
点连线过
圆心
且连线和前面的
直径
垂直。 我的做法是首先
求
出
两个
点的中心点,然后平移中心点
坐标
到原点,题目告诉的
两个
点也一样平移,假设移动之后
两个
点中有一个点的
坐标
为(a,b),那么所
求
的点平移之后的
坐标
就分别为(b,-a)和(-b,a),这个根据两向量垂直其向量内积为零以及向量的长度的公式
一个有趣的问题(随缘更新)
最近我发现了一个有趣的问题,问题如上。问题简化一下,大概就是一圆内有
四个
随机生成的点,
求
四个
点在同一半圆的概率。 问题分析: 怎么判断四点是否在同一半圆内? 怎么判断一个点是否在一个凸多边形内? 怎么通过
四个
点生成一个凸多边形? 怎么定量判断一点是否在一个三角形内? 先解决第一个问题,那我们都知道,
任意
一天圆的
直径
都能将一个圆平分,而
任意
一条
直径
都过
圆心
,所以只要
圆心
不在四点所围成的凸多边形,那为什么是凸多边形呢?后面会有解答。 解决第一个问题后,随之衍生出第二个问题,先明确凸多边形是啥意
OpenCV图像矫正
基本步骤:1)变为灰度图;2)Canny边缘检测:Canny
算法
的基本思想是寻找一张图片中灰度强度变化最强(梯度方向)的
位置
;3)使用 OpenCV 的 findcontours() 提取轮廓(一个轮廓对应一组点集);4)根据轮廓
求
最小外包
四边形
(一个
四边形
对应
四个
点
坐标
);5)筛选得到的
四边形
(面积最大、各角接近90°等),存储
四个
顶点
坐标
;6)根据
顶点
变换得到矫正后的图片。
C++实现已知圆的
任意
三点
求
圆心
和半径
原理:圆上的
任意
两点的连线称作弦,弦的中垂线必过
圆心
,取三点组成的两条弦的中垂线的交点,即为
圆心
,再通过
圆心
求
半径. 其中三点
坐标
为 (dx1,dy1) (dx2,dy2) (dx3,dy3) h1 h2 是弦的的中垂线的 斜率 x y 为
圆心
坐标
radius 为半径 double midx1,midy1,midx2,midy2; double h1,h2; //
求
前
两个
点的中心点 midx1 = (dx1 + dx2) / 2; midy1 = (dy1 + dy2) /...
C#
109,894
社区成员
642,649
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章