wedg 发表于 2004-11-24 18:36:00

[求助]属性块

把一个物体(比方说圆)和文字做成一个块后,每次插入这个块的时候,文字可以自己输入,例如:我把一个圆和数字1做成一个带属性的块以后,每次插入的时候,数字1可以手动输入变为5或者6或者其他,请各位大虾帮帮忙!(最好做成lisp程序,因为我还有其他的地方要用!比如:把一个圆分成上下2部分,上部分的数字,每次COPY后,能自动递增,下面的数字不变,这和上面请求编写的程序有点相似)

vladimirputin 发表于 2016-10-30 10:22:46

非常好的资料,谢谢楼主分享啊

vladimir 发表于 2016-10-25 08:59:42

很不错的程序,谢谢楼主分享

meflying 发表于 2004-11-24 19:26:00

这种东西没有比如的,必须针对每个块单独编程,所以你得把某些东西确定了才行。。。你可以先做好一个属性块,然后才可以针对这个属性块编一个拷贝的程序,使得拷贝时能增加相应的值

wedg 发表于 2004-11-24 20:28:00

那就请帮忙编写一个属性块。如图。

meflying 发表于 2004-11-25 10:17:00

下面的程序是用来拷贝图中的属性块的,现在要满足你的要求,程序和我给你的图中的属性块都必须有才行。。。拷贝命令:cok(defun c:cok( / ent ent2 ent3 ents k i)
   (setq ent (entlast))
   (command "_.copy" pause pause)
   (setq i 0)
   (while (= (getvar "cmdactive") 1)
       (command pause)
       (setq ent2 (entlast))
       (setq ent3 (entnext ent2))
       (setq ents (entget ent3))
       (if (not (equal ent ent2))
         (progn
(if (= i 0)
   (setq k (cdr (assoc 1 ents)))         
)
(setq k (add k 1))
(setq i (1+ i))
(setq ents (subst (cons 1 k) (assoc 1 ents) ents))
(entmod ents)
(entupd ent2)
(setq ent ent2)
             )
       )
   )
   (command "_.regen")
   (princ)
)
(defun add(ch num / i n ch2 k)
   (setq i 0
n (strlen ch)
ch2 "")
   (while (wcmatch (setq k (substr ch (- n i) 1)) "")
       (setq ch2 (strcat k ch2))
       (setq i (1+ i))
   )
   (setq ch2 (itoa (+ (atoi ch2) num)))
   (strcat (substr ch 1 (- n i)) ch2)
)

wedg 发表于 2004-11-25 16:45:00

谢谢!但是,每次都只能copy一个,能不能再改进一下,可以连续呢?

meflying 发表于 2004-11-25 16:50:00

copy本身有连续功能。。。


我这个命令在使用是跟copy是一模一样的,只不会最后要修改那些属性块而已。。。


Command: copy


Select objects: 1 found


Select objects:<BR>Specify base point or displacement, or : m<BR>Specify base point: Specify second point of displacement or &lt;use first point as <BR>displacement&gt;: Specify second point of displacement or &lt;use first point as <BR>displacement&gt;: Specify second point of displacement or &lt;use first point as <BR>displacement&gt;: Specify second point of displacement or &lt;use first point as <BR>displacement&gt;:

wedg 发表于 2004-11-25 17:34:00

我想把你那个属性块,插入到别的图中使用,可是好像不行呢?能否告诉我你那个属性块的制作方法?不然,我就只能在你给我的那张图中使用,好像意义不是很大!

wedg 发表于 2004-11-27 16:11:00

楼上的请帮帮忙阿!


&amp;nb赶p;

meflying 发表于 2004-11-27 18:43:00

我4楼开始已经说明了这个问题,你把属性块拷过去就行了

wedg 发表于 2004-11-28 17:19:00

非常感谢!
页: [1] 2
查看完整版本: [求助]属性块