Array Indexing through a random plane or random line

1 view (last 30 days)
Hi,
I have a 3D array M, and I wanted to get the intersection points of M and a random line or a random plane. Can anyone give some advice?
Thanks
Jack
  2 Comments
Walter Roberson
Walter Roberson on 17 Nov 2021
if you happen to be doing this for drawing purposes, see slice()
Yulai Zhang
Yulai Zhang on 17 Nov 2021
Thanks Walter. This is very helpful. I can see that the data is extracted and displayed. How can I access the data?

Sign in to comment.

Accepted Answer

KSSV
KSSV on 18 Nov 2021
You can save the Slice into a variable which be of a class matlab.graphics. From this variable you can extract what you want.
% EXample
[X,Y,Z] = meshgrid(-2:.2:2);
V = X.*exp(-X.^2-Y.^2-Z.^2);
xslice = [-1.2,0.8,2];
yslice = [];
zslice = 0;
s = slice(X,Y,Z,V,xslice,yslice,zslice);
s
x = S(1).XData ;
y = S(1).YData ;
z = S(1).ZData ;
c = S(1).cData ;

More Answers (0)

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!