[原码]发一个小程序,圆圈序号
;;圆圈序号程序by. yxp(defun c:yuan( / ss1 ssn n ssr ssb ssc ssd oldmod)
(setvar "cmdecho" 0) (if (null vl-load-com) (vl-load-com))
(princ "\n 选择要标注序号的圆:")
(setqss1 (ssget '((0 . "circle")))
ssn (sslength ss1)
n 0ssc '())
(repeat ssn
(setq ssb (cdr (assoc 10 (entget (ssname ss1 n))))
ssr (cdr (assoc 40 (entget (ssname ss1 n))))
ssd (list ssb (* 1.4 ssr)
(polar ssb (* -1 (+ (* 0.5 pi) 0.698132)) (* ssr 0.913782))
(polar ssb (* -1 (- (* 0.5 pi) 0.698132)) (* ssr 0.913782)))
ssc (cons ssd ssc) n (1+ n)))
(setq ssc (vl-sort ssc (function (lambda (e1 e2)(< (car (car e1)) (car (car e2))))))
ssc (vl-sort ssc (function (lambda (e1 e2)(> (cadr (car e1))(cadr (car e2)))))))
(setq n 0)
(command "undo" "be")(setq oldmod (getvar "osmode"))(setvar "osmode" 0)
(repeat ssn (command "text" "j" "f" (caddr (nth n ssc))(cadddr (nth n ssc))(cadr (nth n ssc)) (itoa (setq n (1+ n)))))
(setvar "osmode" oldmod)(command "undo" "e")
(princ)
)
客人 发表于 2009-9-12 18:34
字稍嫌大了点
ssd (list ssb (* 1.0 ssr) 字稍嫌大了点 字稍嫌大了点 <p>也可用以下圆编号程序:</p><p>明经CAD社区 → 工程篇 → 测绘与GIS → [原创]工程桩(圆桩)自动编号及其坐标提取程序 </p><p><a href="http://bbs.mjtd.com/forum.php?mod=viewthread&tid=67742">http://bbs.mjtd.com/forum.php?mod=viewthread&tid=67742</a><br/></p> X坐标从小到大,Y坐标从大到小排序,要是行的Y坐标不相等,排序就不是左-->右排序。 这要涉及到坐标的排序问题了,楼主不知道这个有没有考虑周到! 建议增加一个选项,按用户选择的顺序编号,比如有10个圆,先选择的圆先编号(选择的第一个编号1),后选择的圆后编号(最后选择的一个编号10)。 <p>楼主,请看一下,我在新建的文件上用,很正常;但在我已经画好的图中用时就出现了以下情况。是不是与哪个东西有冲突呀</p><p>选择对象:<br/>未知命令“1”。按 F1 查看帮助。<br/>未知命令“2”。按 F1 查看帮助。<br/>未知命令“3”。按 F1 查看帮助。<br/>未知命令“4”。按 F1 查看帮助。<br/>未知命令“5”。按 F1 查看帮助。<br/>未知命令“6”。按 F1 查看帮助。<br/>未知命令“7”。按 F1 查看帮助。<br/>未知命令“8”。按 F1 查看帮助。<br/>未知命令“9”。按 F1 查看帮助。<br/>未知命令“10”。按 F1 查看帮助。<br/>未知命令“11”。按 F1 查看帮助。<br/>未知命令“12”。按 F1 查看帮助。<br/>未知命令“13”。按 F1 查看帮助。<br/>未知命令“14”。按 F1 查看帮助。<br/>未知命令“15”。按 F1 查看帮助。<br/>未知命令“16”。按 F1 查看帮助。</p> cyw2626发表于2009-9-13 21:54:00static/image/common/back.gif楼主,请看一下,我在新建的文件上用,很正常;但在我已经画好的图中用时就出现了以下情况。是不是与哪个东西有冲突呀选择对象:未知命令“1”。按 F1 查看帮助。未知命令“2”。按 F1 查看帮助
<p>当前字体样式指定了高度。</p> 字稍嫌大了点
页:
[1]
2