另存为选定对象 dwg 格式

Save as selected objects dwg format

我尝试保存 dwg 文档,但仅限于选定的对象,我知道我可以使用 wblock 命令,但我只需要使用 ssget 和 saveas 命令。

(setq 选择 (ssget))

有知道的选项吗?

如果要使用 SAVEAS 命令,必须在调用 SAVEAS 之前从绘图中删除所有 non-selected 对象。 您必须牢记 AutoLISP 在文档上下文中运行,因此 LISP 例程将在 SAVEAS 命令销毁当前文档后立即完成。

(defun c:foo (/ s1 s2 i)
  (if (setq s1 (ssget))
    (progn
      (setq s2 (ssget "_X"))
      (repeat (setq i (sslength s1))
        (ssdel (ssname s1 (setq i (1- i))) s2)
      )
      (repeat (setq i (sslength s2))
        (entdel (ssname s2 (setq i (1- i))))
      )
      (command "_.saveas"
               ""
               (strcat
                 "C:\Temp\DrawingFromSelection_"
                 (menucmd "M=$(edtime,$(getvar,date),YYYYMMDD-HHMMSS)")
               )
      )
    )
  )
  (princ)
)