Loading data from file and plotting curvature

Hello
I have .m file that has the following few initial lines:
surface = struct('vertices', [3029.11 945.424 11.164; ...
3040.28 940.444 12.474; ...
3028.28 937.903 18.1484; ...
])
I am trying to get the values of the vertices mentioned in the matlab file in an array or something that will later on help me plot the patch curvature. How can I load the data and get the plot curvature of the surface?

Answers (1)

Edit the .m so that it uses a different variable name, not "surface", as surface() is an important graphics call that you might need to use.
Then run the .m file, and then access the "vertices" field of the variable that results.
For example,
volume_surface = struct('vertices', [3029.11 945.424 11.164; ...
3040.28 940.444 12.474; ...
3028.28 937.903 18.1484; ...
]);
v = volume_surface.vertices;
%https://www.mathworks.com/matlabcentral/fileexchange/11168-surface-curvature
[K,H,P1,P2] = surfature(v(:,1), v(:,2), v(:,3))

3 Comments

AB
AB on 23 Aug 2016
Edited: Walter Roberson on 23 Aug 2016
Hello,
When I try to run the command of surfacture, it gives me an error of too many output arguments. Can you please have a look at it?
I can also see other surfature routines in the File Exchange.
That routine turns out to need a 2D array of X, Y, and Z, which you do not have. See instead
You can pass the surface variable from your file directly into patchcurvature()

Sign in to comment.

Asked:

AB
on 22 Aug 2016

Commented:

on 23 Aug 2016

Community Treasure Hunt

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

Start Hunting!