- A+
所属分类:CAD二次开发
在用到圆弧的时候需要用到圆弧上的中点,经过多次折腾中点都对不上,圆弧的方向大小都不能统一,求到的中点也无效。。于是,接着折腾。。。
因为函数不太熟的原因,自己写代码很费劲,要查函数还有在网上查资料,收索有关的资料。
经过无数次的折腾和测试,在不断测试下,最终有效求得圆弧上的中点。
直接上代码:
(setq p1 (cdr (assoc 10 (entget 对象)))) ;圆心
(setq r (cdr (assoc 40 (entget 对象)))) ;半径
(setq r1 (cdr (assoc 50 (entget 对象))));起始角
(setq r2 (cdr (assoc 51 (entget 对象))));终止角
(setq p2 (polar p1 r1 r));起点
;(setq p4 (- r1 r2);圆心角
;(if (> 起角 终角) (setq 终角 (+ (* pi 2) 终角)));方向
;(setq p5(trans (polar 圆心 (+ 起角 (/ (- 终角 起角) 2.0)) 半径) 圆弧图元 坐标参数));中点、坐标参数0/1,0表示世界,1表示用户ucs
复制
可直接替换自己的对象即可
圆弧中点用中文标示,更容易理解,使用时替换上面对应的即可