明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 582|回复: 5

[已解答] 急死了,ssget函数,找不到问题所在

[复制链接]
发表于 2021-7-30 22:24 | 显示全部楼层 |阅读模式
本帖最后由 highflybir 于 2021-7-31 16:49 编辑
  1. (defun getlabel (pt / i pt1 pt2 ss_l x y)
  2.   (setq x (car pt)
  3.     y (last pt)
  4.     pt1 (list (+ 100 x) (- y 100))
  5.     pt2 (list (- x 100) (+ y 100))
  6.     ss_l (ssget "c" pt1 pt2 '((0 . "insert") (66 . 1))) i 0
  7.   )
  8. )
如上述代码,反选指定点上下左右100单位的属性块。如果在COMMAND命令行中执行:(ssget ss_l (ssget "C" (getpoint) (getpoint) '((0 . "insert") (66 . 1)))) ,可以正常选取块,但通过调用getlabel函数时,当执行到ssget时,不正常,有时候可以选取,大部分时间不能选取,这种情况,可能是因为什么原因,与系统变量有关吗?还是其他什么原因,谢谢。
发表于 2021-7-30 22:43 来自手机 | 显示全部楼层
1. 缩放一下视口,屏幕外的get不到
发表于 2021-7-30 22:45 来自手机 | 显示全部楼层
2.  (ssget "c" pt1 pt2 (list '((0 . "insert") (cons 66 1))))
 楼主| 发表于 2021-7-30 22:52 | 显示全部楼层
  1. (defun getlabel (pt / filter pt1 pt2 ss_l x y)
  2.   (setq        x     (car pt)
  3.                 y     (last pt)
  4.                 pt1   (list (- x 100) (- y 100))
  5.                 pt2   (list (+ x 100) (+ y 100))
  6.                 filter (list '(-4 . "<AND") '(0 . "INSERT") '(66 . 1) '(-4 . ">,>,*") (cons 10 pt1) '(-4 . "<,<,*") (cons 10 pt2) '(-4 . "AND>"))
  7.                 ss_l (ssget "x" filter)
  8.         )
  9. )

谢谢大家,找到方法了

点评

过几天就发一个新帖,《急死了,有时候能选到有时候不能选到》  发表于 2021-7-31 17:58
别这样用,有隐患的。缩放以后ssget最靠谱  发表于 2021-7-31 17:09
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-5-7 08:40 , Processed in 0.456931 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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