-1

我正在绘制 4 个随机旋转的矩形。他们的天使似乎是随机的,但我需要他们有点不同。矩形不应彼此靠近,它们都应至少相隔 10 度。这也应该是随机的。我该如何定义这个?谢谢!

rot_angle1=randi(360); 
rot_angle2=randi(360); 
rot_angle3=randi(360); 
rot_angle4=randi(360); 
rect_array=255*ones(1,1);
t1=Screen('MakeTexture',w,rect_array);
t2=Screen('MakeTexture',w,rect_array);
t3=Screen('MakeTexture',w,rect_array);
t4=Screen('MakeTexture',w,rect_array);
t5=Screen('MakeTexture',w,rect_array);

destrect(1,:) = (ul_c + stim_array);
destrect(2,:) = (ur_c + stim_array);
destrect(3,:) = (ll_c + stim_array);
destrect(4,:) = (lr_c + stim_array);

Screen('DrawTexture',w,t2,[],destrect(1,:),rot_angle1);
Screen('DrawTexture',w,t3,[],destrect(2,:),rot_angle2);
Screen('DrawTexture',w,t4,[],destrect(3,:),rot_angle3);
Screen('DrawTexture',w,t5,[],destrect(4,:),rot_angle4);
Screen('Flip',w);
4

1 回答 1

0

而不是rot_angle1=randi(360);线,定义

rot_angle=randi(36,1,4)*10;

现在每个角度至少相隔 10 度,步长为 10 度。请注意,这并不意味着角度是唯一的。使用randi有两个旋转角度相同的机会。为了强加唯一性使用

rot_angle=randperm(36)*10;

使用rot_angle(1)代替rot_angle1等。

于 2013-06-07T20:51:34.583 回答