hehoubin 发表于 2012-11-3 15:34:36

请大侠帮忙写一个批量斜线选择和和一个批量斜线删除的 LSP程序

attach://71261.dwg 大侠们,帮忙写个斜线选择和斜线删除的程序

酷酷提 发表于 2022-4-15 01:38:24

Andyhon 发表于 2012-11-5 08:29


层主您好,麻烦我想请问一下,这个插件,为什么我从一条直线偏移出来的几根直线,当我把这些线裁切了过后,有的会提示是斜线,有的又不会提示,是什么原因呢?

Andyhon 发表于 2012-11-3 16:47:07

本帖最后由 Andyhon 于 2012-11-3 16:47 编辑

;;; 斜线选择
(defun C:test ()
   (setq ss (ssget '((0 . "LINE")))
      sss (ssadd)
          i0
   )
   (repeat (sslength ss)
   (setq ee (ssname ss i)
          dat (entget ee)
         pa (cdr (assoc 10 dat))
         pb (cdr (assoc 11 dat))
            i (1+ i)
   )
   (cond
       ((equal (car pa) (car pb) 1e-12))
       ((equal (cadr pa) (cadr pb) 1e-12))
       (T (ssadd ee sss))
   ) )
   (sssetfirst nil sss)
)

hehoubin 发表于 2012-11-3 20:59:55

谢谢,要是选择斜线并删除呢,

hehoubin 发表于 2012-11-3 21:02:50

谢谢Andyhon楼主

hehoubin 发表于 2012-11-3 21:29:15

不能选择PLINE绘制的线,,

Andyhon 发表于 2012-11-3 22:46:57

只要异动 Pa Pb 的端点的取得函式
另 (ssget '((0 . "LINE"))) ==> (ssget '((0 . "*LINE")))

站内有,给自己一个功课吧!

hehoubin 发表于 2012-11-4 23:28:07

我不懂这个,希望Andyhon大侠提高完整的源码程序,谢谢,非常感谢,,

Andyhon 发表于 2012-11-5 08:29:26


;;; 斜线选择
(vl-load-com)
(defun C:test ()
   (setq ss (ssget '((0 . "*LINE")))
      sss (ssadd)
          i0
   )
   (repeat (sslength ss)
   (setq ee (ssname ss i)
         pa (vlax-curve-getStartPoint ee)
         pb (vlax-curve-getEndPoint ee)
            i (1+ i)
   )
   (cond
       ((equal (car pa) (car pb) 1e-12))
       ((equal (cadr pa) (cadr pb) 1e-12))
       (T (ssadd ee sss))
   ) )
   (sssetfirst nil sss)
)

hehoubin 发表于 2012-11-23 21:20:20

Andyhon大侠大侠能帮我用上面在程序写下选择并删除,吗

Andyhon 发表于 2012-11-23 21:51:55

(sssetfirst nil sss)
==>
(vl-cmdf "erase" sss "")
页: [1] 2
查看完整版本: 请大侠帮忙写一个批量斜线选择和和一个批量斜线删除的 LSP程序