找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 704|回复: 2

[LISP程序]:请问版主

[复制链接]
发表于 2003-5-31 01:49:01 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

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

×
大批量制作幻灯片中的bmslide.lsp运行后为何生成如下:
正在处理 等一下...error: null function
(VL-DIRECTORY-FILES PATH nil 1)
(FOREACH NAME (VL-DIRECTORY-FILES PATH nil 1) (IF (= (STRCASE
(VL-FILENAME-EXTENSION NAME) T) ".dwg") (PROGN (VL-CMDF "-insert" (STRCAT PATH
"\\" NAME) (QUOTE (0 0 0)) "" "" "") (VL-CMDF "zoom" "e" "zoom" "0.95x")
(VL-CMDF "mslide" (STRCAT PATH "\\" (VL-FILENAME-BASE NAME))) (VL-CMDF "erase"
"all" "") (WRITE-LINE (VL-FILENAME-BASE NAME) FN) (SETQ N (1+ N))) nil))
(C:BMSLIDE)
*Cancel*


为何不能用?他的原程序为:


  1. ;;;  将指定目录中的DWG文件全部做成SLD文件,保存在相同目录中,并生成SLD文件
  2. ;;;  名列表文件: Bmslide.
  3. (defun c:bmslide (/ path #time time-1 fn n name time-2 time-last)
  4.   (setq path (getstring "\n请指定 DWG 文件目录:"))
  5.   (princ "\n   正在处理,等一下...")
  6.   (princ)  
  7.   (setq cmdecho-save (getvar "CMDECHO"))
  8.   (setvar "CMDECHO" 0)
  9.   (setq #time (getvar "DATE"))                    ;Time1
  10.   (setq time1 (* 86400.0 (- #time (fix #time))))  ;Time1
  11.   (setq fn (open (strcat path "\" "namelist.txt") "a"))
  12.   (setq n 0)
  13.   (foreach name (vl-directory-files path nil 1)
  14.     (if (= (strcase (vl-filename-extension name) t) ".dwg")
  15.       (progn
  16.         (vl-cmdf "-insert" (strcat path "\" name) '(0 0 0)"""""")
  17.         (vl-cmdf "zoom" "e" "zoom" "0.95x")
  18.         (vl-cmdf "mslide" (strcat path "\" (vl-filename-base name)))
  19.         (vl-cmdf "erase" "all" "")
  20.         (write-line (vl-filename-base name) fn)
  21.         (setq n (1+ n))
  22.       );end progn
  23.       nil
  24.     );endf if
  25.   );end foreach
  26.   (close fn)
  27.   (princ)
  28.   (princ "\n   完成了!")(princ)
  29.   (setvar "CMDECHO" cmdecho-save)
  30.   (setq #time (getvar "DATE"))                    ;Time2
  31.   (setq time2 (* 86400.0 (- #time (fix #time))))  ;Time2
  32.   (setq time-last (- time2 time1))              ;time-last
  33.   (alert (strcat "                搞定啦! 搞定啦!\n\n"
  34.           "有 " (rtos n) "  个 SLD 文件s生成,存放在目录\n\n"
  35.           "  " path "  里."
  36.           "\n\n共耗时  " (rtos time-last) "  秒s.")
  37.   )
  38. )
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2003-5-31 05:59:25 | 显示全部楼层
这是因为你在R14下使用的缘故,这个程序只能在R2000以上使用。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 593个

财富等级: 财运亨通

发表于 2003-5-31 06:12:49 | 显示全部楼层
最初由 dwgplt 发布
[B]这是因为你在R14下使用的缘故,这个程序只能在R2000以上使用。 [/B]

把下面的文件解压到Support目录,然后添加到 Acad.rx ,再在acadr14.lsp 中加入初始化面临 (vlarts-init) (vlrts-init) 以后14下也就可以用论坛上大部分的使用 ActiveX 的程序了。
http://www.xdcad.net/modrator/fi ... 60924_vlisp_r14.rar
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2025-9-26 09:52 , Processed in 0.178169 second(s), 34 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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