isonormals
Calcula as normais de uma isosuperfície a partir do gradiente dos dados do volume.
Categoria: Graphics > 2-D and 3-D Plots
Sintaxe
n = isonormals(X, Y, Z, V, verts)
Retorna as normais nos vértices verts usando o gradiente de V.
n = isonormals(V, verts)
Usa a grade 1:n em cada direção.
isonormals(___, p)
Define as normais dos vértices do patch p.
Descrição
Iluminar uma superfície exige normais. As normais calculadas a partir do gradiente dos dados são mais suaves e mais fiéis do que as derivadas dos triângulos, então uma isosuperfície iluminada parece arredondada, e não facetada.
Argumentos de entrada
X, Y, Z, V- Grade e dados escalares do volume.
verts- Matriz
n-por-3 de vértices.
Argumentos de saída
n- Matriz
n-por-3 de vetores normais unitários, um por vértice.
Exemplo
Normais de uma esfera
[x, y, z] = meshgrid(-1:0.5:1);
v = x.^2 + y.^2 + z.^2;
fv = isosurface(x, y, z, v, 0.5);
n = isonormals(x, y, z, v, fv.vertices);
size(n)
norm(n(1,:))
Saída
ans = 1×2
74 3
ans = 1.1358