87282374 发表于 2013-12-6 15:01:53

求助: 将与所选择的曲线相交的实体收入选择集(lisp)!

求助: 将与所选择的曲线相交的实体收入选择集(lisp)!

Andyhon 发表于 2013-12-6 16:05:27

在实务上有着公差容许度考量
以 Divided 取得 曲线上的点集
(ssget "f" PtLst)取得相交的实体

87282374 发表于 2013-12-6 16:59:07

感谢Andyhon,能讲的更细些吗?

Andyhon 发表于 2013-12-6 17:10:39

举实例供探讨如何

87282374 发表于 2013-12-6 18:07:17

本帖最后由 87282374 于 2013-12-6 18:08 编辑

基本解决:
(if(setq enp (entsel "Please select a object: "))
    (progn
      (setq en (car enp))
       (setq obj (vlax-ename->vla-object en))
      (setq plist(vlax-safearray->list (vlax-variant-value (vla-get-coordinates obj))))
      (setq j 0)
       (setq mypt nil )
      (repeat (/ (length plist) 2)
          (setq mypt (append mypt (list (list (nth (* 2 j) plist) (nth (1+ (* 2 j)) plist ) 0.0))))
          (setq j (+ j 1))
      );end_repeat

      (setq obj (ssget "f" mypt '((0 . "INSERT") )))
感谢Andyhon,但有时选不上!!

Atsai 发表于 2013-12-7 08:08:26

个人经验,(ssget "f")没有在可见的视窗内会选不到,
如果有虚线,刚好你的(ssget "f")的选择线穿过虚线的空白处也会选不到。
如果有时选不到,可能就有这种情况。
页: [1]
查看完整版本: 求助: 将与所选择的曲线相交的实体收入选择集(lisp)!