永不言弃 发表于 2013-5-13 11:36:11

llsheng_73 发表于 2013-5-13 11:29 static/image/common/back.gif
得到封闭多段线内的文字
(ssget"wp" pt (list(cons 0 "TEXT")))



谢谢,我再试试

永不言弃 发表于 2013-5-13 13:20:00

llsheng_73 发表于 2013-5-13 11:29 static/image/common/back.gif
得到封闭多段线内的文字
(ssget"wp" pt (list(cons 0 "TEXT")))



(setq pt (entsel "选择多段线"))
(setq ptt (vlax-safearray->list (vlax-variant-value (vla-get-Coordinates (vlax-ename->vla-object (car pt))))))
用上面这个代码获得坐标点(163.741 73.297 181.093 77.5697 181.902 69.8327 164.782 64.7517)怎样把它改成(ssget"wp" pt (list(cons 0 "TEXT")))中能识别的表,谢谢

nzl1116 发表于 2013-5-13 14:05:11

(mapcar 'cdr (vl-remove-if '(lambda (x) (/= (car x) 10)) (entget (car (entsel)))))

永不言弃 发表于 2013-5-13 14:54:20

nzl1116 发表于 2013-5-13 14:05 static/image/common/back.gif
(mapcar 'cdr (vl-remove-if '(lambda (x) (/= (car x) 10)) (entget (car (entsel)))))

谢谢,没有错误了,怎样返回里面的文字
(setq pt (entsel "选择多段线"))
(setq lis (mapcar 'cdr (vl-remove-if '(lambda (x) (/= (car x) 10)) (entget (car pt)))))
(setq t1 (ssget "wp" lis(list(cons 0 "TEXT"))))
(print t1)

llsheng_73 发表于 2013-5-14 11:12:42

永不言弃 发表于 2013-5-13 14:54 static/image/common/back.gif
谢谢,没有错误了,怎样返回里面的文字
(setq pt (entsel "选择多段线"))
(setq lis (mapcar 'cdr (v ...

(setq n(sslength t1)m 0)
(while(< m n)
   (setq e(entget(ssname t1 m))m(1+ m))
   (princ (cdr(assoc 1 e)))
)

llsheng_73 发表于 2013-5-14 11:15:23

nzl1116 发表于 2013-5-13 14:05 static/image/common/back.gif
(mapcar 'cdr (vl-remove-if '(lambda (x) (/= (car x) 10)) (entget (car (entsel)))))

我一直不太会这种写法,总是只能通过while循环来做,学习了

永不言弃 发表于 2013-5-14 13:15:30

llsheng_73 发表于 2013-5-14 11:12 static/image/common/back.gif
(setq n(sslength t1)m 0)
(while(< m n)
   (setq e(entget(ssname t1 m))m(1+ m))


非常感谢,可以了

张虎标 发表于 2015-6-11 11:14:42

你好你这个批量赋值的程序能传给我一个吗?

张虎标 发表于 2015-6-11 11:15:12

704592716QQ

13648893846 发表于 2018-12-7 00:45:45

Gu_xl 发表于 2013-5-12 16:47
批量选择权属线,然后逐个权属线进行处理!
处理单个权属线时,先计算权属线的顶点坐标plist,然后将权 ...

一不小心点错了,不好意思了,
页: 1 [2] 3
查看完整版本: 删除