index out of bounds
1 回表示 (過去 30 日間)
古いコメントを表示
hi guys, new to matlab and came across a simple problem that takes me forever to get over. please help.
if rgb(1)==1
if rgb(2)==1
if rgb(3)==1
color='white';
else
color='yellow';
end
else
if rgb(3)==1
color='magenta';
else
color='red';
end
end
else
if rgb(1)==1
if rgb(3)==1
color='cyan';
else
color='green';
end
else
if rgb(3)==1
color='blue';
else
color='invalid input';
end
end
end
so its pretty much just mix three primary colors as input and output the mixed color.. i have a hard time going through this and i don't know where i did wrong.. thanks for answering. oh and here's the error:
Attempted to access rgb(3); index out of bounds because numel(rgb)=1.
Error in rgb_color (line 26) if rgb(3)==1
0 件のコメント
採用された回答
Ilham Hardy
2015 年 10 月 30 日
編集済み: Ilham Hardy
2015 年 10 月 30 日
What is your rgb value?
The error message is very clear. it stated that you tried to access the third index of rgb, whilst rgb only contains one value ( numel(rgb)=1).
5 件のコメント
Walter Roberson
2015 年 10 月 30 日
How are you invoking your code? I can see your file is named rgb_color.m but how are you starting it running?
その他の回答 (1 件)
Stephen23
2015 年 10 月 30 日
編集済み: Stephen23
2015 年 10 月 30 日
If you want to look up colornames then use my FEX submission colornames:
It is very simple to use:
>> colornames('html',[0.4,0.1,0.6])
ans = 'Purple'
>> colornames('html',[0.8,0.9,0.3])
ans = 'Yellow'
>> colornames('html',[1,1,1])
ans = 'White'
参考
カテゴリ
Help Center および File Exchange で Loops and Conditional Statements についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!