QQ登录

只需一步,快速开始

登录 | 注册 | 找回密码

三维网

 找回密码
 注册

QQ登录

只需一步,快速开始

展开

通知     

全站
9天前
查看: 2602|回复: 5
收起左侧

[已解决] 帮忙看看这程序,加载之后说参数太少

[复制链接]
发表于 2007-2-27 09:58:57 | 显示全部楼层 |阅读模式 来自: 中国辽宁大连

马上注册,结识高手,享用更多资源,轻松玩转三维网社区。

您需要 登录 才可以下载或查看,没有帐号?注册

x
帮忙看看这程序。加载之后说参数太少。看了半天没整明白。1 F. [$ q% @3 z/ A/ Q+ K. s
(defun c:tj (/ b,c,page)6 F0 i! I" F2 Z% s, ?6 M+ N
  (graphscr)5 h. I. ]& a4 [+ z- p7 t
  (princ "请选择要统计的图纸")6 _% }) `& e' m" \: }: X' E1 x
  (setq b (ssget "e" '((0. "lwpolyline") (8."0"))))
+ ^) ?  o9 {, W  M  (setq page (sslength b))
3 F- r' `7 e2 V& X: J5 a$ \  (setq c (rtos page 2 3))) w0 d; [+ }- I
  (prin1 c)
  l/ n+ J2 o4 T) s$ M% b# L7 t  (princ)
5 I5 c$ D# N0 f8 v, y)+ b( Q! h4 X1 x; r8 `- U

