guitarguy1685 发表于 2022-7-6 09:11:39

选择多段线的一条线

我想创建一个lisp来绘制剪力墙线。我在考虑从多段线的一条线创建一条基于xy点的线。
 
我的问题是我不知道如何从特定线路获取infro。当我选择一条多段线并使用getent时,我看到了所有的点,但我不知道哪个是哪个。他们的ASSOC号码都是10。如何获取我的提货箱所在行的信息?

Lee Mac 发表于 2022-7-6 10:07:37

最简单的方法是使用vlax曲线函数,下面是一个详细的示例:
 
(defun c:test ( / select entity point param )
(if
   (and
   (setq select (entsel))
   (eq "LWPOLYLINE" (cdr (assoc 0 (entget (setq entity (car select))))))
   )
   (progn
   (setq point(vlax-curve-getclosestpointto entity (cadr select))
         param(vlax-curve-getparamatpoint entity point)
         param(fix param)
   )
   (list
       (vlax-curve-getpointatparam entity param)
       (vlax-curve-getpointatparam entity (1+ param))
   )
   )
)
)

Tharwat 发表于 2022-7-6 10:15:18

看看以vlax曲线开始的函数-。。。。。。。。这比与assoc 10实体打交道更容易收集所需信息
在许多情况下,协调多段线上的点。
页: [1]
查看完整版本: 选择多段线的一条线