陨落 发表于 2022-4-14 23:03:33

Vlisp跨文档操作的方法

可笑鄙人学习vlisp这么久了,居然今天才知道lisp是可以随意跨文档操作的。。

高手轻喷,今天就把跨文档的代码分享出来,博君一笑。
(defun c:ttt();;;;;;该函数能成功实现多文档切换
(vl-load-com)
(setq acads (vlax-get-acad-object)
docs(vla-get-documents acads))
(setq nt (vlax-get docs 'count))
(setq i 0)
(repeat nt
    (setq doci(vla-item docs i))
    (vla-addline (vla-get-modelspace doci) (vlax-3d-point '(0 0)) (vlax-3d-point'(2000 2000)))
   
    (vlax-invoke (vla-item docs i) 'Activate)
    (vla-sendcommand doci "regen ")
    (princ i)
    (setq i (+ i 1))
    )
)

功能是在cad所有打开的文档中画一条线,并执行regen操作

taoyi0727 发表于 2022-4-14 23:48:08

vla-get-documents这个不就是文档的集合吗
没有搞明白这个函数的意义就不知道怎么多文档操作

陨落 发表于 2022-4-14 23:56:30

终于知道以前为何总是无法切换文档了。。。探索者环境下就不行,探索者把lisp文档切换能力禁用了。。

guosheyang 发表于 2022-4-15 09:08:19

感谢大佬共享资料!

cghdy 发表于 2022-4-15 13:36:21

陨落 发表于 2022-4-14 23:56
终于知道以前为何总是无法切换文档了。。。探索者环境下就不行,探索者把lisp文档切换能力禁用了。。

探索者干预CAD过多了。想制定行业标准,蛇吞象。

陨落 发表于 2022-4-15 18:49:20

cghdy 发表于 2022-4-15 13:36
探索者干预CAD过多了。想制定行业标准,蛇吞象。

是的,然而探索者的功能基本是以bug为主。。最近的校审还不错。以前的探索者,实用的功能极少

Bao_lai 发表于 2022-4-15 21:10:37

TSSD环境
命令: ttt
0AutoCAD: 文档切换已禁用
命令:

flowerson 发表于 2022-4-17 11:27:49

厉害,学习到了!

nijiea123 发表于 2022-4-18 11:11:52

你这个怕是要先把所有文档都打开吧

金鹅起飞 发表于 2023-9-20 15:14:40

楼主的源码厉害,谢谢分享。我没有明白:这个东东有什么实际的使用价值?请知道的大师指点一下
页: [1]
查看完整版本: Vlisp跨文档操作的方法