- 积分
- 23407
- 明经币
- 个
- 注册时间
- 2012-10-14
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
本帖最后由 wzg356 于 2023-11-29 11:27 编辑
这个是http://bbs.mjtd.com/thread-184666-1-1.html的一部分,剥离出来
固版也写有一个
图块打包生成插入图块的lsp程序--------可用于建立管理符号库/块
支持 '((0 . "*LINE,CIRCLE,ARC,ELLIPSE,3DFACE,*TEXT,DIMENSION,INSERT,ATTDEF,HATCH,LEADER,MULTILEADER"))
包含属性块,动态块不支持
复杂填充处理有点缺陷
尽量用常用的自定义线型、填充、字体等
样式bug已修符
DIMENSION对象群码表没有的箭头、尺寸线等属性全部随样式
命令ss2lsp
可以按下面写法改写是否还支持其他图元
下面是启动函数的写法(已在fas里面)
这里只打包一个选择集
生成的插入块程序在C盘根目录
生成的程序函数名按时间序列命名,避免重名
生成的插入图块程序xxx.lsp里面顶部有备注用法
(defun c:ss2lsp( / filters ss strs funstr)
(if (and(setq ss(ssget
'((0 . "*LINE,CIRCLE,ARC,ELLIPSE,3DFACE,*TEXT,DIMENSION,INSERT,ATTDEF,HATCH,LEADER,MULTILEADER"))
))
(setq funstr(strcat"X"(substr(rtos(* (getvar "cdate")1e4)2 0)5)))
(setq strs(sss2lsp(list ss) funstr))
)(progn
(setq funstr(strcat "c:\\"funstr".lsp"))
(setq f(open funstr "w"))
(foreach str strs(write-line str f))
(close f)
(alert(strcat"\n成功输出文件"funstr))
))
)
需要扩展使用的,(sss2lsp(list ss1 ss2 .....) "函数名");返回ss1 ss2的插入程序字符串
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?注册
x
|