shantonglt 发表于 2014-9-1 10:00:03

指定图层内的数字按顺序查找怎么写。

某个指定图层,定义为“排序”图层,内写有文字 1、2、3、4等顺序数字。想写一语句,按顺序找出数字1、2、3、4等所在的坐标,该怎么写。(setq ss (ssget "x" '((1 . "1")(8. "排序"))))
文字内容为1时可以找到,当把1改为变量,提示语法错误。

Andyhon 发表于 2014-9-1 11:30:14

Try
;; Var ==> 1 2 3 4 #
(setq ss (ssget "x" (List (cons 1Var) '(8. "排序"))))

shantonglt 发表于 2014-9-2 09:36:45

Andyhon 发表于 2014-9-1 11:30 static/image/common/back.gif
Try
;; Var ==> 1 2 3 4 #
(setq ss (ssget "x" (List (cons 1Var) '(8. "排序"))))

(cons 1Var) 结果是 (1 . 1) 并不是(1 . "1") 好像不好用的。

Andyhon 发表于 2014-9-2 10:16:12

...内写有文字 1、2、3、4...

文字是--> "1" ...
>> Updated 2012 0104 by E_Shine .....
Command: (setq var "2")
"2"
Command: (cons 1 var)
(1 . "2")

shantonglt 发表于 2014-9-2 11:52:37

Andyhon 发表于 2014-9-2 10:16 static/image/common/back.gif
...内写有文字 1、2、3、4...

文字是--> "1" ...


如果把顺序数字设为变量,好像还是不行。引号内不是数字,是变量
(setq n 2)
(setq var "n")
(cons 1 var)
结果 (1 . "n")

Andyhon 发表于 2014-9-2 12:02:08

您把问题整理好,举例详述
又或先把 LISP 的基本语法再研读过,不然真不知从何讲起...

shantonglt 发表于 2014-9-2 16:58:56

问题详细描述如附件。

Andyhon 发表于 2014-9-2 20:40:47

(setq ss (ssget "x" (List (cons 1"#") '(8. "排序"))))
即得 如样图之 包含了序号 1 - 6 的选集
依院长之点评亦得

shantonglt 发表于 2014-9-3 09:24:04

Andyhon 发表于 2014-9-2 20:40 static/image/common/back.gif
(setq ss (ssget "x" (List (cons 1"#") '(8. "排序"))))
即得 如样图之 包含了序号 1 - 6 的选集
依 ...

非常谢谢。我试了一下,上面这个语句可以选择0-9之内的选择集,大于10的无法选到。不过还是要感谢热心帮助。
页: [1]
查看完整版本: 指定图层内的数字按顺序查找怎么写。