Problem about specifying truecolor cData for a patch object

Hi all,
I'm having trouble with coloring a patch object using cData. My patch object is a triangulated polyhedron, so size(ZData)=[3,12]. When I'm trying to color each face with truecolor, I'm setting size(CData)=[1,12,3] because [1,12] is the dimension of all triangular faces of the polyhedron and 3 is for RGB. However, MATLAB seems to interpret it as colormap indices so I always end up having an ugly blue polyhedron. My guess is MATLAB is misinterpreting the color information because all faces of the patch have 3 vertices, which coincide with the 3 elements for RGB. Is there a way to force MATLAB to interpret cData as truecolor? Or, am I using a wrong dimension of cData for my purpose?
Thanks a lot!
Niko

3 件のコメント

Walter Roberson
Walter Roberson 2013 年 12 月 17 日
what is the datatype of your cdata, and what min and max values have you used?
Niko
Niko 2013 年 12 月 18 日
編集済み: Niko 2013 年 12 月 18 日
It's a 1*12*3 numeric array of doubles in the range of [0,1] (e.g. I tried cData=rand(1,12,3)). When I tried get(handle,'FaceColor') it returned a 12-element cell array with each element being a 1*3 numeric array. Does it mean that I should provide cData as a cell array? (It gives an error when I try transferring a cell array directly to facecolor.)
Walter Roberson
Walter Roberson 2013 年 12 月 18 日
A 12-element cell array as a result suggests that your "handle" might be a vector of handles.

サインインしてコメントする。

回答 (0 件)

カテゴリ

質問済み:

2013 年 12 月 16 日

コメント済み:

2013 年 12 月 18 日

Community Treasure Hunt

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

Start Hunting!

Translated by