lisp动态拖动源码(师兄)
shixiong2
shixiong2 Lv.2
2007年04月04日 08:38:31
只看楼主

lisp中实现动态拖动的源码,有奖没有(princ "师兄 QQ 361865648 拖动程序Vlisp版,命令名: VSX")(vl-load-com)(defun gen(a)(princ "选择要拖动的对象. ")(setq ss(ssget))(if (not ss)(VL-EXIT-WITH-VALUE 0))(setq basp(getpoint "选择拖动基点:"))

lisp中实现动态拖动的源码,有奖没有

(princ "
师兄 QQ 361865648 拖动程序Vlisp版,命令名: VSX")
(vl-load-com)
(defun gen(a)
(princ "
选择要拖动的对象. ")
(setq ss(ssget))
(if (not ss)(VL-EXIT-WITH-VALUE 0))
(setq basp(getpoint "
选择拖动基点:"))
(if (not basp)(VL-EXIT-WITH-VALUE 0))
(setq i 0)
(princ "
指定目的点:")
(while(and (setq dpt(grread t 8 2))
(= (car dpt) 5))
(setq endp(cadr dpt))
(repeat (sslength ss)
(setq vn(vlax-ename->vla-object (ssname ss i)))
(vla-move vn (vlax-3d-point basp) (vlax-3d-point endp))
(setq i (+ 1 i))
)
(setq basp endp)
(setq i 0)
)
)
(defun c:vsx(/ errmsg)
(setq errmsg(vl-catch-all-apply ’gen (list 1)))
(princ)
)

1175647410139.gif

免费打赏
shixiong2
2007年04月04日 10:08:36
2楼
还有C#版,C++版的,不过感觉这儿搞C#和C++的人好象不多啊
回复
usestone
2007年04月06日 23:16:34
3楼
应该是不错的,
可是我加载后运行出现"vsx ; 错误: 函数错误: nil"错误!
请问gen(a)中a是什么参数?与(setq errmsg(vl-catch-all-apply ’gen (list 1))) 怎么对应?
谢谢!
回复
shixiong2
2007年04月07日 09:39:58
4楼
不知道你的cad是什么版本的

因为我要捕捉函数gen中的错误,而vl-catch-all-apply的第二个参数必须是一个表,所以我暂定了一个与程序无关的变量,用以构成vl-catch-all-apply所需的表
回复
npu349
2007年08月06日 21:46:04
5楼
不错的程序 请教一下 就是如果取消了改命令 能不能恢复到原来位置??
回复

相关推荐

APP内打开