samifox 发表于 2022-7-5 23:47:42

移动对象

你好
 
作为lisp的一部分,我需要将最后绘制的对象移动25个单位,我使用
 

(command "move" "" "L" "" "" 25)

 
它不起作用,我想知道为什么
 
无论如何,我不喜欢在lisp中使用命令,我怎么能用另一种方式呢?

ymg3 发表于 2022-7-5 23:52:19

(command "move" "L" "" "" 25)
 
或者你可以使用entmod。但在这种情况下使用“命令”并没有错。

Tharwat 发表于 2022-7-5 23:57:11

最后一个实体是什么?您是如何创建的?

samifox 发表于 2022-7-6 00:00:23

是entmakex
 
有什么方法可以移动而不是使用命令条目吗?

samifox 发表于 2022-7-6 00:00:51

 
指挥方式慢得多

Tharwat 发表于 2022-7-6 00:03:58

 
当然,那个对象的实体名是什么?

Tharwat 发表于 2022-7-6 00:07:51

下面有四种方法演示如何在X网格上移动圆形对象25个单位。
 

(setq e (entmakex (list '(0 . "CIRCLE") '(10 0. 0. 0.) '(40 . 1.0))))

; First
(entmod (append (entget e) '((10 25. 0. 0.))))
; Second
(entmod
(subst '(10 25. 0. 0.) (assoc 10 (entget e)) (entget e))
)
; Third
(vlax-invoke
(vlax-ename->vla-object e)
'move
'(0. 0. 0.)
'(25. 0. 0.)
)
; Forth
(vla-move (vlax-ename->vla-object e)
         (vlax-3d-point '(0. 0. 0.))
         (vlax-3d-point '(25. 0. 0.))
)

samifox 发表于 2022-7-6 00:10:24

 
你很强壮!
谢谢:)

Tharwat 发表于 2022-7-6 00:15:50

哈哈。。。不客气。

Snownut 发表于 2022-7-6 00:18:15

塔尔瓦,像公牛一样强壮。。。。。?
页: [1] 2
查看完整版本: 移动对象