明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1214|回复: 5

给块加上一个圆

[复制链接]
发表于 2008-10-31 22:25:00 | 显示全部楼层 |阅读模式
大家好.我想要一个程序.首先执行某个命令.再选择多个任意块.然后回车.这些块就加上了一个圆圈.圆圈不到块里面,圆圈大小可以手输入.层可以在0层或者,当前层,请问那位高手能做到吗.好烦.公司最近老让我给这些块画一个个圆圈
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2008-11-1 09:42:00 | 显示全部楼层
(defun c:tt (/ s d i)
  (if (and (setq s (ssget '((0 . "insert"))))
           (setq d (getdist "\n指定圆直径: "))
      )
    (repeat (setq i (sslength s))
      (setq p (cdr (assoc 10 (entget (ssname s (setq i (1- i)))))))
      (entmake (list '(0 . "circle") (cons 10 p) (cons 40 (/ d 2.))))
    )
  )
  (princ)
)
 楼主| 发表于 2008-11-1 23:37:00 | 显示全部楼层
谢谢谢谢.实在感谢.要是那么多,我加一个月也加不完.
 楼主| 发表于 2008-11-1 23:40:00 | 显示全部楼层
对了.能不能增强它的功能.比如说.我先用过滤器选择这些块.再用这个程序.能加上圆不
发表于 2008-11-2 10:57:00 | 显示全部楼层
(defun c:tt (/ s d i)(COMMAND"PAN"'(0 0)'(0 0))
  (if (and (setq s (ssget "P"))
           (setq d (getdist "\n指定圆直径: "))
      )
    (repeat (setq i (sslength s))
      (setq p (cdr (assoc 10 (entget (ssname s (setq i (1- i)))))))
      (entmake (list '(0 . "circle") (cons 10 p) (cons 40 (/ d 2.))))
    )
  )
  (princ)
)
发表于 2022-8-20 10:38:01 | 显示全部楼层
jxlsp 发表于 2008-11-2 10:57
(defun c:tt (/ s d i)(COMMAND"PAN"'(0 0)'(0 0))  (if (and (setq s (ssget "P"))  &nbsp ...

老师您好!如果直径改成插入指定半径的圆怎么改呢?请指教
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-15 09:37 , Processed in 0.155774 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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