|
|
发表于 2007-2-27 16:14:50
|
显示全部楼层
来自: 中国吉林吉林市
你可以参考一下帮助文件,没有"e"这个参数,只有":e", 一般对象选择拾取框都设置的很小,用这个参数和单选的效果差不多,从程序的作用来看,是统计0层中有多段线属性的图元的数量,去掉 "e"就行了。7 K& M8 E7 a$ k) x, b& y' B5 R+ l
) D* F% s& |$ f) d6 N: }/ f/ V这是按楼主的思路调整好的程序:4 X* f0 L0 D3 e
(defun c:tj (/ b,c,page)7 o2 D6 `0 `, o) P$ x R
(graphscr)
3 }8 @8 [& x* n1 | (princ "请选择要统计的图纸")7 C* r! J6 {6 b
(setq b (ssget ":E" '((0 . "lwpolyline") (8 . "0"))))
! n# C L. c8 A7 w (setq page (sslength b))
! ^# Q0 u2 ~8 f/ c) A (setq c (rtos page 2 3))2 m/ f7 U" Y' e6 Y% c2 V S
(prin1 c)( P3 `# K# x3 v
(princ)0 c) |; D6 K p6 u
)
9 S/ u) d2 X( R# E+ K0 |+ C7 Y+ j7 p; }: G0 N; B
摘录了一段帮助文件供参考) Y. W7 F8 {" f) F
' O+ \3 w) V5 `; Z* k. [. a(ssget [sel-method] [pt1 [pt2]] [pt-list] [filter-list])& x1 A4 I! m4 J/ Y6 A. @- R, h
选择集中可以包含图纸空间和模型空间两个空间中的对象,但该选择集用于某操作时,那些在当前无效的空间中的对象会被 ssget 过滤掉。由 ssget 函数返回的选择集中仅包含主图元(不包含属性和多段线顶点)。, @' x/ `$ V% E3 G7 \$ D# Z, E
参数
& o8 z- N9 B4 f$ U, q; W5 {' bsel-method
- ?7 t, s* V7 p, c字符串,指定对象选择方法。有效选择方法包括:
! J: b/ ]9 c7 G0 rC 窗交。% N8 h9 }' ?8 c9 c
CP 圈交(指定多段线内和与该多段线相交的所有对象)。# H) H) ^3 {7 l6 p
F 栏选。
6 G$ x3 x' t7 W5 h3 mI 隐含窗口选择(在执行 PICKFIRST 期间选择的对象)。. o, w+ P' x) W9 F
L 添加到数据库的最后一个可见对象。) W1 S @* r- m& g$ P" e
P 最后一个创建的选择集。
3 l9 @* P$ x1 n6 l- tW 窗口选择。; B6 A- {/ b* s9 b* K7 p
WP 圈围(指定多边形内的所有对象)。5 E0 g1 A6 P2 c) X7 Y3 T+ @
X 整个数据库。如果指定了 X 选择方法,而又没有提供 filter-list 参数,则 ssget 选择数据库中的所有图元,包括关闭、冻结图层中的图元和可见屏幕外的图元。
: r6 n) T# i1 m3 |% j:E 光标的对象选择拾取框中的所有对象。
- j# b- c' }( w! Q# P- J* {:N 在执行 ssget 操作的过程中,为选定图元调用 ssnamex 获得容器块和转换矩阵的附加信息。只有通过窗口、窗交点拾取等图形选择方法选定的图元,这一附加信息才可以使用。
& ?; Y6 {) W; r) I与其他对象选择方法不同,:N 可能会返回选择集中的多个同名图元。例如,如果用户选择了一个复杂图元(如 BlockReference、PolygonMesh 或老式多段线)的子图元,那么 ssget 将查看该子图元是否已被选中。不过,ssget 实际上会将主图元(如 BlockReference 和 PolygonMesh)添加到选择集中。这样就会在选择集中出现多个同名图元,而 ssnamex 获得的每个图元的子图元信息各不相同。
# x' |' X) j! C0 L/ L- o8 }. u:S 仅允许单一选择集。 |
评分
-
查看全部评分
|