ynhh 发表于 2015-6-17 11:05:52

老黄专研精神可嘉

edata 发表于 2015-6-17 13:53:02

自贡黄明儒 发表于 2015-6-16 22:50 static/image/common/back.gif
entmake???不会吧?

因为时间关系,就用圆来做演示,纯lisp,其他类似,方法不局限这一种,可以考虑混合command移动和分解命令。





e2002 发表于 2015-6-17 14:42:02

看看有什么用处

qyming 发表于 2015-6-17 15:37:52

回复,看帖!

q3_2006 发表于 2015-6-17 18:47:36

本帖最后由 q3_2006 于 2015-6-17 18:52 编辑

改了下G版的代码...也以加圆为例哈...因为代码量稍微少点...
(defun c:tt ( / a bk blkdef doc e el i name Newobjs obj objs p1 p2 sn v)
(while
    (and (setq bk (car (entsel "\n点取图块:")))
    (princ "\n选择要增加块内图元:")
    (setq sn (ssget))
    (= "INSERT" (cdr (assoc 0 (setq el (entget bk)))))
    )
   (setq name (cdr (assoc 2 el))
             p1 (cdr (assoc 10 el))
   )
   (setq blkdef (vla-item
                  (vla-get-blocks
                      (setq
                        doc (vla-get-ActiveDocument (vlax-get-acad-object))
                      )
                  )
                  name
                  )
   )
   (vlax-for obj blkdef
       (setq objs (cons obj objs))
   )
   (setq Newobjs (vlax-invoke
                     doc
                     'CopyObjects
                     objs
                     (vla-get-ModelSpace doc)
                   )
   )
   (foreach a objs (vla-delete a))
   (repeat (setq i (sslength sn))
             (setq e (ssname sn (setq i (1- i)))
                     e (vlax-ename->vla-object e)
                     p2 (Vlax-Get e 'Center )
                     v (mapcar '- p2 p1)
                     )
             (Vlax-Put-Property e 'Center (Vlax-3d-Point v) )
             (setq Newobjs (cons e Newobjs))
   )
   (vlax-invoke doc 'CopyObjects Newobjs blkdef)
   (foreach a Newobjs (vla-delete a))
   (vla-regen doc :vlax-true)
)
(princ)
)

lucas_3333 发表于 2015-6-17 19:01:49

本帖最后由 lucas_3333 于 2015-6-17 19:10 编辑

q3_2006 发表于 2015-6-17 18:47 static/image/common/back.gif
改了下G版的代码...也以加圆为例哈...因为代码量稍微少点...
(defun c:tt ( / a bk blkdef doc e el i nam ...


;;块增加对象,我以往用Mac Lee的那个程序,但存在一个问题,增加对象后,框选增加的对象时,选择不到块。
在低版CAD (如CAD2007)中,楼主提到的问题还是没解决哟 !

黄大师, 换个高版CAD吧, 用2010版CAD是没有此问题的

q3_2006 发表于 2015-6-17 19:13:30

lucas_3333 发表于 2015-6-17 19:01 static/image/common/back.gif
在低版CAD (如CAD2007)中,楼主提到的问题还是没解决哟 !

黄大师, 换个高版CAD吧, 用2010版CAD是没 ...

我没用过..低版本也没试过..这个还有版本问题哈...

Jack_PC 发表于 2015-6-17 21:44:33

土办法

lucas_3333 发表于 2015-6-18 10:21:53

黄大师所说这个问题
;;块增加对象,我以往用Mac Lee的那个程序,但存在一个问题,增加对象后,框选增加的对象时,选择不到块。
这个应该是低版本的BUG, 我不认为编程能解决这个问题,要不关闭再开?

77077 发表于 2015-6-19 09:42:39


回复,学习学习!
页: 1 2 [3] 4 5 6 7
查看完整版本: 块增加对象