stevesfr 发表于 2022-7-6 08:58:11

Lee,当使用程序旋转具有属性的块时,属性围绕其插入点旋转,块围绕其插入点旋转。最好能够选择完全围绕块插入点旋转块和属性(类似于旋转命令,但是使用旋转命令和窗口化多个块只允许选择一个基点或一个INS点)
只是一个想法。。。
史蒂夫

Lee Mac 发表于 2022-7-6 09:02:31

 
这应该是当前的行为,因为我只更改块旋转,这是我在测试时看到的行为。还有人看到史蒂夫描述的行为吗?

stevesfr 发表于 2022-7-6 09:05:58

 
附上的是我的dwg与块代理时髦
史蒂夫
测试br。图纸

pBe 发表于 2022-7-6 09:09:12

我唯一一次看到具有属性的块的行为是当使用注释性文字样式并将文字方向与布局模式匹配时,
但你附上的样品显然不是。
 
我尝试附加文件,但不知为什么附件按钮没有响应

irneb 发表于 2022-7-6 09:10:22

很抱歉,但这就是具有属性的块的工作方式-即使在块定义内将属性锁定在适当的位置也没有帮助。如果使用“特性”选项板(基本上与Lee的代码相同)更改块的旋转,则属性不会围绕块的插入旋转-它们可能会改变方向,但它们都有自己的插入点,可以围绕这些插入点进行调整。为了在事后修复它,您可以使用AttSync/BAttMan,但请注意,它会导致镜像块出错。
 
否则,您需要修改Lee的例程,在每个块上依次执行旋转命令,而不仅仅是更改其旋转属性。这将旋转块及其属性-正如您所期望的那样。尽管这会使例行程序变得极其缓慢。

Movieangel 发表于 2022-7-6 09:14:55

我知道这是一个非常古老的话题,但我正试图在规模上做同样的事情。我已经用过你的旋转lsp好几次了,我知道做同样的事情可能非常容易,让所有的块从它们的起始点开始缩放,但不幸的是,我对它知之甚少。LSP对其进行修改。我打算试一试,但我想我会把它扔出去,以防它实际上是一个2分钟的修复,将需要我2个小时。非常感谢旋转lsp。今天它为我节省了很多时间。

Lee Mac 发表于 2022-7-6 09:18:13

首先,很高兴你能使用旋转程序。
 
只需选择块(可能是QSelect),转到“属性”面板并更改X、Y、Z比例值,就可以在不使用LISP的情况下更改多个块的比例。
 
但是LISP对于任务来说同样简单:
 
(defun c:BlockScale ( / c e i s x )
   (if
       (and
         (setq s (ssget "_:L" '((0 . "INSERT"))))
         (setq x (getdist "\nSpecify New Scale for Blocks: "))
       )
       (repeat (setq i (sslength s))
         (setq e (entget (ssname s (setq i (1- i)))))
         (foreach c '(41 42 43)
               (setq e (subst (cons c x) (assoc c e) e))
         )
         (entmod e)
       )
   )
   (princ)
)

Movieangel 发表于 2022-7-6 09:21:14

李,你真的让我惊讶。我希望我的大脑能像你一样轻松地用代码思考。这是你帮我解决的第三个问题。我使用螺柱。lsp也非常频繁。非常感谢。缩放lsp实际上不适用于我的属性中的文本,但你是对的,我可以只使用属性。我用属性来做其他的事情,我不知道为什么我不想用它来做这个。再次感谢。

Lee Mac 发表于 2022-7-6 09:25:53

谢谢你,安吉尔,你过奖了

mpozauko 发表于 2022-7-6 09:28:20

嘿,伙计们。我想知道是否有可能使所有选定的块在三维/二维pline上都是逐根的?我一直在寻找一个Lisp程序这样做在不同的论坛,但没有成功。
页: 1 [2]
查看完整版本: 围绕多个块旋转