aloy 发表于 2022-7-5 23:09:11

ssget函数

大家好,
我有一个变量“ptlist”,表示下面例程中引用的列表:
 
(ssget“_WP”'((0 1)(4 2)(6 4))'((0。“弧”)(40.1.0)))
如何在例程中给出变量而不是列表?。
提前感谢。
芦荟

mostafa badran 发表于 2022-7-5 23:16:17

也许这有帮助。

aloy 发表于 2022-7-5 23:19:54

莫斯塔法,
似乎给出的链接并没有解释我如何逐个提取点并提供或给出整个列表。我将进一步解释。我的列表是以下内容的子列表,通过随机点击屏幕生成。我想给出点p1,p2,p3。。。。,不要手动单独引用:
 
(((10.4966 10.8902 0.0) (14.6999 8.8122 0.0) (19.9433 11.1932 0.0) (19.9433
15.9985 0.0) (14.9599 17.3839 0.0) (11.6666 15.9985 0.0)))
 
有办法吗?还是不可能?。
当做

Tharwat 发表于 2022-7-5 23:26:48

 
是的。
 

(setq i 0
   l '(((10.4966 10.8902 0.0)
          (14.6999 8.8122 0.0)
          (19.9433 11.1932 0.0)
          (19.9433 15.9985 0.0)
          (14.9599 17.3839 0.0)
          (11.6666 15.9985 0.0)
         )
      )
)
(foreach x (car l)
(set (read (strcat "p" (itoa (setq i (1+ i))))) x)
)

aloy 发表于 2022-7-5 23:31:48

塔尔瓦特,
初始化i并将ptlist设置为子列表后,我将例程定义如下:
 
(setq ent(ssget“_Wp”(foreach x ptlist
(set(读取(strcat“p”(itoa(setq i(1+i \k)а)))x)
)'((0.“点”)))
 
错误消息是参数太多。

Tharwat 发表于 2022-7-5 23:32:42

既然变量ptlist应该工作,那么重写坐标的需要是什么?
 
你盲目地复制和粘贴了我之前发布的内容。

Lee Mac 发表于 2022-7-5 23:38:20

假设已为变量“ptlist”分配了坐标列表,则可以使用:
(ssget "_WP" ptlist '((0 . "ARC") (40 . 1.0)))

aloy 发表于 2022-7-5 23:42:31

实际上,以下操作没有任何模糊:
(ssget“_wp”ptlist)就像我过去用(ssget“W”w1 w2)所做的那样。
我只是想把它放在表单(ssget“_wp”ptlist”((0。“point”))中,因为我在图纸上的所有内容都是点,但它不起作用,因此我发表了文章。也许我说错了。
 
谢谢Lee Mac
很抱歉,塔瓦给你带来了困惑。

marko_ribar 发表于 2022-7-5 23:50:47


(setq ss (ssadd))
(foreach p ptlist
(setq e (ssname (ssget p '((0 . "POINT"))) 0))
(ssadd e ss)
)
(sssetfirst nil ss)

aloy 发表于 2022-7-5 23:53:37

你好,Marko,
我记得你在一年多前回复了我的帖子,它们很有帮助。我会测试一下你给了一些时间,因为我明天将旅行。到时候我会回复你的。
当做
芦荟
页: [1] 2
查看完整版本: ssget函数