明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 618|回复: 4

[提问] fs100-10000这样的命令怎么用程序定义

[复制链接]
发表于 2020-2-23 09:54:22 | 显示全部楼层 |阅读模式
如题,我想定义比如  FS100-Fs10000这样的偏移命令,直接在命令行输入 FS100即为单向偏移100
在论坛里有如下代码,批量定义函数的,但是我总改不成功,根据这个我改为(READ (strcat "(defun c:Fs" (itoa i) "()(command  "OFFSET" i))"))
但是read总是报错!,是不是这里面不能有command???
(defun Test000PreSet (/ i lst)
  (setq        i   0
        lst "(Progn"
  )
  (while (< i 800)
    (setq i (1+ i))
    (if        (< i 10)
      (setq lst(strcat lst"(defun c:t00"(itoa i)"()(c:test00"(itoa i)"))"))
      (if (< i 100)
        (setq lst(strcat lst "(defun c:t0" (itoa i)"()(c:test0"(itoa i)"))"))
        (if (< i 800)
          (setq        lst(strcat lst "(defun c:t" (itoa i) "()(c:test" (itoa i) "))"))
        )
      )
    )
  )
  (setq lst (strcat lst ")"))
  (eval (read lst))
  (princ)
)
(Test000PreSet)

 楼主| 发表于 2020-2-23 19:38:33 | 显示全部楼层
(defun C:tt (/ i lst)
  (setvar "osmode" 0)
  (setvar "cmdecho" 0)
  (setq        i   0 )
  (while (< i 5000000)
    (setq i (1+ i))
   (eval (list 'defun (read (strcat "c:Fs" (itoa i))) nil (list 'command  "OFFSET" i)))
        )
)
感谢 济南-济南-结构-insipid的东西,但是这个能不能,用什么,就加载什么啊,如果,全部初始定义,程序加载 就在多了,

发表于 2020-2-23 21:55:19 | 显示全部楼层
加载之后就可以用FS100-Fs10000作为快捷命令
(defun pyml_pl (/ i)
        (setq i 0)
        (repeat 10000
                (setq i (1+ i))
                (eval
                        (read (strcat "(defun c:py" (itoa i) " () (command \"OFFSET\" " (itoa i) " (entsel) pause))"))
                )
        );repeat
        (princ)
)
(pyml_pl)
发表于 2020-2-24 17:19:40 | 显示全部楼层



用反应器可以“定义”无限多个命令,比如上例中的sc后面带任何一个实数均可缩放

本帖子中包含更多资源

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

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

本版积分规则

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

GMT+8, 2025-5-18 09:40 , Processed in 0.199550 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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