关于圆弧坐标值

shanwell 2008-05-05 02:38:01
已知两圆弧FArc,SArc,各自的所在圆位置[圆心、半径]、起始坐标及终止坐标,

若这两圆弧相交(包含相切),如何取出相交点的坐标?
...全文
197 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
shanwell 2008-05-06
  • 打赏
  • 举报
回复
谢谢~
用户 昵称 2008-05-06
  • 打赏
  • 举报
回复
两圆心,交点可以构成直角三角形,三边已知,所以三个角也已知,只需要算一个arcsin与arccos就知道了。
shanwell 2008-05-06
  • 打赏
  • 举报
回复
惭愧,把以前的几何知识交还老师了,那位兄台能详细解说一下的?最好把定义的变量也注明一下`~惭愧惭愧
用户 昵称 2008-05-05
  • 打赏
  • 举报
回复
俺的方法有点复杂了,楼主可以用解三角型的方法来完成,现在直角三角型的三条边都已知了,自然三个角也可以算出来,有起点(圆心),有方向(圆心连线的角度加减某个夹角),有长度(某个半径),算这两个交点只是个解三角形问题。
zzyong00 2008-05-05
  • 打赏
  • 举报
回复
一个纯数学问题而已
用户 昵称 2008-05-05
  • 打赏
  • 举报
回复
	u = ( ( cx2 * cx2 ) - ( cx1 * cx1 ) + ( cy2 * cy2 ) - ( cy1 * cy1 ) - ( r2 * r2 ) + ( r1 * r1 ) );
v = 2 * ( cy1 - cy2 );
w = 2 * ( cx2 - cx1 );

a = ( v * v + w * w );
b = ( 2 * u * v - 2 * cx1 * w * v - 2 * cy1 * w * w );
c = ( ( u * u ) - ( 2 * u * w * cx1 ) + ( w * w ) * ( cx1 * cx1 + cy1 * cy1 - r1 * r1 ) );

delta = ( b * b - 4 * a * c );


解方程组总会吧,如果delta大于等于0,有解。
shanwell 2008-05-05
  • 打赏
  • 举报
回复
楼上的,你这种思维我也会,但是怎么求出那个交点呢?有那位朋友会的,请来说一下~~
用户 昵称 2008-05-05
  • 打赏
  • 举报
回复
两圆弧相交,先求两圆弧所在的两圆是否相交,如果相交,再根据交点是否同时在两圆弧上来判断两弧是否相交。
打开下面链接,直接免费下载资源: https://renmaiwang.cn/s/02nv9 在计算机图形学中,处理圆弧的算法是十分常见的任务,特别是在二维图形渲染、游戏开发以及各种可视化应用中。这个“将圆弧分为N段获取每个点坐标(VC类)”的程序提供了一种方法来精确地将一个圆弧划分为N个等份,并计算出每个分段端点的坐标。以下是对这一技术的详细解释:我们来理解圆弧的基本概念。圆弧是圆形的一部分,通常由圆心、半径和起始角度与结束角度定义。在二维坐标系中,圆的标准方程是 (x - h)^2 + (y - k)^2 = r^2,其中(h, k)是圆心坐标,r是半径。圆弧的起点和终点可以通过圆心、半径和两个角度来确定,这两个角度分别代表了圆周上对应点与正X轴的夹角。要将圆弧分为N段,我们需要知道圆心坐标(Cx, Cy),半径R,起始角度Start_Angle(通常以弧度表示),以及结束角度End_Angle。假设我们的角度是从0到2π,那么每个分段的中心角度Δθ= (End_Angle - Start_Angle) / N。接下来,我们可以用以下步骤来计算每一段的端点坐标:1. **初始化**: 创建一个空的点坐标列表,用于存储圆弧上的N个点。2. **循环**:对于0到N-1的每一个i,执行以下操作: - 计算当前分段的中间角度Mid_Angle = Start_Angle + i * Δθ。 - 将角度转换为直角坐标:x = Cx + R * cos(Mid_Angle),y = Cy + R * sin(Mid_Angle)。cos和sin函数可以使用标准库如 `` 来实现。 - 将计算得到的(x, y)坐标添加到点坐标列表中。3. **返回结果**:点坐标列表包含了圆弧上N个等分点的坐标。在VC++环境中,你可以创建一个类,如`CircleSegment`,包

7,786

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