分图
本帖最后由 自贡黄明儒 于 2014-1-13 12:14 编辑;;假如一个文件内画许多图,用电脑的搜索功能可能找不到,需拆分,以文件名保存,但于后来找查
;;分图
;;假如一个文件内画许多图,用电脑的搜索功能可能找不到,需拆分,以文件名保存,但于后来找查
(defun C:ft (/ ANSWER EN FLAG FLAG1 INITDIR NEWDNAME SS)
(if (setq Initdir (getvar "dwgprefix"))
nil
(progn (princ "\n 文件未保存,不能分图") (exit))
)
(setq flag1 T)
(while (and flag1
(setq en (entsel "\n >拾取文件名 "))
(setq en (nentselp (cadr en)))
(setq NewDName (cdr (assoc 1 (entget (car en)))))
(equal (type NewDName) 'STR)
)
(if(findfile (strcat Initdir NewDName ".DWG"))
(setq flag T)
)
(while flag
(princ
(strcat "\n 文件名" NewDName "已经存在,请重输入文件名")
)
(setq NewDName (getstring "\n???输入文件名: "))
(if (findfile (strcat Initdir NewDName ".DWG"))
nil
(setq flag nil)
)
)
(princ "\n >>此图范围")
(setvar "NOMUTT" 1)
(setq ss (ssget))
(setvar "NOMUTT" 0)
(command "_.WBLOCK"
(strcat Initdir NewDName)
""
"0,0"
ss
""
)
(princ (strcat "\n >>>文件" NewDName "成功保存!!!\n"))
(if(ssget "X")
(progn
(initget "Yes No")
(setq answer (GETKWORD "[停止(N)/断续(Y)]<断续Y>"))
(if (equal answer "No")
(setq flag1 nil)
)
)
(setq flag1 nil)
)
)
(princ)
)
**** Hidden Message *****
自贡黄明儒 发表于 2013-10-29 14:57
图框上应该有文件名吧?拾取应该更合理些,我认为
老大,这个如何能设置保存路径呀 文件名也能直接输入更好些吧 kwok 发表于 2013-10-29 14:53 static/image/common/back.gif
文件名也能直接输入更好些吧
图框上应该有文件名吧?拾取应该更合理些,我认为 可以综合起来考虑,不想拾取的可以自己给它取个名字 应该加个自己设定保存位置 llsheng_73 发表于 2013-10-29 15:55 static/image/common/back.gif
可以综合起来考虑,不想拾取的可以自己给它取个名字
自己给它取名字,岂不是很麻烦? 自贡黄明儒 发表于 2013-11-11 14:32 static/image/common/back.gif
自己给它取名字,岂不是很麻烦?
也不会麻烦啊,可能你对地形图涉及得少一些,地形图分幅一般按西南角坐标来命名的,所以取名就有了命名规则,所以它很简单
黄老你所谓的麻烦不过是没找到合适的命名规则吧? 本帖最后由 llsheng_73 于 2013-11-11 14:49 编辑
其实是要输入图名还是点取文字或者自动命名或者保存位置都是小问题,老黄这东东它能分幅才是最关键的核心。
其它所有问题都可以根据自己需要或者喜好略加修改就成了,再次感谢老黄的奉献,虽然我没有下载它 太强大了!