niqiu8 发表于 2020-6-9 19:34:52

请教下,关于交点的函数

如果,多段线的交点函数,感觉有BUG.如果交点位于一根多段线的拐点附近。返回值是2个坐标点,有的时候又会为空。感觉CAD内置交点函数有BUG呢。

(defun obj_int (ent1 ent2 / ax_ent_1 ax_ent_2 intpoints points i)
   (setq ax_ent_1 (vlax-ename->vla-object ent1)
         ax_ent_2 (vlax-ename->vla-object ent2)
   )
   (setq intpoints (vla-intersectwith ax_ent_1 ax_ent_2 acextendnone))
   (setq intpoints (vlax-variant-value intpoints))
   (setq i 0)
   (if (> (vlax-safearray-get-u-bound intpoints 1) 0)
   (repeat (/ (+ 1
               (- (vlax-safearray-get-u-bound intpoints 1)
                  (vlax-safearray-get-l-bound intpoints 1)
               )
            )
            3
         )
       (setq points (append points (list (list
         (vlax-safearray-get-element intpoints i)
         (vlax-safearray-get-element intpoints (+ i 1))
         (vlax-safearray-get-element intpoints (+ i 2))
       )))
       )
       (setq i (+ 3 i))
   )
   )
   points
)

烟盒迷唇 发表于 2020-6-10 09:35:44

焦点函数存在的问题,以前已经讨论过了吧,可以搜索看看。

niqiu8 发表于 2020-6-10 22:07:42

烟盒迷唇 发表于 2020-6-10 09:35
焦点函数存在的问题,以前已经讨论过了吧,可以搜索看看。

好的,,谢谢。

ntwison 发表于 2020-6-11 00:01:22

不知道把捕捉关掉会不会有用呢。
页: [1]
查看完整版本: 请教下,关于交点的函数