Martinho 发表于 2022-7-5 19:49:01

Lisp自动调整成吨的线条

大家好。。。。
 
我需要一些帮助。。。。我有3000多行模糊的线。。。基本上这是一条路,我需要测量自然地面的距离,以及从自然地面到道路的距离。。。这是一条长82公里的公路。。。我有25米的路段。。。有3000多个部分我需要调暗。。。
 
是否有任何列表可以通过选择行自动完成此操作。。。
 
我举了一个例子来说明我需要做什么。。。
 
我希望有人知道一个Lisp程序的帮助我。。。。tks公司
实例拉链

Tharwat 发表于 2022-7-5 20:10:49

在这个论坛中用我的用户名搜索AutoDim,你应该会找到你想要的。
 
欢迎来到CADTutor。

Martinho 发表于 2022-7-5 20:17:28

你好。。。。这真是太棒了。。。。但我也需要它,但还有更多。。。如果可能的话。。。我需要从线路上得到2个DIM。。。。不是总尺寸。。。。但是每个十字路口的昏暗。。。
 
我的英语不是野兽,所以我尽量解释。。。。很抱歉

Tharwat 发表于 2022-7-5 20:26:26

像这样的?
 

(defun c:Test (/ _pts ss ch i sn en p1 p2 sf n l 2p)
;;----------------------------------------------------;;
;;         Author: Tharwat Al Shoufi      ;;
;;      Date: 08. May. 2015            ;;
;;----------------------------------------------------;;
(if (setq ss (ssget '((0 . "LINE"))))
   (progn
   (setq ch (getvar 'cmdecho))
   (setvar 'cmdecho 0)
   (defun _pts (lst)
   (if lst
   (cons (list (car lst) (cadr lst) (caddr lst))
         (_pts (cddddr lst))
   )
   )
)
   (repeat (setq i (sslength ss))
       (setq sn (ssname ss (setq i (1- i)))
             en (entget sn)
             p1 (cdr (assoc 10 en))
             p2 (cdr (assoc 11 en))
             sf (ssget "_F" (list p1 p2) '((0 . "*POLYLINE")))
       )
       (repeat (setq n (sslength sf))
         (if
         (setq
             l (vlax-invoke
               (vlax-ename->vla-object (ssname sf (setq n (1- n))))
               'Intersectwith
               (vlax-ename->vla-object sn)
               AcExtendnone
               )
         )
            (progn
            (foreach p (_pts l)
                (if (not (equal (distance p p1) 0. 1e-)
                  (if (< (distance p p1) (distance p p2))
                  (setq 2p (list p p1))
                  (setq 2p (list p p2))
                  )
                )
            )
            (mapcar
                '(lambda (j k)
                   (command "_.dimlinear" "_non" j "_non" k "_non" j)
               )
                (list p1 (car 2p))
                (list p2 (cadr 2p))
            )
            )
         )
       )
   )
   (setvar 'cmdecho ch)
   )
)
(princ)
)(vl-load-com)



Martinho 发表于 2022-7-5 20:40:40

这很适合我需要的。。。。。tks很多。。。你们是最棒的。。。。。

Tharwat 发表于 2022-7-5 20:57:46

 
不客气。
页: [1]
查看完整版本: Lisp自动调整成吨的线条