飞雪神光
发表于 2024-1-26 16:22:36
277283904 发表于 2024-1-26 15:03
不知道为什么,上次测试过是可行的,但不知道为什么这次测试又不行呢?
代码是这个:
(defun c:tt( ...
cal需要加载你先单独运行 cal这个命令 让CAD自动加载 就可以了
277283904
发表于 2024-1-26 16:41:40
飞雪神光 发表于 2024-1-26 16:22
cal需要加载你先单独运行 cal这个命令 让CAD自动加载 就可以了
谢谢!,原来这样,是可以了。
能不能在这段代码的基础上加一段代码输入这个命令直接加载呢;P
飞雪神光
发表于 2024-1-26 17:08:52
277283904 发表于 2024-1-26 16:41
谢谢!,原来这样,是可以了。
能不能在这段代码的基础上加一段代码输入这个命令直接加载呢
(if (null (type c:cal))
(cond
((findfile "GEOMCAL.CRX") (ARXLOAD "GEOMCAL.CRX"))
((findfile "GEOMCAL.ARX") (ARXLOAD "GEOMCAL.ARX"))
)
)
277283904
发表于 2024-1-26 17:15:49
飞雪神光 发表于 2024-1-26 17:08
这是加载CAL的吧,怎么和下面这段代码连起来做成一个命令呢;P
(defun c:tt()
(command ".STRETCH" (ssget) "" pause (cal (getstring "\n输入:")))
(princ)
)
飞雪神光
发表于 2024-1-26 17:22:26
277283904 发表于 2024-1-26 17:15
这是加载CAL的吧,怎么和下面这段代码连起来做成一个命令呢
(defun c:tt()
(command ". ...
就这样一拼就行了
(defun c:tt ()
(if (null (type c:cal))
(cond
((findfile "GEOMCAL.CRX") (ARXLOAD "GEOMCAL.CRX"))
((findfile "GEOMCAL.ARX") (ARXLOAD "GEOMCAL.ARX"))
)
)
(command ".STRETCH" (ssget) "" pause (cal (getstring "\n输入:")))
(princ)
)
277283904
发表于 2024-1-26 19:28:24
飞雪神光 发表于 2024-1-26 17:22
就这样一拼就行了
麻烦了,谢谢!
zhufeng1004
发表于 2024-1-26 23:06:12
飞雪神光 发表于 2024-1-26 17:08
加上记忆功能记住上次拉伸距离就完美了
277283904
发表于 2024-1-27 14:29:17
本帖最后由 277283904 于 2024-1-27 14:46 编辑
飞雪神光 发表于 2024-1-26 17:22
就这样一拼就行了
发觉160-80用这段代码就可以,40-34用这段代码是没反应的哦,80-77也是没反应,但是手动输入'cal就可以,这是为什么?{:1_1:}
飞雪神光
发表于 2024-1-27 17:59:43
277283904 发表于 2024-1-27 14:29
发觉160-80用这段代码就可以,40-34用这段代码是没反应的哦,80-77也是没反应,但是手动输入'cal就可以, ...
(command ".STRETCH" (ssget) "" pause "non"(cal (getstring "\n输入:")))
277283904
发表于 2024-1-27 18:09:17
飞雪神光 发表于 2024-1-27 17:59
可以了,再次感谢谢!