CAD中的编号点
你好我将尝试在下面解释我的意思:
我在CAD中通过交叉线建立了一个网格。我需要编写一个lisp,在直线交叉的地方创建点,并按适当的顺序为这些点插入数字。对于第一行,我需要插入数字,例如从1到5(从左到右),下一行从6到10(从右到左),每次都是相同的偶数行和奇数行。
是否存在此任务的lisp?
提前感谢,
雅各布 从李的网站上查看这个NUMINC。
我看到这个网站与这个Lisp程序,但我想选择所有的网格,并做到这一点自动一次。
您提到的LISP有一个使用数组对点进行编号的工具。但我每次都要对每一行重复这个动作。
不幸的是,我不知道如何为这个任务创建lisp,但有时我有一个大网格来准备要进一步处理的数字。 如果网格的间距相等,可以使用我的增量阵列程序:
你好
试试这个程序;
查看视频=>视频
(defun c:GridNum (/ ss i l p lst a b n)
(if (setq ss (ssget '((0 . "LINE"))))
(progn
(repeat (setq i (sslength ss))
(setq
l (cons (vlax-ename->vla-object (ssname ss (setq i (1- i))))
l
)
)
)
(foreach x l
(foreach o l
(and (setq p (vlax-invoke x 'intersectwith o AcExtendNone))
(setq lst (cons p lst))
(setq l (vl-remove x l))
)
)
)
(setq a (vl-sort lst '(lambda (j k) (< (car j) (car k))))
b (vl-sort a '(lambda (j k) (> (cadr j) (cadr k))))
n 0
)
(mapcar '(lambda (x)
(entmake
(list '(0 . "TEXT")
(cons 10 x)
(cons 11 x)
(cons 1 (itoa (setq n (1+ n))))
(cons 40 (getvar 'TEXTSIZE))
'(71 . 0)
'(72 . 1)
'(73 . 2)
)
)
)
b
)
)
)
(princ)
)(vl-load-com)
好的,悲伤。。。。已经停下来了李。。。。你让我们其他人看起来很糟糕-D
....... 另一个用C语言编写的程序,我只是为了好玩和练习。
享受
C#NumberingAcrossingLineObjectsLeftToRight。pdf 是否可以以这种方式修改此代码以获得以下内容:
https://www.cadtutor.net/forum/attachment.php?attachmentid=60542&cid=1&stc=1
我需要以相同的方式对点进行编号,如绘制紫色线。我认为必须使用同时按X和Y排序点的模块。但我不知道创建
用这样的东西太棒了。
页:
[1]