- ~- H7 b5 T: {8 u5 ?9 F6 ?; F[ 本帖最后由 ★新手★ 于 2007-2-27 12:16 编辑 ]
发表于 2007-2-27 16:14:50 | 显示全部楼层 来自: 中国吉林吉林市
你可以参考一下帮助文件,没有"e"这个参数,只有":e",  一般对象选择拾取框都设置的很小,用这个参数和单选的效果差不多,从程序的作用来看,是统计0层中有多段线属性的图元的数量,去掉 "e"就行了。5 m5 D$ r" j( Q* O) w: N, l

. _5 ]2 M8 p( p" l2 s4 w这是按楼主的思路调整好的程序:$ V) S# d9 D4 v0 A$ G4 V  {, ^3 u
(defun c:tj (/ b,c,page)- J: b* W' m$ @, }0 k& G, g# ?
  (graphscr)
9 S- {6 k/ q9 D( M  (princ "请选择要统计的图纸")
) W6 _1 \5 M. X) |$ F" R  (setq b (ssget ":E" '((0 . "lwpolyline") (8 . "0"))))8 l7 Y6 s9 ~1 x9 S6 g6 C
  (setq page (sslength b)): u- |2 H6 u  H9 ~% V9 P
  (setq c (rtos page 2 3))* I1 F. B! C' v0 Z4 z* j) ^
  (prin1 c)
& t( f/ k3 T7 ]+ Z; h9 @: N6 T8 `  (princ)3 K4 I4 x# H3 n' P; d/ u9 `1 k
)# _/ e! F8 m! v$ ^1 R4 J) i0 P  m5 R
! P# v) }6 A3 D' O. e& k
摘录了一段帮助文件供参考0 C- T: E# ?6 i! |

7 M. A7 q  f! L& V- U. S% x. C( r0 E- q, [(ssget [sel-method] [pt1 [pt2]] [pt-list] [filter-list])" B9 ~, m1 w4 i1 e9 Q
选择集中可以包含图纸空间和模型空间两个空间中的对象,但该选择集用于某操作时,那些在当前无效的空间中的对象会被 ssget 过滤掉。由 ssget 函数返回的选择集中仅包含主图元(不包含属性和多段线顶点)。1 r2 Z. s% c% ]# P# R
参数
. o  b: m" y8 V/ H8 ~5 `2 k1 psel-method
8 _0 Y9 @% P# t  N4 N# R字符串,指定对象选择方法。有效选择方法包括:3 q# B5 ~' Q2 L0 j6 b3 Y
C  窗交。" X+ D- \4 L. Q; Y1 R+ J* Z
CP  圈交(指定多段线内和与该多段线相交的所有对象)。
4 V& [& ~8 n) O' I1 `7 YF  栏选。
/ ^# E+ m7 _7 ], Q3 ?+ n) rI  隐含窗口选择(在执行 PICKFIRST 期间选择的对象)。
/ X2 ^% e, c" F; T" rL  添加到数据库的最后一个可见对象。
% e& H: o3 ^" C0 |" y2 F) {- C0 D, CP  最后一个创建的选择集。
- W/ ]& y) l. V" K* j6 }W  窗口选择。% Y/ }* z4 H2 F, {% a  }
WP  圈围(指定多边形内的所有对象)。
) A* v  I/ E0 D/ X8 O2 Q" w( p* L& EX  整个数据库。如果指定了 X 选择方法,而又没有提供 filter-list 参数,则 ssget 选择数据库中的所有图元,包括关闭、冻结图层中的图元和可见屏幕外的图元。4 s. v; E2 t7 W
:E  光标的对象选择拾取框中的所有对象。2 x3 `/ g+ f. P2 I& Y
:N  在执行 ssget 操作的过程中,为选定图元调用 ssnamex 获得容器块和转换矩阵的附加信息。只有通过窗口、窗交点拾取等图形选择方法选定的图元,这一附加信息才可以使用。
2 n- K$ b8 E. ?8 G/ s1 c1 @与其他对象选择方法不同,:N 可能会返回选择集中的多个同名图元。例如,如果用户选择了一个复杂图元(如 BlockReference、PolygonMesh 或老式多段线)的子图元,那么 ssget 将查看该子图元是否已被选中。不过,ssget 实际上会将主图元(如 BlockReference 和 PolygonMesh)添加到选择集中。这样就会在选择集中出现多个同名图元,而 ssnamex 获得的每个图元的子图元信息各不相同。  L( _+ V  n' N3 ~
:S   仅允许单一选择集。

评分

参与人数 1三维币 +8 收起 理由
★新手★ + 8 技术讨论

查看全部评分

 楼主| 发表于 2007-2-28 08:16:50 | 显示全部楼层 来自: 中国辽宁大连
谢谢2楼的细心帮助。* N4 t9 g& d  S6 \  L/ h$ }$ b
但按上面的改法问题仍然存在。我试了一下发现是这条语句出了问题。
. e- E/ \+ `( Z(setq b (ssget :E '((0 . "lwpolyline") (8 . "0"))))
* [% _" D1 k. H' I7 o& W: ~& T改成这个后就没事了。
: f& d7 J6 E, f(setq b (ssget :E ))5 m4 z# a+ Q. R  [/ E5 A
但这样就少了筛选的功能。7 a- K! D. f  `) d* e8 s9 w! K
苦恼。希望再能帮着看看。谢了
发表于 2007-2-28 08:34:19 | 显示全部楼层 来自: 中国吉林吉林市
仔细看一下,没问题的。) ]7 |! ]' Q/ T+ G& e& d2 U( T( A) m2 p
  (setq b (ssget ":E" '((0 . "lwpolyline") (8 . "0"))))3 o; k0 C" H+ W8 a  Y: k8 d

/ p  a* m8 F% ]7 g你的语句里 :e 没有引号。
发表于 2007-2-28 08:45:58 | 显示全部楼层 来自: 中国台湾
(defun c:tj (/ b c page)6 X& U9 \. K" H* z  e4 e
  (graphscr)
( ]: E& x: m4 J7 l# f  (princ "请选择要统计的图纸")# r' ]  ?  ~& h2 ^9 R& V  M% y
  (setq b (ssget ":E" '((0 . "LWPOLYLINE") (8 . "0"))))
" V% H5 y4 r* X5 T4 u: P$ m  (cond
; W9 L. {2 n. W( _" M& Y3 x; Q   ((null b) (princ "\n未选中!? ...")); b& f; ~2 e2 l8 d& z3 N: j, X6 O
   (T6 Y: @3 t' \0 K/ Z& q+ h
    (setq page (sslength b))% y5 p0 H6 j% _- V: |; `2 a. C
    ;; (setq c (rtos page 2 3))
4 [) B% A" F  d    ;; (prin1 c), D& u4 l/ ]; a9 a+ e
    (princ "\n图纸 ==> "). M/ m: _: p& r4 f9 s: B
    (princ page)/ T0 W# c, r2 I& r7 p
  ))' {0 @/ F7 t4 K1 |! o4 P2 v
  (princ)" ?2 m2 N6 _' f% x
)
 楼主| 发表于 2007-2-28 08:56:07 | 显示全部楼层 来自: 中国辽宁大连
弄明白了。确实是我没看清楚。谢谢了。也谢谢五楼。我新手。以后常讨论。
发表回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Licensed Copyright © 2016-2020 http://www.3dportal.cn/ All Rights Reserved 京 ICP备13008828号

小黑屋|手机版|Archiver|三维网 ( 京ICP备2023026364号-1 )

快速回复 返回顶部 返回列表