Randomizing of an Oval Color

1 次查看(过去 30 天)
Brett
Brett 2012-11-9
How do I randomize the color of a oval?
My code:
[window, rect] = Screen('OpenWindow', screenNum, 1);
[X,Y] = RectCenter(rect);
disc1 = [X-80,Y-80,X+80,Y+80]+250;
Screen('FillOval',window,[200,200,200], disc1');
Screen('Flip',window);
I figure I need to place variable for [200,200,200], but I'm not sure how to do it.
Please help and thank you, Brett
  1 个评论
Image Analyst
Image Analyst 2012-11-10
I can't run your code. What are Screen(), screenNum, and RectCenter? I guess they must be in some toolbox that you have (and didn't list) and I don't have.

请先登录,再进行评论。

回答(1 个)

Image Analyst
Image Analyst 2012-11-10
编辑:Image Analyst 2012-11-10
Can you adapt the FAQ http://matlab.wikia.com/wiki/FAQ#How_do_I_create_a_circle.3F to create an ellipse?
EDIT: Actually I've just added a section on "How do I create an ellipse" to the FAQ: http://matlab.wikia.com/wiki/FAQ#How_do_I_create_an_ellipse.3F so that might help you.
  2 个评论
Brett
Brett 2012-11-10
I'm using Psychtoolbox. The oval isn't really the issue, the above function creates the oval, I'm just not sure how to randomize its colour. I think I need code that basically says something like:
1) randomizes a number within a parameter: RANDOMCOLOR = rand(1:4) 2) something like if RANDOMCOLOR = 1, then RBG[169,169,0] 3) insert into RANDOMCOLOUR into 'colour': "Screen('FillOval',window, [colour'], disc1');"
I'm just really knew to Matlab and programming so I just don't know how to make it happen.
Image Analyst
Image Analyst 2012-11-10
编辑:Image Analyst 2012-11-10
I don't remember seeing that toolbox here. The 'Color' property is a very common input argument in many, many functions. Try
Screen('FillOval',window, 'Color', rand(1,3), disc1');

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Image display and manipulation 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by