尽管如此,我很惊讶我不能在vlide或tblsearch中检查这两个区块
因为审计“修复了它们”,所以它们似乎没有正确制作
造成这两个方块的代码是。。。 匿名块的名称开头将有一个*号。
计算机辅助设计的怪癖每次都会从背后咬你。“我们遇到了敌人,他们就是我们。”
非常正确。。我猜想它们是用匿名dxfcode标志创建的,但名称无效。。。因为它们没有列在“插入”对话框中,并且试图编辑它们时出现了该错误
@杰夫@SLW210
谢谢你们俩。谢谢你告诉我原因。
很高兴你现在知道了。
我使用这段代码将匿名块更改为普通块。
;;Anonymous block change to normal block
(if (setq ss (ssget "_+.:S:E:L" '((0 . "INSERT") (2 . "`**"))))
(progn
(setq pt (cdr(assoc 10(entget(ssname ss 0)))))
(command "_.explode"ss )
(setq ss2 (ssget "p"))
(emkblk ss2 pt n )
(princ "\n>>>Complete!")
)
(alert "\nNot Anonymous block, please try again!...")
)
(defun emkblk (ss pt name / i)
(entmake (list '(0 . "block") (cons 2 name) '(70 . 0) (cons 10 pt)))
(repeat (setq i (sslength ss)) (entmake (cdr (entget (ssname ss (setq i (1- i)))))))
(entmake '((0 . "ENDBLK")))
(command "_.erase" ss "")
(entmake (list '(0 . "INSERT") (cons 2 name) (cons 10 pt)))
)
有更好的方法吗?有什么建议吗?谢谢 段您好,
如果你愿意的话,给你一些建议;
[列表]
[*]块名必须是唯一的,您应该使用函数tablsearch函数检查当前图形中是否还存在新的块名。
[*]块名也必须有效,因此使用函数snvalid签出名称。
[*]最后一件事可能是检查块是否可分解,如果是,您可以继续创建新的块定义,而不会出现任何错误。
[*]在任何时候尝试在AutoCAD中修改对象时,另一件至关重要的事情是检查对象是否不在锁定层上,如果是,请解锁该层或取消该过程(当然,如您所愿)。
[/列表]
祝你好运
非常感谢你!塔尔瓦特。
非常好的建议。
祝你好运
如果你需要任何进一步的帮助,请告诉我。
页:
1
[2]