明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2224|回复: 5

求助ssget方面的问题,

[复制链接]
发表于 2003-7-13 22:29:00 | 显示全部楼层 |阅读模式
我想编一个工具,计算一个表格里的数字,
用户选择上一行的数字1,我把数字加入选择集,求出其坐标,
已知数字1和数字2的y坐标差7,请问如何把数字2加入到选择集中,
我试过很多方法都不行,请高手指教。
见图 。

本帖子中包含更多资源

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

x
发表于 2003-7-13 22:59:00 | 显示全部楼层
表格里面的数字(-300Χ12)是不是字符串呀。是的话把它整体当成一个字符串就可以了,再作一下判断。这样就可以了
(defun c:test()
(setq #F "")
(while (or(= #F "T")(= #F ""))
(princ "\n请选择要加入的数字")
(setq SS (ssget '((0 . "text"))))
(if (not (member
           (setq TMP (cdr (assoc 1 (entget (ssname SS 0)))))

          t_list
         )
    )
  (setq t_list (append t_list (list TMP)))
)
(princ "\n继续选择吗?(Y or N)<Y>")
(setq #F (strcase (getstring)))
)
)
 楼主| 发表于 2003-7-14 23:37:00 | 显示全部楼层
我的意思是,我要自动把下面一行的数字加入到选择集中,相当于做一个循环,就不要用户选取了。
就是说,当用户选取第一行的数字以后,我怎么能够自动把第二行数字加入选择集,
是字符串。
请指教!!
发表于 2003-7-15 17:30:00 | 显示全部楼层

回复

你通过数字1知道了数字2的坐标范围,可以这样实现:
(command "select" "c" p1 p2 "")
建立一个选择集,然后判断是否选中了数字2,是则将其加入选择数字1时的选择集.
发表于 2003-7-15 23:33:00 | 显示全部楼层
用这个试试,如果不行把(+ 5 (car p1)) 里面的数值5改小或改大试试,再不行就把文件传上来看看。
(defun c:test ()
  (setq SS (ssget '((0 . "text"))))
  (setq p1 (cdr (assoc 10 (entget (ssname ss 0)))))
  (setq TMP (cdr (assoc 1 (entget (ssname SS 0)))))
  (setq t_list (append t_list (list TMP)))
  (setq pt2 (list (+ 5 (car p1)) (- (cadr p1) 7) (caddr p1)))
  (setq #F nil)
  (while (/= #F T)
    (if        (= (ssget pt2) nil)
      (setq #F T)
    )
    (if        (/= (ssget pt2) nil)
      (progn
        (setq ss (ssget pt2))
        (setq p1 (cdr (assoc 10 (entget (ssname ss 0)))))
        (setq pt2 (list (+ 5 (car p1)) (- (cadr p1) 7) (caddr p1)))
        (setq TMP (cdr (assoc 1 (entget (ssname SS 0)))))
        (setq t_list (append t_list (list TMP)))
      )
    )
   )
  (princ t_list)
  (princ "\n完成数据的收集")
  (princ)  
)

评分

参与人数 1金钱 +6 贡献 +3 激情 +5 收起 理由
meflying + 6 + 3 + 5 【好评】好文章

查看全部评分

 楼主| 发表于 2003-7-18 23:33:00 | 显示全部楼层
感谢两位大侠的帮助,已经解决了,虽然还有点小毛病,但应该可以搞定。
谢谢!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-26 19:50 , Processed in 0.181376 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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