概要
最近在做CAD文件导入,多段线凸度求圆心坐标
整体架构流程
复杂过程不赘述,网上找了好久,很多都收费,终于看到一个博主分享的,推导过后的公式,相当简单,三行代码
技术名词解释
凸度:这段弧所对应的弧度(角度)的1/4的正切值,即
bulge = tan(θ/4) , 其中 θ 是弧本身在其所在圆中所对应的弧度(角度)
技术细节
原创地址:http://bbs.xdcad.net/thread-722387-1-1.html
以防万一,搬来留记
假设此段凸度弧的起点和端点分别是(x1,y1),(x2,y2),凸度为bulge(有符号)。
那么圆心的坐标为:
x=0.5*((x1+x2)-b*(y2-y1))
y=0.5*((y1+y2)+b*(x2-x1))
其中:b=0.5*(1/bulge-bulge)
bulge=0时,代表直线,显然不需要计算圆心。
用过其他人的,结果不对,以上公式,亲测可行。
小结
` 推导很复杂,公式很简单,感谢大神分享。