|
|
发表于 2007-2-27 16:14:50
|
显示全部楼层
来自: 中国吉林吉林市
你可以参考一下帮助文件,没有"e"这个参数,只有":e", 一般对象选择拾取框都设置的很小,用这个参数和单选的效果差不多,从程序的作用来看,是统计0层中有多段线属性的图元的数量,去掉 "e"就行了。# h5 n; Y6 c9 I4 L
& g4 Q7 R' e8 C5 W+ ]
这是按楼主的思路调整好的程序:
' A# {; M+ i) r* }" E) B$ u5 V8 s(defun c:tj (/ b,c,page)
( e. A% W/ h% U- q& y4 v$ P (graphscr)
& r1 B5 k. d7 E& ^+ L0 M R5 t (princ "请选择要统计的图纸")
/ P$ C d, J: K2 z7 d/ y# G: b (setq b (ssget ":E" '((0 . "lwpolyline") (8 . "0"))))
4 E: _# L% B! G/ Y; U (setq page (sslength b))4 q0 n% e; n% U5 Y" F9 A
(setq c (rtos page 2 3))
+ g, ]! V7 ^9 E R (prin1 c)
* J( U4 M; |( \$ }* _ (princ)" ?9 r' ^+ j" N. k3 O9 R9 K) u* m! V
)
7 R4 V3 V+ v( d- x& F3 N
! A. [) ~5 n, V" A: t Y- m) G* ^摘录了一段帮助文件供参考
" E& n- `7 U+ `4 t3 E1 h E$ @ % G% X% j1 x, V$ p3 V* W: a
(ssget [sel-method] [pt1 [pt2]] [pt-list] [filter-list])
9 L8 ?: G$ l5 p0 k# E选择集中可以包含图纸空间和模型空间两个空间中的对象,但该选择集用于某操作时,那些在当前无效的空间中的对象会被 ssget 过滤掉。由 ssget 函数返回的选择集中仅包含主图元(不包含属性和多段线顶点)。# k7 W& ]& g3 F& l2 u0 m: W. F( @
参数
: b4 q6 F* H7 z) K4 Zsel-method * j5 X `( z( _
字符串,指定对象选择方法。有效选择方法包括:
3 U: [# X r6 M7 b9 fC 窗交。8 p/ T& n4 y) Q/ R" b k+ |' N
CP 圈交(指定多段线内和与该多段线相交的所有对象)。2 o E: a0 o7 T( @9 m. r* v
F 栏选。! L& x8 k, T; z/ i
I 隐含窗口选择(在执行 PICKFIRST 期间选择的对象)。6 C* k/ ] P" y# R1 O" D( K
L 添加到数据库的最后一个可见对象。1 Z6 T2 {5 d( |* y1 [- n0 s
P 最后一个创建的选择集。
9 s `* f. l, O: y) o1 aW 窗口选择。5 v/ g1 h T. F) @, e9 I i
WP 圈围(指定多边形内的所有对象)。
- N( F4 s& H/ gX 整个数据库。如果指定了 X 选择方法,而又没有提供 filter-list 参数,则 ssget 选择数据库中的所有图元,包括关闭、冻结图层中的图元和可见屏幕外的图元。9 D/ B7 G$ G3 w% k+ I/ Z5 W" {
:E 光标的对象选择拾取框中的所有对象。
U) A0 ?$ F. m& V0 q:N 在执行 ssget 操作的过程中,为选定图元调用 ssnamex 获得容器块和转换矩阵的附加信息。只有通过窗口、窗交点拾取等图形选择方法选定的图元,这一附加信息才可以使用。
6 \$ R0 Y3 _5 a% D: r8 p7 @- g与其他对象选择方法不同,:N 可能会返回选择集中的多个同名图元。例如,如果用户选择了一个复杂图元(如 BlockReference、PolygonMesh 或老式多段线)的子图元,那么 ssget 将查看该子图元是否已被选中。不过,ssget 实际上会将主图元(如 BlockReference 和 PolygonMesh)添加到选择集中。这样就会在选择集中出现多个同名图元,而 ssnamex 获得的每个图元的子图元信息各不相同。6 q) B# ]) a9 b) a4 t1 l, _
:S 仅允许单一选择集。 |
评分
-
查看全部评分
|