Small Fish 发表于 2022-7-6 14:36:33

在ru上生成变量

如果不知道要创建多少变量,是否可以创建变量?
 
例如,如果我有4行圆,我选择了所有的圆
我可以将圆形行总面积的变量分配给“Row1Area”吗
“Row2Area”“Row3Area”“Row4Area”。
下面的代码将给出所选圆形行的总面积
结果显示在一个文本屏幕上-有多少行没有问题。
-但是可以将这些值设置为变量吗?
 
如果你能帮忙的话,非常感谢
 
要使用代码,请绘制一行圆形,然后在中间画一条垂直线
 

Freerefill 发表于 2022-7-6 14:43:51

我并不是百分之百肯定你得到了什么,但我想你要问的是,如果你不知道会有多少变量,有没有可能把一些数据分配给一些变量?
 
我脑海中浮现的第一件事是使用列表。。不完全是变量,但如果键入:
 
在命令行中,您将得到如下结果:
 
我认为这就是所谓的“点对”。
 
使用这种方法和循环,您可以构建一个充满点对的列表,然后随时使用ASSOC检索您想要的列表。我相信许多编程语言都能解决“我不知道需要多少变量!”用这样的方法。
 
我希望这能有所帮助。^

wizman 发表于 2022-7-6 14:50:08

还有另一种方式:
 
您可以使用setq将任何值赋给一个变量
 
 
 
但如果在循环中使用set,则可以将任何值赋给变化/动态变量
 

Small Fish 发表于 2022-7-6 14:52:09

谢谢Wizman
它可以工作,但这是我以前的-它打印到文本屏幕-除非我误解了。如何将这些值分配给变量?

CAB 发表于 2022-7-6 14:57:21

创建了10个新变量!
变量名为Row1Area到Row10Area

Lee Mac 发表于 2022-7-6 15:03:54

 
Set计算变量名及其设置的值。-因此,您可以传递一个串联字符串,并将其用作Wizman所示的变量。

wizman 发表于 2022-7-6 15:08:17

设置一开始可能会让人困惑。
 
它不仅像cab所说的那样打印到屏幕上,它还为您创建了10个变量。
 
为了避免像这样使用多个SETQ:
 
 
set可以用于动态生成任意数量的变量,具体取决于需要多少个变量。
李解释了它的原理。
 
 
这将根据选择集“mysset”的长度创建任意数量的变量

Lee Mac 发表于 2022-7-6 15:12:22

正在使用的另一个示例:
 
http://www.cadtutor.net/forum/showpost.php?p=227224&postcount=5

wizman 发表于 2022-7-6 15:14:04

感谢另一个集合lee的示例,虽然它不是即时变量,但您在这种情况下使用了集合,因为您将其与mapcar一起使用,而您无法执行mapcar的setq。

Lee Mac 发表于 2022-7-6 15:19:04

 
是的,这说明了我们为什么要使用set
页: [1] 2
查看完整版本: 在ru上生成变量