420325 发表于 2022-7-6 14:56:58

AUTOLISP插入块和rot

我试图找到或构建一个LISP,它将插入一个块@+20’Z坐标。将其与块的插入点一起定位,然后从块的中心旋转。
 
如果没有;我想做的是在管道上插入一个高程标记,然后旋转它使其对齐。
 
 
谢谢
 
 
我发现了这个,但我不擅长编辑LISP
 

2001jonathon 发表于 2022-7-6 15:51:49

 
你为什么不试着这样做呢。
 
(defun c:spinblk (/ doc ss ll ur midpt)
(vl-load-com)
(if (and (ssget '((0 . "INSERT")))
   (setq doc (vla-get-activedocument
      (vlax-get-acad-object)
      )
   )
   (setq ss (vla-get-activeselectionset doc))
   )
   (progn
   (vlax-for ent ss
(vla-getboundingbox ent 'll 'ur)
(setq ll    (vlax-safearray->list ll)
      ur    (vlax-safearray->list ur)
      midpt (mapcar '/
      (mapcar '+
       ll
       ur
      )
      '(2.0 2.0 2.0)
   )
)
(vlax-invoke ent 'rotate midpt pi)
   )
   )
)
(princ)
)

 
或者,您可以制作一个lisp,允许您插入一个块,然后使用宏告诉该块执行任务。

laison 发表于 2022-7-6 16:14:48

我有一个lisp,可以在二维和三维移动对象。我想添加到它或文件的另一个文件,它将移动和旋转单独同一轴。假设我有一个三通朝上的管子,我需要连接到它。这条线可以说是水平线。我添加的配件是未知距离和未知角度。我正在寻找一个lisp文件,该文件将移动和旋转弯头和T形三通,并通过选择需要连接的T形三通保持其内联。这必须是一个3D lisp。
 
这是我找到并想要修改的文件(如果可能):
强积金。lsp
页: [1]
查看完整版本: AUTOLISP插入块和rot