How to choose/change an isovalue
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I have a script plotting eigenvectors using isosurface but I want to change the level that they are plotted on. As I have it now, it won't plot anything unless the isovalue is 0 (or if the temp array is flipped, then the isovalue must be n). How do I change this so that I can plot the vectors on different levels based on the content of the vector?
n = 15;
G = numgrid3d(n);
A = delsq3d(G);
m = n - 2;
p = m^3;
[V,D] = eigs(A,p);
vector = V(:,p-7);
vector = reshape(vector, [m,m,m]);
temp = (n/m:n/m:n);
x = zeros(m,m,m);
for i = 1:m
for j = 1:m
x(:,i,j) = temp(i);
end
end
y = zeros(m,m,m);
for i = 1:m
for j = 1:m
y(i,:,j) = temp(i);
end
end
z = zeros(m,m,m);
for i = 1:m
for j = 1:m
z(:,:,i) = temp(i);
end
end
figure(1)
plot = patch(isosurface(x,y,z,vector,0));
isonormals(x,y,z,vector,plot)
2 Kommentare
Antworten (0)
Siehe auch
Kategorien
Mehr zu Polygons finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!