明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1368|回复: 2

[提问] 自动绘圆

[复制链接]
发表于 2013-8-23 18:13:11 | 显示全部楼层 |阅读模式
框选图中所有多段线形成的多边形,并在每个角点绘制一个直径10的小圆




发表于 2013-8-23 19:34:32 | 显示全部楼层
研究研究多段线的组码吧
发表于 2013-8-24 13:42:35 | 显示全部楼层
  1. (defun c:plc (/ ss i lis name lit k)
  2.   (defun tcp (PLINE)
  3.     (equal (vlax-curve-getStartPoint PLINE)
  4.      (vlax-curve-getEndPoint PLINE)
  5.      1E-6
  6.     )
  7.   )
  8.   (setq ss (ssget '((0 . "LWPOLYLINE"))))
  9.   (setq i 0)
  10.   ;lis '())
  11.   (while (< i (sslength ss))
  12.     (if (tcp (setq name (ssname ss i)))
  13.       (progn
  14.   (setq lit (entget name))
  15.   (if (= (cdr (assoc 70 lit)) 1)
  16.     (progn
  17.       (foreach tem lit
  18.         (if (= (car tem) 10)
  19.           (entmakex (list '(0 . "CIRCLE") (cons 10 (cdr tem)) '(40 . 5.0)))
  20.         )
  21.       )
  22.     )
  23.     (progn
  24.       (setq lis '())
  25.       (foreach tem lit
  26.         (if (= (car tem) 10)
  27.     (setq lis (cons tem lis))
  28.         )
  29.       )
  30.       (setq k 0)
  31.       (repeat (- (length lis) 1)
  32.         (entmakex (list '(0 . "CIRCLE") (cons 10 (cdr (nth k lis))) '(40 . 5.0)))
  33.         (setq k (+ k 1))
  34.       )
  35.     )
  36.   )
  37.       )
  38.     )
  39.     (setq i (+ i 1))
  40.   )
  41. )
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-5-26 12:11 , Processed in 0.154021 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表