批量合并图
把多个图批量合并到一个DWG里,求开发,付费。364836483qq试试这个,发扬乐筑天下精神
来自网络,不知道哪位大神的,在此谢过
合并图纸(左对齐或上对齐)
;;批量目录图纸插入-----------【开始】---------
(defun plins-dwg (/ e_lst ent fn files flis pt pt0 box d h h0 k0 i n str)
(_undo1)
(setq e_lst (sysvar '("osmode" "cmdecho" "filedia")))
(setvar "filedia" 0)
(setvar "cmdecho" 0)
(setvar "OSMODE" 0)
(vla-put-WindowState *ACAD* 2);;CAD窗口最小化
(setq files (xl-div (sl-choose-files "" "dxf;*.dwg" (getvar "DWGPREFIX")) 10))
(vla-put-WindowState *ACAD* 1);;CAD窗口最大化
(setq pt (getpoint "\n 请给出排图基点(左下角)?") k0 0.0)
(setq str (sl:do1ordo2 "插入形式为" "参照" "图块"))
(repeat (setq n (length files))
(setq pt0 (polar pt pi2 k0))
(setq flis (nth (setq n (1- n)) files) h0 0.0)
(repeat (setq i (length flis))
(setq fn (nth (setq i (1- i)) flis))
(if (= str "参照")
(command "-XREF" "A" fn pt0 1 1 0)
(vla-ins-b fn pt0 1 1 1 0)
)
(setq ent (entlast) box (ebox4 ent) d (- (car (caddr box)) (car (car box))) h (- (cadr (cadddr box)) (cadr (car box))))
(if (>= h h0) (setq h0 h))
(sl_subupd ent 10 pt0)
(setq pt0 (polar pt0 0 (* d 1.05)))
(if (= str "图块") (slexplode (entlast)))
)
(setq k0 (+ k0 (* h0 1.05)))
)
(command "zoom" "e")
(mapcar 'eval e_lst)
(_undo2)
(princ)
)
链接:https://pan.baidu.com/s/1uNCjpZ6Jb_npa-JTFeS-AA 提取码:50sz 自己用的特简单
可选文件夹,块被分解,不想分解就把“*”去掉,粘贴到原坐标,原坐标重叠的话把插入点改改也行。
我也是抄抄改改大佬的函数和代码
分享是个良性循环
(defun C:xwj ()
(vl-load-com)
(setq path (GXL-FILE-GETFOLDER))
(setq file (VL-DIRECTORY-FILES path "*.dwg" 1))
(foreach dwg file
(command "insert" (strcat "*" path "\" dwg) '(0 0 0) 1 0)
)
)
;; (gxl-file-GetFolder "选择文件夹:") 返回值:字符串,文件夹路径,如果点了cancel, 返回nil
(defun gxl-file-GetFolder (/ WinShell shFolder path catchit)
(setq winshell (vlax-create-object "Shell.Application"))
(setq shFolder (vlax-invoke-method
WinShell 'BrowseForFolder 0 "选取文件夹" 1)
)
(setq
catchit (vl-catch-all-apply
'(lambda ()
(setq shFolder (vlax-get-property shFolder 'self))
(setq path (vlax-get-property shFolder 'path))
)
)
)
(if (vl-catch-all-error-p catchit)
nil
path
)
) 一般主张一张图一个文件。多个文件合并到一张图时,如果块名相同,就会被第一张图的块取代。 单个文件有命名规则的。客户需求,需要将一个工程的图合并到一个DWG文件中。 https://www.tsz.com.cn/downprod/detail.action?id=C190000000000872
探索者软件DWG合并助手,可以申请试用,经常搞活动促销,商业软件成熟
是不是需要这个功能? 就是需要这样的工具,多谢大家,我先测试。364836483QQ,如果能用,我付费用。
有没有能选择文件的版本?
页:
[1]
2