乐筑天下

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

[编程交流] 文件名、版本和日期

[复制链接]

33

主题

117

帖子

85

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
170
发表于 2022-7-5 23:37:14 | 显示全部楼层 |阅读模式
您好,如果一个新文件尚未保存,我需要一个lisp例程来执行以下操作。将其另存为[Filename-Rev 000-Date-Time],其中会提示用户输入文件名。然后在绘制完图纸后,将版次增加1,并添加新的日期和时间。时间应为“hh-mm”格式。
 
此外,保存图形时,应将其保存在两个位置,一个在替代文件夹中,另一个在当前文件夹中。
 
我已经设法使用vba创建了一个宏,它可以为excel电子表格创建宏,只是想知道是否可以在lisp中为AutoCAD图形创建类似的宏。
回复

使用道具 举报

35

主题

2471

帖子

2447

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2022-7-5 23:47:43 | 显示全部楼层
您可以重新定义SAVE命令以按这种方式操作。
回复

使用道具 举报

33

主题

117

帖子

85

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
170
发表于 2022-7-5 23:59:07 | 显示全部楼层
您好,米尔恰,任何关于如何做到这一点的建议将不胜感激。
回复

使用道具 举报

35

主题

2471

帖子

2447

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2022-7-6 00:05:02 | 显示全部楼层
启动器:
  1. (vl-load-com)
  2. (command "_UNDEFINE" "_QSAVE")
  3. (defun c:QSave( / stringDate fileName )
  4. (setq stringDate (rtos (getvar "CDATE") 2 6))
  5. (if (eq (getvar "DWGTITLED") 0)   ;test if drawing was saved
  6. (if (setq fileName (getfiled "Save drawing" (getvar "DWGPREFIX") "DWG" 1))
  7.   (command "_.SAVE" (strcat (vl-filename-directory fileName) "\"
  8.                             (vl-filename-base fileName)
  9.                             "-Rev000-"
  10.                             (substr stringDate 1  
  11.                             "-"
  12.                             (substr stringDate 10 4)
  13.                             (vl-filename-extension fileName)))
  14. )
  15. )
  16. (princ)
  17. )
  18. ;(command "_REDEFINE" "_QSAVE")   ;to get ride later of this change

 
上述功能定义应放置在自动加载器中,以便在所有图纸中可用。
回复

使用道具 举报

5

主题

1334

帖子

1410

银币

限制会员

铜币
-20
发表于 2022-7-6 00:14:46 | 显示全部楼层
VL-FILENAME-BASE
VL-FILENAME-DIRECTORY
VL-FILENAME-EXTENSION
VL-FILENAME-MKTEMP
 
是(VL-LOAD-COM)独立的函数,所以在代码开始时不需要(VL-LOAD-COM)行。。。
 
M、 R。
回复

使用道具 举报

33

主题

117

帖子

85

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
170
发表于 2022-7-6 00:15:33 | 显示全部楼层
嗨Mircea,
 
已将lisp例程添加到autocad2011doc。lsp文件,以便在AutoCAD打开时加载。当我键入qsave命令时,什么都没有发生?
回复

使用道具 举报

35

主题

2471

帖子

2447

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2022-7-6 00:24:39 | 显示全部楼层
请考虑使用acaddoc。lsp自动装载机;您使用的是为系统目的保留的,不建议用户编辑。
 
此外,不要错过,我的示例仅适用于新的(未保存的)图形,旨在作为您自己代码的启动程序。
回复

使用道具 举报

33

主题

117

帖子

85

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
170
发表于 2022-7-6 00:31:45 | 显示全部楼层
嗨Mircea。。。这就是问题所在,我没有lisp方面的经验,因此希望能得到一些额外的帮助。
回复

使用道具 举报

35

主题

2471

帖子

2447

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
174
发表于 2022-7-6 00:41:50 | 显示全部楼层
请你把备份文件夹的路径贴出来好吗?
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-11 00:34 , Processed in 0.638777 second(s), 70 queries .

© 2020-2025 乐筑天下

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