hncjddd 发表于 2019-4-28 10:39:58

怎么获得距pt点最近的文本值。

怎么获得距点最近的文本。

hncjddd 发表于 2019-4-28 14:15:09

gzxl 发表于 2019-4-28 11:32
(1) 以点为中心,建立正方形
(2) 然后ssget "C"
(3) 如有多个文本,则取距离最近的文本


十分感谢 解决了(setq ssg1 (ssget "c" (polar tp1 (/ pi 4) (* scal 0.0120711)) (polar tp1 (* pi 1.25) (* scal 0.0070711)) '((0 . "text"))))

gzxl 发表于 2019-4-28 11:32:41

(1) 以点为中心,建立正方形
(2) 然后ssget "C"
(3) 如有多个文本,则取距离最近的文本
可以设置搜索的距离限制,重复(1)(2)(3),有则退出循环

欢迎加入 测绘源码群548199736

烟盒迷唇 发表于 2019-4-29 08:23:31

这个也不错

chwnin 发表于 2021-3-4 11:08:48

这个方法不错。

轮回 发表于 2022-2-6 10:52:20

gzxl 发表于 2019-4-28 11:32
(1) 以点为中心,建立正方形
(2) 然后ssget "C"
(3) 如有多个文本,则取距离最近的文本


群都没了吗?

skg123 发表于 2022-5-9 15:07:51

我的处理方法,绘制多边形(接近圆圈)形成搜索半径;   
代码自
(setq No-j 0   j_ZDH -1
                                                                                                                        Cen npt
                                                                                                                        pt_list_ang nil
                                                                                                                )
                                                                                                                        (repeat 36
                                                                                                                                       (setq pt_ang(polar Cen (angtof (rtos (+ 0 (* 10No-j)) 2 4) ) 0.5)
                                                                                                                                                   pt_list_ang (append (list pt_ang)pt_list_ang)
                                                                                                                                        );计算搜索边界
                                                                                                                                        (setq No-j (+ 1 No-j)        )
                                                                                                                        ); End repeat
                                                                                                                        ; (princ pt_list_ang)
                                                                                                                        (setq SS_ZDH (ssget "_CP" pt_list_ang(list(cons 0"Mtext,text") (cons 8"ZDH") )) );;全圈文字
页: [1]
查看完整版本: 怎么获得距pt点最近的文本值。