![]() |
如何获得一个实体最近另外一个实体
如何获得一个实体最近另外一个实体
www.dimcax.com 如何获得一个实体最近另外一个实体比如获得指定的文字最近line线或者pline,用autolisp如何实行?谢谢。 还有,autocad d 自己解决了,获得实体的坐标,然后构造一个选择区域,用ssget获得区域内的实体,可逐步增加区域,获得实体后停止。挺简单。呵呵。 d 我现在也正需要这方面的,可不可以贴出来学习一下? d (defun fun_ssget(sdpt sddelobj sdlaynm / my_tot my_objss my_ld my_ru my_x my_y );//(点坐标,ssname,图层) (setq my_x (car sdpt) my_y (cadr sdpt) my_objss nil my_prcsn 5.0 my_addstep 0.5 my_tot 0 ) (while(< my_tot 2) (setq my_prcsn (+ my_prcsn my_addstep) my_ru (list (+ my_x my_prcsn) (+ my_y my_prcsn)) my_ld (list (- my_x my_prcsn) (- my_y my_prcsn)) my_objss (ssget "_c" my_ld my_ru sdlaynm) ) (if ( null my_objss) (setq my_objss nil) (setq my_tot (sslength my_objss )) ) (if (> my_prcsn 100.0) (setq my_tot 10000) ) ) (if ( null my_objss) (alert "none object") (progn (setq my_obj(ssdel sddelobj my_objss));;删除自身 ) ) (setq objnm(ssname my_objss 0)) ) d |
所有的时间均为北京时间。 现在的时间是 04:37 AM. |