daiguafan 发表于 2013-8-5 21:37:12

对选择集进行筛选有时无法筛选的求救

本帖最后由 daiguafan 于 2013-8-5 21:39 编辑

想做一个更改比例的lisp。参考了论坛关于选择集筛选的程序。
主要是选择标注样式、文字大小以及插入的标高块。但是发现程序有时可以全部修改
有时又只修改一部分。比如修改标高,但是标注样式不变。
请问问题出在哪
(defun c:csc ()
(setq ss1 nil
      ss2 nil
       DOC (vla-get-ActiveDocument (vlax-get-acad-object))
      sc2(getint"\n¸üбÈÀý")
)
(cond
((= sc2 50)
          (setq CSt "EF-50@500" ))
((= sc2 100)
          (setq CSt "EF-100@100" ))
((= sc2 150)
          (setq CSt "EF-150@150"))
((= sc2 200)
          (setq CSt "EF-200@200"))   

)

(if (setq ss (ssget '((0 . "MTEXT,TEXT,DIMENSION,insert"))))
    (progn
(setq ss-text (ssget "p" '((0 . "MTEXT,TEXT"))))
(if ss-text

    (vlax-for OBJ (vla-get-ActiveSelectionSet Doc) (vla-put-Height OBJ (* 3.0 sc2)))
)
(sssetfirst nil ss)   
      (setq ss-dim (ssget "p" '((0 . "DIMENSION"))))
   
(if ss-dim
    (vlax-for OBJ (vla-get-ActiveSelectionSet DOC) (vla-put-StyleName OBJ CSt))
   )
(sssetfirst nil ss)

(setq ss-block (ssget "p" '((0 . "insert")) ))

(if ss-block
    (progn
    (vlax-for OBJ (vla-get-ActiveSelectionSet Doc) (vla-put-XScaleFactor OBJ (/ sc2 100.00)))
    (vlax-for OBJ (vla-get-ActiveSelectionSet Doc) (vla-put-yScaleFactor OBJ (/ sc2 100.00)))
    (vlax-for OBJ (vla-get-ActiveSelectionSet Doc) (vla-put-zScaleFactor OBJ (/ sc2 100.00)))
    )
)
    (sssetfirst nil ss)


)
)


)

Andyhon 发表于 2013-8-5 22:15:11

(sssetfirst nil ss)
Try===>
(command "Select" ss "")

daiguafan 发表于 2013-8-5 22:21:09

Andyhon 发表于 2013-8-5 22:15 static/image/common/back.gif
(sssetfirst nil ss)
Try===>
(command "Select" ss "")

收到。我试试。

daiguafan 发表于 2013-8-5 22:29:25

Andyhon 发表于 2013-8-5 22:15 static/image/common/back.gif
(sssetfirst nil ss)
Try===>
(command "Select" ss "")

好像是这个原因啊。
二者有什么区别呢?

自贡黄明儒 发表于 2013-8-6 07:41:00

好象两个都可以,只不过上面那个语句没写完,我通常用后面那个

daiguafan 发表于 2013-8-6 08:58:36

自贡黄明儒 发表于 2013-8-6 07:41 static/image/common/back.gif
好象两个都可以,只不过上面那个语句没写完,我通常用后面那个

后面的那个可行啊。上面没写完?要加什么?

自贡黄明儒 发表于 2013-8-6 12:54:02

daiguafan 发表于 2013-8-6 08:58
后面的那个可行啊。上面没写完?要加什么?

见我那个帖子,《笔记之一》
页: [1]
查看完整版本: 对选择集进行筛选有时无法筛选的求救