kiloleo2 发表于 2023-7-2 14:57:38

LayoutsToDwgs.lsp 多布局转单DWG

本帖最后由 kiloleo2 于 2023-7-2 14:58 编辑

赚些明经币,源码网上别人分享的,具体作用是一个dwg文件如果有多个布局,可以自动转换成多个单布局dwg.有需要的人拿去.

尘缘一生 发表于 2023-7-5 16:54:34

e2002 发表于 2023-7-3 10:57
拿别人的源码收币?这不符合本站“潜规则”哈。希望你主动取消收币下载。

记得我在本版发过这个功能的源 ...
依赖DOISLIB 很不好,改写的

[*];;【BOBO】布局多选列表
[*](defun bt-mlistbox (/ lst dch des tmp rtn )
[*](setq tmp (vl-filename-mktemp nil nil ".dcl"))
[*](setq des (open tmp "W"))
[*](write-line
[*]    (strcat "listbox:dialog{label=\"【BOBO】布局多选列表>输出到模型空间\";spacer;:list_box{key=\"list\";multiple_select=true;width=50;height=15;}spacer;ok_cancel;}")
[*]    des
[*])
[*](not (close des))
[*](< 0 (setq dch (load_dialog tmp)))
[*](new_dialog "listbox" dch)
[*](start_list "list")
[*](foreach itm (setq lst (layoutlist)) (add_list itm))
[*](end_list)
[*](setq rtn (set_tile "list" "0"))
[*](action_tile "list" "(setq rtn $value)")
[*](setq rtn
[*]    (if (= 1 (start_dialog))
[*]      (mapcar '(lambda ( x ) (nth x lst)) (read (strcat "(" rtn ")")))
[*]    )
[*])
[*](if (< 0 dch)
[*]    (unload_dialog dch)
[*])
[*](if (and tmp (setq tmp (findfile tmp)))
[*]    (vl-file-delete tmp)
[*])
[*]rtn
[*])
[*];移除嵌套表中的所有nil元素----(一级)------
[*];;(remove-nil '("毛主席" (1 nil 2 nil 3) nil (nil nil (nil) )))
[*](defun remove-nil (lst)
[*](if (= (type lst) 'list)
[*]    (vl-remove nil (mapcar 'remove-nil (vl-remove nil lst)))
[*]    lst
[*])
[*])
[*];;存储系统变量-------(一级)--------------
[*];;lis系统变量表 '("osmode" "cmdecho" "ORTHOMODE")
[*](defun sysvar (lis / n)
[*](setq e_lst (remove-nil (mapcar (function (lambda (n) (if (getvar n) (list 'setvar n (getvar n))))) lis)))
[*]e_lst
[*])
[*];;批量输出Layouts到Model
[*](defun c:tt (/ e_lst ilen lslayouts sdwgname sdwgout sfolder sitem stab)
[*](setq e_lst (sysvar '("FILEDIA" "CMDECHO")))
[*](setq
[*]    sfolder (getvar "DWGPREFIX")
[*]    sdwgname (getvar "DWGNAME")
[*]    sdwgname (substr sdwgname 1 (- (strlen sdwgname) 4))
[*]    stab (getvar "CTAB")
[*])
[*](vl-arx-import 'layoutlist)
[*](if (setq lslayouts (bt-mlistbox))
[*]    (progn
[*]      (setvar "FILEDIA" 0)
[*]      (setvar "CMDECHO" 0)
[*]      (foreach sitem lsLayouts
[*]      (setvar "CTAB" sitem)
[*]      (setq sdwgout (strcat sfolder sdwgname "_" sitem))
[*]      (vl-cmdf "_.exportlayout" sdwgout)
[*]      )
[*]      (setvar "CTAB" stab)
[*]    )
[*])
[*](mapcar 'eval e_lst)
[*](princ)
[*])

e2002 发表于 2023-7-3 10:57:19

拿别人的源码收币?这不符合本站“潜规则”哈。希望你主动取消收币下载。

记得我在本版发过这个功能的源码,上次在zhihu也贴出了:
https://zhuanlan.zhihu.com/p/584554050

keita027 发表于 2023-7-3 16:00:20

看看是什么好东西

月下闲人 发表于 2023-7-3 17:02:59

e2002 发表于 2023-7-3 10:57
拿别人的源码收币?这不符合本站“潜规则”哈。希望你主动取消收币下载。

记得我在本版发过这个功能的源 ...



是这个吗?

lxl217114 发表于 2023-7-3 17:17:18

把原作者吸引过来了么?

kiloleo2 发表于 2023-7-3 19:13:02

e2002 发表于 2023-7-3 10:57
拿别人的源码收币?这不符合本站“潜规则”哈。希望你主动取消收币下载。

记得我在本版发过这个功能的源 ...

OK.大神你的东西当然你说了算

李钊伟2012 发表于 2023-7-4 17:00:35

哈哈哈 别吓跑妹子

bing00 发表于 2023-8-16 18:09:21

没什么变化,用处不大

00放飞梦想00 发表于 2023-11-27 21:43:02

月下闲人 发表于 2023-7-3 17:02
是这个吗?

大神加载后出现错误
页: [1] 2
查看完整版本: LayoutsToDwgs.lsp 多布局转单DWG