关于求线段和线段,线段和圆弧,圆弧与圆弧的交点算法

您所在的位置:网站首页 两条直线的交点坐标计算公式 关于求线段和线段,线段和圆弧,圆弧与圆弧的交点算法

关于求线段和线段,线段和圆弧,圆弧与圆弧的交点算法

2024-07-16 14:31| 来源: 网络整理| 查看: 265

1、线段与线段求交点

已知线段的起点和终点,求交点,这个比较简单,解2个二元一次方程可以求出。

a、我这里的算法是判断2条线段的定义域和值域是否有重合地方,有则进行下一步判断,没有这返回空,表示没有交点。

b、根据直线方程2点式y - y1 = (y2 - y1) / (x2 - x1)(x - x1),进行解方程,不过这之前先进行对斜率判段,分为斜率k不存在,k=0,k存在三种情况,

当然这里也可以分为2种情况,斜率存在与不存在。

c、最后解方程,求出根后,进行验证,验证是否在其值域和定义域内。

2、线段和圆弧求交点

已知线段的起点和终点,圆弧的圆心,弧的起点和弧长所对应角度(角度大于0表示逆时针偏移角度)

分析:圆弧有优弧和劣弧,顺时针和逆时针之别,所以这里用到一个带符号的角度来表示顺时针和逆时针。由于圆弧属于圆上的一段,我这里先用线段和圆的方程求交点,

再判断交点是否在圆弧上得出。

a、首先求圆弧的圆心到直线(线段)的距离d  = (Ax0 + By0 + C) / (A^2 + B^2),这里要先求出线段的直线方程,这里我们用的是直线的一般方程表示,

就暂时用考虑斜率的问题了。

直线方程的一般式:Ax + By + C = 0;其中ABC可以对(1)中的2点式方程化简算出ABC关于x1,y1,x2,y2的表达式。

b、在求出圆弧的半径r,半径的求法可以根据圆心与弧的起点的距离可以得知,先判断r与d的关系,若d = 0表示有解,



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3