(XD::Geom:Poly2Arc)将PolyLine的弧段数据转化为Arc数据
(defun XD::Geom:Poly2Arc (p1 bulg p2 / ang cen rad)(setq ang (* 2.0 (atan bulg))
rad (/ (distance p1 p2) (* 2.0 (sin ang)))
cen (polar p1 (+ (- (/ pi 2.) ang) (angle p1 p2)) rad)
)
(if (minusp bulg)
(list nil cen (abs rad) (angle cen p2) (angle cen p1))
(list t cen (abs rad) (angle cen p1) (angle cen p2))
)
)
逆顺时针,是判断那个多段线给后续程序用的。 本帖最后由 ayl1004 于 2013-6-11 14:41 编辑
这程序好象有bug
没考虑b>1的情况
ayl1004 发表于 2013-6-11 14:36
这程序好象有bug
有什么Bug,请具体点,以便楼主修正! 汗,是我弄错了 不建议用sin函数,误差较大:) 夏生生 发表于 2013-6-11 18:58
不建议用sin函数,误差较大
此话怎解? 逆顺时针是什么呀? 学习一下
页:
[1]