明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1688|回复: 5

[基础] 关于根据已知点批量画圆

[复制链接]
发表于 2011-5-13 10:26:19 | 显示全部楼层 |阅读模式
菜鸟求教,已有这么一个画圈的lisp(如下)。因我现在有太多的已经点,故想修改一下,如何把选择圆心点时改为能够批量选择?


(defun c:yuan (/ i j pt r )
(setvar "cmdecho" 0)
(setq i 1)
(while (= i 1)
(setq r (getdist "\n请选择半径长度: "))
(if (/= r nil)
(progn
(setq j 1)
(while (= j 1)
(setq pt (getpoint "\n请选择心: "))
(if pt
(command "circle" pt r)
(setq j 0)
)
)
)
(setq i 0)
)
)
(princ)
)
发表于 2011-5-13 10:53:05 | 显示全部楼层
(defun c:yuan (/ i j pt r )
  (setvar "cmdecho" 0)
  (setq i 1)
  (while (= i 1)
    (setq r (getdist "\n请选择半径长度: "))
    (if (/= r nil)
      (progn
        (setq j 1)
        (while (= j 1)
          (setq ss (ssget '((0 . "point"))))
          (if ss
            (progn
              (setq a 0)
              (repeat (sslength ss)
                (command "circle" (cdr (assoc 10 (entget (ssname ss a)))) r)
                (setq a (+ a 1))
              )
            )
            (setq j 0)
          )
        )
      )
      (setq i 0)
    )
  )
  (princ)
)
发表于 2011-5-13 11:41:23 | 显示全部楼层
(defun hyuan (/ fn pt ptt po_x po_y point_xy)
(setq fn (open fle "r"))
  (while(setq pt(read-line fn))
   (setq ptt(read (strcat "(" pt ")")))
   (setq po_x(car ptt) po_y(cadr ptt)point_xy(list po_x po_y))
   (command "CIRCLE" point_xy 0.8)   ;;;设置圆的半径
  )
(close fn)
)


有坐标点更快
发表于 2012-11-3 20:09:19 | 显示全部楼层
不知道文字的中心怎么确定,我想圈文字 呵呵
发表于 2013-2-8 23:19:02 | 显示全部楼层
我现在想把圆的中心点标注出来,用什么办法啊?
发表于 2013-2-8 23:19:51 | 显示全部楼层
希望用有高手帮我一下,谢谢了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-31 21:31 , Processed in 0.165730 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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