php网站开发学什么,网页美工设计素材,百度站长平台账号购买,网站业务功能设计本帖最后由 vlisp2012 于 2013-10-9 16:27 编辑通过ssget获得的选择集的排序#xff0c;无法很好的控制#xff0c;每次下面材的时候#xff0c;都是通过fence#xff0c;画线选择板块#xff0c;很繁琐。我想编辑一个程序#xff0c;通过x坐标和y坐标来对面材(封闭多段线…本帖最后由 vlisp2012 于 2013-10-9 16:27 编辑通过ssget获得的选择集的排序无法很好的控制每次下面材的时候都是通过fence画线选择板块很繁琐。我想编辑一个程序通过x坐标和y坐标来对面材(封闭多段线)排序后进行板块的编号得到排序后的选择集如下(((434613.0 -21571.4) ) ((441013.0 -21571.4) ) ((433388.0 -21571.4) ) ((441013.0 -19151.4) ) ((439413.0 -19151.4) ) ((436213.0 -19151.4) ) ((434613.0 -19151.4) ) ((433388.0 -19151.4) ) ((437813.0 -19151.4) ) ((441013.0 -16711.4) ) ((439413.0 -16711.4) ) ((437813.0 -16711.4) ) ((436213.0 -16711.4) ) ((434613.0 -16711.4) ) ((433388.0 -16711.4) ) ((433388.0 -14031.4) ) ((434613.0 -14031.4) ) ((436213.0 -14031.4) ) ((437813.0 -14031.4) ) ((439413.0 -14031.4) ) ((441013.0 -14031.4) ))我想问大家的是怎样将上表中为排序而采用的坐标删掉呢我想要的表如下(() () () ( ) ( ) ( )…… )程序如下(defun c:tt ()(command undo be)(princ \n 选择四边形)(setq no (getint \n起始编号0))(if (null no) (setq no 0))(setq no_ban (getstring \n板块编号1B))(if ( no_ban ) (setq no_ban 1B))(princ \n请选择要排序的实体...)(if (setq ss (ssget ((0 . LWPOLYLINE))))(progn;; 1、获取点位表(setq lst ()i 0lst0 ())(repeat (sslength ss)(setq en (ssname ss i));;; ent (entget en);;; pt (cdr (assoc 10 ent))(setq obj (vlax-ename-vla-object en));; 得到包围框(setq avc (vla-GetBoundingBox Obj minpt maxpt))(setq minPt (vlax-safearray-list minPt)maxPt (vlax-safearray-list maxPt)PtCen (list (/ ( (car minpt) (car maxpt)) 2)(/ ( (cadr minpt) (cadr maxpt)) 2)))(setq lst0 (list PtCen en))(setq lst (cons lst0 lst)i (1 i)));; 2、排序(setqlst (vl-sortlst(function(lambda (e1 e2)(if (equal (cadr e1) (cadr e2) 50)( (caar e1) (caar e2))( (cadar e1) (cadar e2))))))))(bh lst no no_ban))(princ))请各位大侠帮忙