我想繪製一個3d對象的曲面網格的四邊形貼片..我有x,y,z
這是4Xn
其中4是四邊形的每個頂點,n是四邊形,c
這是一個3Xn RGB矩陣。當使用patch(x, y, z,c);
我得到的錯誤在matlab中使用「補丁」功能時出錯
`Error using patch`
`Size of C must match sizes of X Y [Z]`
但這個工程的x,y,z
這是3Xn
的三角面片和c
一個3XN RGB向量。請糾正我出錯的地方。
我想繪製一個3d對象的曲面網格的四邊形貼片..我有x,y,z
這是4Xn
其中4是四邊形的每個頂點,n是四邊形,c
這是一個3Xn RGB矩陣。當使用patch(x, y, z,c);
我得到的錯誤在matlab中使用「補丁」功能時出錯
`Error using patch`
`Size of C must match sizes of X Y [Z]`
但這個工程的x,y,z
這是3Xn
的三角面片和c
一個3XN RGB向量。請糾正我出錯的地方。
您不需要爲每個patch
提供一個RGB值,您需要爲每個正在繪製的頂點給出patch
值(由於數據的格式)。
cQuad=permute(repmat(cQuad,[1 1 4]),[3 2 1]);
patch(vertQuad.x,vertQuad.y,vertQuad.z,cQuad)
正常工作:
與您的數據和該行左右。我要做的就是使用repmat
重複顏色的4倍,然後才能在格式尺寸patch
喜歡使用permute
請張貼代碼使用的是(或者你可以創建仍返回誤差最小的例子)。 – Tom
嗨,這裏是鏈接到變量[Gdrive]函數是'補丁(vertQuad.x,vertQuad.y,vertQuad .Z,CQUAD);」 –
manoj
我不認爲你包含cQuad數據 – Tom