|
|
发表于 2007-2-27 16:14:50
|
显示全部楼层
来自: 中国吉林吉林市
你可以参考一下帮助文件,没有"e"这个参数,只有":e", 一般对象选择拾取框都设置的很小,用这个参数和单选的效果差不多,从程序的作用来看,是统计0层中有多段线属性的图元的数量,去掉 "e"就行了。
0 V1 r! T2 W9 R$ W( ~- F
! s6 X% z6 E9 F; `: h$ Y4 h, y这是按楼主的思路调整好的程序:
, j' q* I2 M# S: d2 }, a(defun c:tj (/ b,c,page)
. Q. D# H( _% X: `% a (graphscr)0 _6 k; g! X! p2 Y G. E; x
(princ "请选择要统计的图纸")
/ @2 Z- @0 l% O" C% ~% J( R/ q (setq b (ssget ":E" '((0 . "lwpolyline") (8 . "0"))))
! u1 m7 \: C. W1 _! G4 p$ ~ (setq page (sslength b))+ U, Z2 p# X) o% }- p1 _' ~3 T
(setq c (rtos page 2 3))' D+ z S4 |" Q& ], |
(prin1 c)" y* S, j* }% t
(princ)
( Z9 c) F4 H: ~): \0 }2 ~9 `0 N9 z
; y# J4 F, d" x! k$ ~/ x
摘录了一段帮助文件供参考
: C, b. B, ?) h$ ` 3 e) O* H' p! g8 k- v% g% C& q9 u
(ssget [sel-method] [pt1 [pt2]] [pt-list] [filter-list])
6 F3 F5 P$ ]9 T, @+ P选择集中可以包含图纸空间和模型空间两个空间中的对象,但该选择集用于某操作时,那些在当前无效的空间中的对象会被 ssget 过滤掉。由 ssget 函数返回的选择集中仅包含主图元(不包含属性和多段线顶点)。
1 F! ]) h0 r$ [- ]& H U. e参数
1 r V& E& y8 m$ `. H- L" k/ jsel-method
- Y7 K! _* Z, D" |1 A字符串,指定对象选择方法。有效选择方法包括:4 l( q& V8 l/ ~# g, I
C 窗交。/ z, x9 d5 m" n& j; R1 O ^3 C) O
CP 圈交(指定多段线内和与该多段线相交的所有对象)。
1 \+ P5 J& x, s* KF 栏选。/ ]& E: N1 t4 N% `& q1 S
I 隐含窗口选择(在执行 PICKFIRST 期间选择的对象)。
^# f2 ~6 U6 e+ zL 添加到数据库的最后一个可见对象。
0 `* f$ Q9 F/ H6 x" RP 最后一个创建的选择集。1 @$ X! \3 `( e# n; \
W 窗口选择。/ F; ?% d" o; U6 e
WP 圈围(指定多边形内的所有对象)。0 r: `( m- s) S/ `) u5 e
X 整个数据库。如果指定了 X 选择方法,而又没有提供 filter-list 参数,则 ssget 选择数据库中的所有图元,包括关闭、冻结图层中的图元和可见屏幕外的图元。
, B- [0 Z- ^. [' J' I:E 光标的对象选择拾取框中的所有对象。& Z7 C' H. r9 e m. g- n
:N 在执行 ssget 操作的过程中,为选定图元调用 ssnamex 获得容器块和转换矩阵的附加信息。只有通过窗口、窗交点拾取等图形选择方法选定的图元,这一附加信息才可以使用。
$ x) ]$ I1 P6 k" K8 T与其他对象选择方法不同,:N 可能会返回选择集中的多个同名图元。例如,如果用户选择了一个复杂图元(如 BlockReference、PolygonMesh 或老式多段线)的子图元,那么 ssget 将查看该子图元是否已被选中。不过,ssget 实际上会将主图元(如 BlockReference 和 PolygonMesh)添加到选择集中。这样就会在选择集中出现多个同名图元,而 ssnamex 获得的每个图元的子图元信息各不相同。
* `1 L2 N( @( L% n R:S 仅允许单一选择集。 |
评分
-
查看全部评分
|