|
|
发表于 2007-2-27 16:14:50
|
显示全部楼层
来自: 中国吉林吉林市
你可以参考一下帮助文件,没有"e"这个参数,只有":e", 一般对象选择拾取框都设置的很小,用这个参数和单选的效果差不多,从程序的作用来看,是统计0层中有多段线属性的图元的数量,去掉 "e"就行了。: _6 V0 y) Y* |. r V$ g
! N' s9 s) L6 x; j+ B( T# M' X这是按楼主的思路调整好的程序:1 \: v* \8 V( `
(defun c:tj (/ b,c,page)( _" [% l0 T- H$ O1 ^
(graphscr)0 y Q, g8 b% Z0 P
(princ "请选择要统计的图纸")
c5 D9 |9 k9 Z. A9 e/ K/ X (setq b (ssget ":E" '((0 . "lwpolyline") (8 . "0")))) {# e7 U+ L, L( p5 E
(setq page (sslength b))
' }7 K4 e1 Y/ }$ [ (setq c (rtos page 2 3))
: Q/ }, I$ o; q. b* g5 v+ M (prin1 c)
) ~* ?1 j6 @. ?! h1 Y3 V2 u. h (princ)
& d( ^/ ?! K: C+ Q/ h t)6 C! q+ I$ o( Q6 p' O; A, P; P
$ w4 `8 N9 x( C/ {8 I
摘录了一段帮助文件供参考
2 q6 h3 Q; F3 v 4 B& k( H) l8 K1 f u
(ssget [sel-method] [pt1 [pt2]] [pt-list] [filter-list])4 m: Z6 X) V! X3 A% j0 h. N
选择集中可以包含图纸空间和模型空间两个空间中的对象,但该选择集用于某操作时,那些在当前无效的空间中的对象会被 ssget 过滤掉。由 ssget 函数返回的选择集中仅包含主图元(不包含属性和多段线顶点)。
( X z$ O, I+ ~6 z; R参数
# y6 r, b7 z; i9 P; ^" Z/ `sel-method
( }& K* m! e5 K3 A/ x/ Z字符串,指定对象选择方法。有效选择方法包括:
; P* t0 y5 G; R4 I$ R+ m" ?" m1 C5 YC 窗交。
2 B( P7 k/ O5 c# ?4 T9 ICP 圈交(指定多段线内和与该多段线相交的所有对象)。9 d4 l# q2 f1 B) O; D1 ^
F 栏选。$ |( V7 @+ v( h. N! Q! j7 s1 i4 F4 u
I 隐含窗口选择(在执行 PICKFIRST 期间选择的对象)。& E/ D* ^+ X) }- }: X
L 添加到数据库的最后一个可见对象。. C* v, U/ s3 y' h! z
P 最后一个创建的选择集。
D- q7 {" f( S7 E% ?% s. M% S. cW 窗口选择。
6 O- z& z8 ?& F! d6 IWP 圈围(指定多边形内的所有对象)。( k4 V( ] v* U3 _
X 整个数据库。如果指定了 X 选择方法,而又没有提供 filter-list 参数,则 ssget 选择数据库中的所有图元,包括关闭、冻结图层中的图元和可见屏幕外的图元。
, K5 M6 ~ e% E. H3 G:E 光标的对象选择拾取框中的所有对象。
8 ?) ?% _0 N3 d+ d E$ M:N 在执行 ssget 操作的过程中,为选定图元调用 ssnamex 获得容器块和转换矩阵的附加信息。只有通过窗口、窗交点拾取等图形选择方法选定的图元,这一附加信息才可以使用。
2 R: Z/ g8 ?: g) N& t与其他对象选择方法不同,:N 可能会返回选择集中的多个同名图元。例如,如果用户选择了一个复杂图元(如 BlockReference、PolygonMesh 或老式多段线)的子图元,那么 ssget 将查看该子图元是否已被选中。不过,ssget 实际上会将主图元(如 BlockReference 和 PolygonMesh)添加到选择集中。这样就会在选择集中出现多个同名图元,而 ssnamex 获得的每个图元的子图元信息各不相同。
0 v6 J/ f) A& T( a7 ^- P:S 仅允许单一选择集。 |
评分
-
查看全部评分
|