How can I extract a line from a surface?
7 次查看(过去 30 天)
显示 更早的评论
Hello everybody, I would like to extract a line from a surface. I already represent quite easily with the commands plot3, mesh and surf my surface, that is divided in three parts because it represents three different domains. My initial input (in attachment the file InputValues.txt)is composed by a matrix (18011*3) of Longitude, Latitude and Depth values. I would like to build a function that in input takes the position of start (A) and end of my profile (B) (xa,ya,xb,yb) and in output return the position of the corresponding z in A and B {e.g. [A,B] = myfunc(xa,ya,xb,yb)}. Finally, I would like to plot the obtained curve after cutting my surface with a vertical plane. I have already achieved this result with another software (Global Mapping Tools, very used in geophysical applications), but now I'd like to obtain the same thing in Matlab environment, of which I am quite new. Someone is familiar with these kind of problems? Do you have any suggestions, please? Thanks in advance,
Leonardo
0 个评论
回答(1 个)
Sindhuja Parimalarangan
2017-2-21
h = surf(x,y,z);
[xvalue,yvalue] = find((h.XData==xa) & (h.YData==ya));
You can model your function based on the above code.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Surface and Mesh Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!