"patch" command error
19 次查看(过去 30 天)
显示 更早的评论
mac -OS
MATLAB version-2018a
I have two matrices one with vertices-(280×3) and the other one with faces-(556×3) .
Using patch command as follows
P=patch('Faces',f11,'Vertices',k1); %%%%%f11= face matrix and k1=vertex matrix.
set(P,'FaceColor','b','FaceAlpha',0.5);
set(P,'EdgeColor','k','LineWidth',2);
It gives the following error
Error using patch
Value must be of numeric type and greater than 1
Attached are the two files containing the matrices.
Any suggestions on how to eliminate this problem
Thanks.
0 个评论
采纳的回答
Rik
2019-5-17
I suspect you generated the vertex IDs in a programming language that is zero-indexed, instead of one-indexed. If that is the case you can probably fix the issue like this:
P=patch('Faces',1+f11,'Vertices',k1); %%%%%f11= face matrix and k1=vertex matrix.
set(P,'FaceColor','b','FaceAlpha',0.5);
set(P,'EdgeColor','k','LineWidth',2);
2 个评论
Rik
2019-5-18
You're welcome.
I assumed they weren't generated by Matlab, and most other programming languages are zero indexed. So it was an educated guess. And generally the first few faces will contain the first vertex, but in the txt there were a few zeros where I expected ones.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Polygons 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!