明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 644|回复: 4

[提问] 请问大佬附件这个怎么改

[复制链接]
发表于 2024-8-29 14:44:47 | 显示全部楼层 |阅读模式
[ 本帖最后由 惜惜2 于 2024-9-5 08:06 编辑 ]\n\n[ 本帖最后由 惜惜2 于 2024-8-30 21:50 编辑 ]\n\n目前的方式是需要先指定显示的层,再框选需要导出的文件。
希望公式里面默认0层然后直接导出,不用框选,不用选层这一步,感谢

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2024-8-30 09:05:12 | 显示全部楼层
惜惜2 发表于 2024-8-30 08:30
(DEFUN C:V2 (/ ES EN EL A getv getv2 getv3 str)
  ;(PRINC "请选择对象,未被选中的对象所在的层将 ...

摸索一下,有利于理解
 楼主| 发表于 2024-8-30 08:30:09 | 显示全部楼层
惜惜2 发表于 2024-8-29 15:47
自动存这一步能不能默认是0层呢  这个还是需要框选


(DEFUN C:V2 (/ ES EN EL A getv getv2 getv3 str)
  ;(PRINC "请选择对象,未被选中的对象所在的层将被关闭(显示指定层)")
  (setq ES (SSGET "x" '((8 . "0"))))
  (setq A 0)
  (setq EN "")
  (setq EL nil)
  (setq FL nil)
  (while (and (/= EN nil))
    (setq EN (SSNAME ES A))
    (setq EL (CONS EN EL))
    (setq A (1+ A))
  )
  (setq EL (CDR EL))
  (setq FL (CDR (ASSOC 8 (ENTGET (CAR EL)))))
  (setq EL (CDR EL))
  (REPEAT (- A 2)
    (setq EN (CDR (ASSOC 8 (ENTGET (CAR EL)))))
    (setq FL (STRCAT EN "," FL))
    (setq EL (CDR EL))
  )
  (command "LAYER")
  (command "off")
  (command "*")
  (command "y")
  (command "on")
  (command (EVAL FL))
  (command "")
  (setvar "cmdecho" 0)
  (princ "\n功能 [自动存DXF档]")
  (setq getv  (getvar "DWGPREFIX")
      getv2 (getvar "DWGNAME")
      getv3 (getvar "FILEDIA")
      )
  (setq str (strcat getv (vl-filename-base getv2) ".dxf"))
  (setvar "FILEDIA" 0)
  (vl-cmdf "_.dxfout" str "O" (ssget "x" '((8 . "0"))))
  (setvar "FILEDIA" getv3)
  (command "")
  (command "16")
(princ)
)     

用这个可以了
 楼主| 发表于 2024-8-29 15:47:30 | 显示全部楼层
咏郡 发表于 2024-8-29 15:41
(DEFUN C:V1 (/ ES EN EL A getv getv2 getv3 str)
  ;(PRINC "请选择对象,未被选中的对象所在的层将被关 ...

自动存这一步能不能默认是0层呢  这个还是需要框选
发表于 2024-8-29 15:41:39 | 显示全部楼层
(DEFUN C:V1 (/ ES EN EL A getv getv2 getv3 str)
  ;(PRINC "请选择对象,未被选中的对象所在的层将被关闭(显示指定层)")
  (setq ES (SSGET "x" '((8 . "0"))))
  (setq A 0)
  (setq EN "")
  (setq EL nil)
  (setq FL nil)
  (while (and (/= EN nil))
    (setq EN (SSNAME ES A))
    (setq EL (CONS EN EL))
    (setq A (1+ A))
  )
  (setq EL (CDR EL))
  (setq FL (CDR (ASSOC 8 (ENTGET (CAR EL)))))
  (setq EL (CDR EL))
  (REPEAT (- A 2)
    (setq EN (CDR (ASSOC 8 (ENTGET (CAR EL)))))
    (setq FL (STRCAT EN "," FL))
    (setq EL (CDR EL))
  )
  (command "LAYER")
  (command "off")
  (command "*")
  (command "y")
  (command "on")
  (command (EVAL FL))
  (command "")
  (setvar "cmdecho" 0)
  (princ "\n功能 [自动存DXF档]")
  (setq getv  (getvar "DWGPREFIX")
      getv2 (getvar "DWGNAME")
      getv3 (getvar "FILEDIA")
      )
  (setq str (strcat getv (vl-filename-base getv2) ".dxf"))
  (setvar "FILEDIA" 0)
  (vl-cmdf "_.dxfout" str "O" (ssget) "" "")
  (setvar "FILEDIA" getv3)
(princ)
)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2025-2-22 02:24 , Processed in 0.176874 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表