明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 8200|回复: 32

[源码] 文件夹批量处理·pldir(测试版)

[复制链接]
发表于 2013-12-24 13:34 | 显示全部楼层 |阅读模式
本帖最后由 masterlong 于 2014-1-27 17:32 编辑

测试版
已完成了主要功能
其它功能慢慢添加
权当平安夜礼物

;0000000000000000000000000000000000000000000000000000000000000000000000000000
;;;    文件夹批量处理·pldir.lsp  V0.9  命令:pldir    by masterlong
;|
1.多选文件夹或dwg文件,形成批处理图纸集。图纸进行预核查,剔除了只读dwg和高版本dwg
2.顺序执行指定的批操作程序,支持lsp、fas、vlx
3.批操作程序要求加载既执行,且执行过程中无交互操作,同时不能自动关闭当前dwg,也不能打开其它dwg(这个没试验行不行,先写上)
4.本程序需要doslib函数库支持,请自行安装
5.本程序无需放置于CAD支持路径下,但不能改变相关的文件或文件夹名称
6.程序制作过程中,借鉴了langjs的《通用批量图纸处理.lsp》的部分思路,部分预定义操作lsp,直接修改自他的源程序

预定义的标准批操作lsp程序
1.缩放全图
2.清理图纸
3.批量输出wmf
3.所有图元归并至0层
4.图块随机改名
5.图块分解

准备增加的功能
1.支持自定义lisp代码
2.可添加自定义批操作程序(目前需要手动copy至【运行lisp】中)
3.对另添加的lsp批操作程序,可进行简单的代码分析,如存在违反以上第3条要求的,不予执行并给出错误报告
4.对另添加的批操作程序,增加测试功能(这个估计比较难实现啊)
5.界面中增加查看、修改、更新指定的lsp批操作程序
6.指定多个批操作程序时,可指定执行顺序
7.增加被剔除dwg列表供查看
8.文件夹增加全部删除按钮

本程序目前为测试版,发现BUG,请在明经论坛告诉我。同时邀请大家来添加批操作程序
http://bbs.mjtd.com/forum-3-1.html

本程序欢迎任意修改,什么都不作、直接修改作者名除外
|;



程序已做少量更新
附件中已包含了doslib函数库












本帖子中包含更多资源

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

x

评分

参与人数 1明经币 +1 收起 理由
spp_wall + 1 赞一个!

查看全部评分

"觉得好,就打赏"
还没有人打赏,支持一下

本帖被以下淘专辑推荐:

发表于 2023-9-24 19:44 来自手机 | 显示全部楼层
这个不错呀。试一试
 楼主| 发表于 2013-12-24 13:41 | 显示全部楼层
剔除高版本dwg这一块
我不是很确定一定有效
因为我只有CAD2004
没法测试

另外这一部分的代码
感觉思路不是很流畅
请高手指正
 楼主| 发表于 2013-12-24 13:50 | 显示全部楼层
预设的几个自动执行程序
有些做的不是很好
比如图层归并、分解、改名
不过关系不大
这些文件干嘛用的
大家都知道
有点瑕疵没啥大不了的
发表于 2013-12-24 16:00 | 显示全部楼层
点击“添加路径”怎么无反应啊
 楼主| 发表于 2013-12-24 16:11 | 显示全部楼层
装了doslib没
(addpath)除了doslib函数
没有其它自定义函数
发表于 2013-12-24 16:45 | 显示全部楼层
doslib函数库

是什么?

点评

不知道这个,对老用户来说貌似不应该啊。附件已更新,包含了doslib函数库  发表于 2014-1-27 17:33
发表于 2014-1-26 14:02 | 显示全部楼层
这个好啊,国外的叫multi-batch

楼主能不能参照它的思路搞一下,它还参持一个文件进行多项处理之类的!

有没有高手有空写个注册机什么的,大家也用下,关键是它也没在国内销售啊!

它的界面!


发表于 2014-1-26 14:30 | 显示全部楼层
我下载了晓东上的  doslib17.arx 然后加载了,然后再运行pldir,对话框出来了,然后选择添加文件,

跳出以下提示:
——————————————————————————————————————————
命令: pldir
文件夹批量处理·pldir.lsp   命令:pldir    by masterlong
启动对话框...; 错误: no function definition: GET_ID_IN_LIST
————————————————————————————————————————————
是我doslib的安装不对吗,不是用  “_appload” 直接加载doslib吗?
 楼主| 发表于 2014-1-27 15:24 | 显示全部楼层
panliang9 发表于 2014-1-26 14:30
我下载了晓东上的  doslib17.arx 然后加载了,然后再运行pldir,对话框出来了,然后选择添加文件,

跳出 ...

不是doslib加载的问题
是我上传的程序文件漏了一个函数

;;get_id_in_list
(defun get_id_in_list( item lists )
        (1- (length (member item (reverse lists))))
)

(princ)

把这个加到原来的lisp文件的最后
再运行看看

发程序就是这一点麻烦
很多自定义函数
已经被视做基本函数在使用
 楼主| 发表于 2014-1-27 16:16 | 显示全部楼层
panliang9 发表于 2014-1-26 14:02
这个好啊,国外的叫multi-batch

楼主能不能参照它的思路搞一下,它还参持一个文件进行多项处理之类的!
...

这种批处理程序
相当于一个壳
作用就是按顺序打开列表中的文件
然后执行无需人机互动的程序
所以做成我的程序这样
其实就差不多了

真正发挥作用的
主要还是“批操作lsp”里的程序
打印、层改名、文字和块替换、提取数据等等
都可以做到
但是需要自己来添加
因为每个人的需求不一样
没办法提供适合所有人需求的通用程序
所以它实际上是给有一定编程能力的人使用的
不过话说回来
懂编程的人又未必需要这样的“壳”程序
因为他们自己也能编出来

我编这个程序
最原始的需求就是在图纸发甲方以前
对图纸做一定的处理
块分解、合并图层等等
增加他们修改的难度
至于这些批处理程序本身是否很完美
其实还是次要的
因为批处理后的图纸自己是不用的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-1 00:30 , Processed in 0.311892 second(s), 36 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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