乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 44|回复: 2

[编程交流] 批量Tiff转换器Lisp

[复制链接]

2

主题

3

帖子

1

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 10:46:51 | 显示全部楼层 |阅读模式
我目前有一个lisp例程,它将图形的活动布局选项卡转换为Tiff文件,并根据DWG的文件名将其存储在我们系统中的一个非常特定的位置。通过查看代码,有谁能建议一种简单的方法来更改它,使其转换整个图形列表,而不是当前打开的图形?
 
;-------------------------------------------------------------------------------
;
; tif连接
;
; 使用图形完整路径名打印和保存tif文件的autocad命令
; 字符串“map\u published”替换为字符串“tif\u data”
;
; 20070319.LR初始创建
; 20070323.LR添加了更多页面设置和绘图仪配置
; 20100713.LR为板材方向编辑
;
;-------------------------------------------------------------------------------
;
(定义C:TIF-CON(/vbp vfd vfp vpq dp dn pn ct ll pp)
; 保存系统变量
(setq vbp(getvar“backgroundplot”))
(setq vfd(getvar“filedia”))
(setq vfp(getvar“fullplotpath”))
(setq vpq(getvar“plquiet”))
 
; 设置为无对话框打印
; 对于前景打印,backgoundplot必须为0或2
(setvar“backgroundplot”2)
(setvar“filedia”0)
(setvar“fullplotpath”0)
(setvar“plquiet”1)
; 基于图形完整路径名创建tif文件的完整路径名
(setq dp
(vl string subst“tif\U数据”
“map_已发布”
(strcase(getvar“dwgprefix”)T)
)
)
(setq dn
(strcase(vl filename base(getvar“dwgname”))T)
)
(setq pn(strcat dp dn“.tif”))
(setq ct(strcase(getvar“ctab”)T))
(while(vl string search”“ct)
(setq ct(vl string subst”“”“ct));|删除空格|;
)
; 使用布局特定的页面设置和绘图仪配置
(setq ll)
“((“默认”“TC-17x22”“tiffconverter-17x22.pc3”)
(“A-17X22”“TC-17X22”“TIFF转换器-17X22.pc3”)
(“A-17X22L”“TC-17X22L”“TIFF转换器-17X22L.pc3”)
(“B-17x22”“TC-17x22”“TIFF转换器-17x22.pc3”)
(“B-18X24”“TC-18X24”“TIFF转换器-18X24.pc3”)
(“B-18X24L”“TC-18X24L”“TIFF转换器-18X24L.pc3”)
(“detaildwg”“tif converter”“TIFF converter.pc3”)
(“gmapdwg”“tif-converter2”“TIFF converter2.pc3”)
(“C-22X34”“TC-22X34”“TIFF转换器-22X34.pc3”)
(“C-22X34P”“TC-22X34P”“TIFF转换器-22X34P.pc3”)
(“D-36X44”“TC 36X44”“TIFF转换器-36X44.pc3”)
(“D-36X44P”“TC-36X44P”“TIFF转换器-36X44P.pc3”)
)
)
(if(setq pp(assoc ct ll))nil(setq pp(car ll)))
(命令“-psetupin”
“\\\\nas-cp1b\\data\\mir\\GTS Miramar\\Gas Mapping\\Mappers\\JBliss\\tifcon\\tif convert.dwg”
(cadr pp)
""
)
 
(命令“-绘图”
“n”
(getvar“ctab”)
(cadr pp)
(caddr pp)
“y”
(strcat pn“.plt”)
“n”
“y”
)
; 以下语句(命令“-plot”…)将在之前执行
; 如果在前景中未进行打印,则打印完成
; (背景图为0或2)
(if(findfile(strcat pn“.plt”))
(程序
; 删除现有tif文件,vl文件重命名不会覆盖
(vl文件删除pn)
(vl文件重命名(strcat pn“.plt”)pn)
))
; 还原系统变量
(setvar“backgroundplot”vbp)
(setvar“filedia”vfd)
(setvar“fullplotpath”vfp)
(setvar“plquiet”vpq)
)
;
 
 
提前感谢您的帮助
回复

使用道具 举报

32

主题

1166

帖子

1146

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
159
发表于 2022-7-6 11:40:23 | 显示全部楼层
欢迎来到论坛,
 
请使用代码标签。请参见此处:http://www.cadtutor.net/forum/showthread.php?t=9184
回复

使用道具 举报

2

主题

3

帖子

1

银币

初来乍到

Rank: 1

铜币
10
发表于 2022-7-6 12:09:56 | 显示全部楼层
很抱歉。。。首次发布到此论坛
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-6 17:13 , Processed in 0.501413 second(s), 58 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表