prodromosm 发表于 2022-7-5 16:30:01

帮助:缩放因子x,y,z=1

您好,我正在使用此代码将块比例因子x、y、z更改为1。这个程序在我所有的积木上都不能正常工作,我不知道为什么!!我需要修改一下代码。我想用窗口选择所有块,然后更改比例因子。我相信这个改变会解决这个问题。
 
谁能帮忙吗。谢谢
 

(defun C:BS ( / SS ent vla-obj )
(vl-load-com)
(if (setq SS (ssget "X" (list (cons 0 "INSERT"))))
        (repeat (setq i (sslength SS))
                (setq ent (ssname SS (setq i (1- i))))
                (setq vla-obj (vlax-ename->vla-object ent))
                (if
                        (and
                                (or
                                        (not (= (vla-get-XScaleFactor vla-obj) 1.0))
                                        (not (= (vla-get-YScaleFactor vla-obj) 1.0))
                                        (not (= (vla-get-ZScaleFactor vla-obj) 1.0))
                                )
                                ; (vlax-get-IsDynamicBlock vla-obj :vlax-true)
                                (vlax-property-available-p vla-obj 'EffectiveName)
                                (member (vlax-get vla-obj 'EffectiveName)
                                        '("AnnotPoint" "AnnotRepers" "AnnotKORYFES" "Annotstation" "AnnotTrigonom" "AnnotKOKAEK" "AnnotKOROT" "AnnotARID1" "AnnotAROT1" "AnnotDEH1" "Annotdvelos" "AnnotEikonastasi" "AnnotFANARI" "Annotkrounos" "AnnotMPASKETA" "AnnotOTE1" "AnnotSHMA1" "AnnotSHMA2" "AnnotSHMA3" "Annotstathmi" "Annotstayros" "annotTREE1" "annotTREE2" "annotTREE3" "annotTREE4" "annotTREE5" "annotTREE6" "annotTREE7" "annotTREE8" "annotTREE9" "annotTREE10" "annotTREE11" "annotTREE12" "annotTREE13" "AnnotNORTH" "Annotodsta" "Annotodtrig" "Annotvana" "Annotvelos")
                                )
                        )
                        (progn
                                (vla-put-XScaleFactor vla-obj 1.0)
                                (vlax-put-property vla-obj 'YScaleFactor 1.0)
                                (vlax-put vla-obj 'ZScaleFactor 1.0)
                        )
                )
        );repeat
)
(vla-Regen (vla-get-ActiveDocument (vlax-get-acad-object)) acActiveViewport)
(princ)
);defun       

Hippe013 发表于 2022-7-5 17:20:25

更改:
 
(setq SS (ssget "X" (list (cons 0 "INSERT"))))
 
收件人:
 
(setq SS (ssget (list (cons 0 "INSERT"))))

prodromosm 发表于 2022-7-5 17:48:22

谢谢Hippe013
页: [1]
查看完整版本: 帮助:缩放因子x,y,z=1