kkleinchester 发表于 2022-7-6 12:04:27

Lisp';s不在201工作

任何帮助都将不胜感激。我有一些自定义的lisp例程,在以前的版本中工作得很好,但我们最终将全部时间切换到2010年,这些命令不再工作。我以前的一些标准Lisp程序仍然有效,所以我很困惑:哭:。

alanjt 发表于 2022-7-6 12:09:55

 
你能举个例子吗?

Lee Mac 发表于 2022-7-6 12:12:11

可能有很多种情况,你能举一个LISP不起作用的例子吗,我们可以看看哪里出了问题(如果有的话)。
 

 
编辑:AJ打败了我

kkleinchester 发表于 2022-7-6 12:17:15

;; **********************移动命令***************************
;; *************意图良好的命令********
;; *************绝对没有担保********************
;; ********说真的,这很简单*********
;; ********克雷格·科伦布版权所有2005cc@craigcad.us*************
 
(定义c:mx(/ss ptso ptd ptre xDist);仅沿X轴移动
(setvar“cmdecho”0)
(setq ss(ssget))
(setq ptso
(获取点
“\n选择源点或输入沿X轴的距离”
)
)
(如果(空ptso)
(程序
(setq xDist(getdist“\n键入或拾取距离点”)
ptso(列表0.0.0.0)
ptd(列表xDist 0.0 0.0)
)
(命令).move“ss”“”\u non“ptso”\u non“ptd)
(普林斯)
)
(程序
(setq ptre(getpoint“\n Select destination reference”))
(setq ptd(列表(car ptre)(cadr ptso)(caddr ptso)))
(命令).move“ss”“”\u non“ptso”\u non“ptd)
(setvar“cmdecho”1)
(普林斯)
)
)
)
 
 
 
 
(定义c:mz(/ss ptso ptd ptre);沿Z方向移动
(setvar“cmdecho”0)
(setq ss(ssget))
(setq ptso(getpoint“\n选择源点或输入以键入沿Z轴的距离”))
(如果(空ptso)
(程序
(setq xDist(getdist“\n键入或拾取距离点”)
ptso(列表0.0.0.0)
ptd(列表0.0 0.0 xDist)
)
(命令).move“ss”“”\u non“ptso”\u non“ptd)
(普林斯)
)
(程序
(setq ptre(getpoint“\n Select destination reference”))
(setq ptd(列表(汽车ptso)(cadr ptso)(caddr ptre)))
(命令).move“ss”“”\u non“ptso”\u non“ptd)
(setvar“cmdecho”1)
(普林斯)
)
)
)
 
(defun c:my(/ss ptso ptre ptd);仅在Y方向移动
(setvar“cmdecho”0)
(setq ss(ssget))
(setq ptso
(获取点
“\n选择源点或输入沿Y轴的距离”
)
)
(如果(空ptso)
(程序
(setq xDist(getdist“\n键入或拾取距离点”)
ptso(列表0.0.0.0)
ptd(列表0.0 xDist 0.0)
)
(命令).move“ss”“”\u non“ptso”\u non“ptd)
(普林斯)
)
(程序
(setq ptre(getpoint“\n Select destination reference”))
(setq ptd(列表(car ptso)(cadr ptre)(caddr ptso)))
(命令).move“ss”“”\u non“ptso”\u non“ptd)
(setvar“cmdecho”1)
(普林斯)
)
)
)
 
 
(定义c:mxy(/ss ptso ptre ptd);仅在X、Y方向移动
(setvar“cmdecho”0)
(setq ss(ssget))
(setq ptso(getpoint“\n Select source point”))
(setq ptre(getpoint“\n Select destination reference”))
(setq ptd(列表(car ptre)(cadr ptre)(caddr ptso)))
(命令).move“ss”“”\u non“ptso”\u non“ptd)
(setvar“cmdecho”1)
(普林斯)
)
 
;; ******************复制命令******************************************
 
(定义c:cx(/ss ptso ptd ptre);。仅沿X轴复制
(setvar“cmdecho”0)
(setq ss(ssget))
(setq ptso(getpoint“\n Select source point”))
(setq ptre’(1 1));给ptre一个值以在循环时输入
(while(/=nil ptre);重复此操作,直到用户取消
(setq ptre(getpoint“\n Select destination reference”))
(setq ptd(列表(car ptre)(cadr ptso)(caddr ptso)))
(命令).copy“ss”“”\u non“ptso”\u non“ptd)
)
(setvar“cmdecho”1)
(普林斯)
)
(定义c:cz(/ss ptso ptd ptre);。沿Z方向复制
(setvar“cmdecho”0)
(setq ss(ssget))
(setq ptso(getpoint“\n Select source point”))
(setq ptre’(1 1))
(while(/=nil ptre)
(setq ptre(getpoint“\n Select destination reference”))
(setq ptd(列表(car ptso)(cadr ptso)(caddr ptre)))
(命令).copy“ss”“”\u non“ptso”\u non“ptd)
)
(setvar“cmdecho”1)
(普林斯)
)
 
(定义c:cy(/ss ptso ptre ptd);。仅在Y中复制
(setvar“cmdecho”0)
(setq ss(ssget))
(setq ptso(getpoint“\n Select source point”))
(setq ptre’(1 1))
(while(/=nil ptre)
(setq ptre(getpoint“\n Select destination reference”))
(setq ptd(列表(car ptso)(cadr ptre)(caddr ptso)))
(命令).copy“ss”“”\u non“ptso”\u non“ptd)
)
(setvar“cmdecho”1)
(普林斯)
)
(定义c:cxy(/ss ptso ptre ptd);。仅在X、Y方向复制
(setvar“cmdecho”0)
(setq ss(ssget))
(setq ptso(getpoint“\n Select source point”))
(setq ptre’(1 1))
(while(/=nil ptre)
(setq ptre(getpoint“\n Select destination reference”))
(setq ptd(列表(car ptre)(cadr ptre)(caddr ptso)))
(命令).copy“ss”“”\u non“ptso”\u non“ptd)
)
(setvar“cmdecho”1)
(普林斯)
)

alanjt 发表于 2022-7-6 12:19:01

真的很快,这样行吗?
(defun c:mxy (/ ss ptso ptre ptd) ;Move in X,Y only
(setvar "cmdecho" 0)
(setq ss (ssget))
(setq ptso (getpoint "\n Select source point"))
(setq ptre (getpoint "\n Select destination reference"))
(setq ptd (list (car ptre) (cadr ptre) (caddr ptso)))
(command "_.move" ss "" "_non" ptso "_non" ptd)
(setvar "cmdecho" 1)
(princ)
)

kkleinchester 发表于 2022-7-6 12:22:56

不,它没有!谢谢你的帮助

alanjt 发表于 2022-7-6 12:26:39

 
只是想排除简单的事情。
 
它会给你带来什么样的错误?从命令行复制它。

kkleinchester 发表于 2022-7-6 12:27:36

未知命令

Lee Mac 发表于 2022-7-6 12:30:48

您是否正确加载了代码?

alanjt 发表于 2022-7-6 12:35:04

如果将其粘贴到命令行,会发生什么?
 
(command "_.move")
页: [1] 2
查看完整版本: Lisp';s不在201工作