乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 20|回复: 1

[原创] 对比较乱的座标式标注进行对齐式标注

[复制链接]

30

主题

123

帖子

8

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
241
发表于 2004-3-17 21:49:00 | 显示全部楼层 |阅读模式
对比较乱的座标式标注进行对齐式标注,但只执行了一次循环,后面的不能执行,请各位多指教.
(defun c:p_dim()
(setvar "cmdecho" 0)
(setq old_la (getvar "clayer"))
(setvar "clayer" "尺寸线层")
(prompt "\n选择基准尺寸")
(setq ent1 (entsel))
         (while (= nil ent1)
                         (prompt "\n选择基准尺寸")
                         (setq ent1 (entsel))
         )
(setq en1 (entget (car ent1)))
(setq uc1 (trans (cdr (assoc 10 en1))0 1))
(command "ucs" "o" uc1)
(setq po1 (trans (cdr (assoc 13 en1)) 0 1))
(setq po2 (trans (cdr (assoc 14 en1)) 0 1))
(prompt "\n选择更新尺寸")
(setq i 0)
(setq ent2 (ssget '((0 . "DIMENSION"))))
         (while (= nil ent2)
                         (prompt "\n选择更新尺寸")
                         (setq ent2 (ssget '((0 . "DIMENSION"))))
         )
         (repeat         (sslength ent2)
                         (progn
                                         (setq en2 (entget (ssname ent2 i)))
                                         (setq uc2 (trans (cdr (assoc 10 en2)) 0 1))
                                         (setq e3         (trans (cdr (assoc 13 en2)) 0 1))
                                         (setq e4         (trans (cdr (assoc 14 en2)) 0 1))
                                         (command "erase" ent1 "")
                                         (command "erase" ent2 "")
                                         (command "DIMORDINATE" po1 po2)
                                         (command "DIMCONTINUE" e3 "" "")
                         )
         (setq i (1+ i))
         )
(setvar "clayer" old_la)
(princ)
)
回复

使用道具 举报

29

主题

1152

帖子

10

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1268
发表于 2004-3-18 08:20:00 | 显示全部楼层
(repeat (sslength ent2)
                         (progn
                                         (setq en2 (entget (ssname ent2 i)))
                                         (setq uc2 (trans (cdr (assoc 10 en2)) 0 1))
                                         (setq e3 (trans (cdr (assoc 13 en2)) 0 1))
                                         (setq e4 (trans (cdr (assoc 14 en2)) 0 1))
                                         (command "DIMORDINATE" po1 po2)
                                         (command "DIMCONTINUE" e3 "" "")
                         )
                         (setq i (1+ i))
         )
         (command "erase" ent1 "");move
         (command "erase" ent2 "");move
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-8-15 10:57 , Processed in 1.303689 second(s), 57 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表