YZ 发表于 2022-7-5 17:08:42

如何更改块特性

您好,我已经解决了如何在dwg中获取所有块。
 
现在我想把它们都设置为“X”刻度为1。
 
我对lisp还比较陌生,还不知道如何应用新属性。我只会读,不会写。
 
有人能给我指出正确的方向吗?

BIGAL 发表于 2022-7-5 17:24:02

使用dumpit。lsp选择一个区块并查看结果,而不是vla get use vla put。
 
;   XEffectiveScaleFactor=1.0
;   XScaleFactor=1.0
;   YeEffectiveScaleFactor=1.0
;   YScaleFactor=1.0
;   ZeEffectiveScaleFactor=1.0
;   ZScaleFactor=1.0

YZ 发表于 2022-7-5 17:40:14

谢谢Bigal!vla是否为区块专用?或者我可以用它来发短信吗?
 
请原谅我的无知,这是什么。lsp?

BIGAL 发表于 2022-7-5 18:05:03

Vla put属性在一个对象中有很多属性,比如你向文本询问块比例(Vla put XScaleFactor blockobj 2.0)
 

Command: DUMPIT

Select object: ; IAcadText: AutoCAD Text Interface
; Property values:
;   Alignment = 0
;   Application (RO) = #<VLA-OBJECT IAcadApplication 00007ff76c493318>
;   Backward = 0
;   Document (RO) = #<VLA-OBJECT IAcadDocument 000000002a4ad9f8>
;   EntityTransparency = "ByLayer"
;   Handle (RO) = "606C"
;   HasExtensionDictionary (RO) = 0
;   Height = 0.2
;   Hyperlinks (RO) = #<VLA-OBJECT IAcadHyperlinks 00000000317c7e48>
;   InsertionPoint = (7267.25 2461.08 0.0)
;   Layer = "0"
;   Linetype = "ByLayer"
;   LinetypeScale = 1.0
;   Lineweight = -1
;   Material = "ByLayer"
;   Normal = (0.0 0.0 1.0)
;   ObjectID (RO) = 43
;   ObjectID32 (RO) = 43
;   ObjectName (RO) = "AcDbText"
;   ObliqueAngle = 0.0
;   OwnerID (RO) = 44
;   OwnerID32 (RO) = 44
;   PlotStyleName = "ByLayer"
;   Rotation = 0.0
;   ScaleFactor = 1.0
;   StyleName = "Standard"
;   TextAlignmentPoint = (0.0 0.0 0.0)
;   TextGenerationFlag = 0
;   TextString = "asdfg"
;   Thickness = 0.0
;   TrueColor = #<VLA-OBJECT IAcadAcCmColor 00000000317c8920>
;   UpsideDown = 0
;   Visible = -1

 

;;;===================================================================;
;;; DumpIt                                                            ;
;;;-------------------------------------------------------------------;
;;; Dump all methods and properties for selected objects            ;
;;;===================================================================;
(defun C:DumpIt ( / ent)
(while (setq ent (entsel))
   (vlax-Dump-Object
   (vlax-Ename->Vla-Object (car ent))
   )
)
(princ)
)

Roy_043 发表于 2022-7-5 18:17:20

注意:这是(vlax转储对象)的签名:
(vlax-dump-object obj )
如果没有可选的第二个参数,将不会列出方法。
页: [1]
查看完整版本: 如何更改块特性