0
我一直在处理多天,但没有任何成功。在我的程序中,我定义了一个列表,我们称之为“L”,通过多次移动一个单一的几何对象,一个圆圈。所以L由manu圈组成。对象圆也是一个包含其属性的列表:center(center。#V),(height。H),radius(radius。R)等等。因此,属性半径在列表圈的第三位是一对。如果我这样做(对象属性值圆的半径)= R现在,我想要做的是创建一个新的列表,L-disorder,由与L的位置相同的圆圈组成,但每个圆圈都有不同的随机)半径。然后,我试试这个:更改方案中的对象属性值
(define L-disorder (map
(lambda(obj)
(set-cdr! (list-ref obj 3) (random:normal))
obj)
L))
我的问题是它以相同的方式改变了所有圆的半径!我想为它们提供一个不同的(随机)值。
我真的很感谢任何帮助或建议!
非常感谢Paul的快速回答!我已经尝试过,但它的工作原理是,然后我得到一个新的圆圈((center.V),(height.H),random number)),而不是旧的((center。#V),height ),(Radius.R))。我会看看如何处理。再次感谢! – Peter 2011-05-10 15:20:03
看看(随机:正常)功能。它应该评估为(Radius。R)。 无论如何,最好使用构造函数,如 (circle v h r),其中圈数为 – paul 2011-05-10 15:34:26
我知道了。那非同寻常!非常感谢! – Peter 2011-05-10 17:08:28