Esboço 3d em níveis de cinza ou de cores de uma superfície
plot3d1(x,y,z,[theta,alpha,leg,flag,ebox]) plot3d1(xf,yf,zf,[theta,alpha,leg,flag,ebox]) plot3d1(x,y,z,<opts_args>) plot3d1(xf,yf,zf,<opts_args>)
vetores linhas de tamanhos n1 e n2 (coordenadas dos eixos x e y). Estas coordenadas devem ser monótonas.
matriz de tamanho (n1,n2). z(i,j)
é o valor
da superfície no ponto (x(i),y(j)).
matrizes de tamanho (nf,n). Elas definem as facetas usadas
para desenhar a superfície. Há n
facetas. Cada
faceta i
é definida por um polígono com
nf
pontos. As coordenadas dos eixos x, y e z dos
pontos da i-ésima faceta são dados respectivamente por
xf(:,i)
, yf(:,i)
e
zf(:,i)
.
representa uma seqüência de declarações key1=value1,
key2=value2
,... onde key1
,
key2,...
pode ser um dos seguintes: theta, alpha
, leg, flag, ebox (ver definições abaixo).
valores reais de dados em graus, as coordenadas esféricas do ponto de observação.
string definindo os rótulos para cada eixo com @ como um separador de campos, por exemplo "X@Y@Z".
um vetor real de tamanho três.
flag=[mode,type,box]
.
um inteiro (cor da superfície).
a superfície é pintada com a cor
"mode"
; a borda da faceta é
desenhada com o estilo e linha e cor correntes.
uma malha da superfície é desenhada.
a superfície é pintada com a cor
"-mode"
; a borda da faceta não é
desenhada.
Note que o tratamento de cor da superfície pode
ser feito utilizando-se as opções
color_mode
e
color_flag
através das propriedades
da entidade Surface (ver surface_properties).
um inteiro (tipo de escala).
o esboço é feito utilizando-se a escala 3d
corrente (definida por uma chamada anterior a
param3d
, plot3d
,
contour
ou
plot3d1
).
re-escala automaticamente caixas 3d com relação de
aspecto extrema, as fronteiras são especificadas pelo
valor do argumento opcional
ebox
.
re-escala automaticamente caixas 3d com relação de aspecto extrema, as fronteiras são computadas utilizando-se dados fornecidos.
fronteiras 3d isométricas com fronteiras da caixa
dadas por ebox
, de modo semelhante a
type=1
.
fronteiras 3d isométricas derivadas dos dados, de
modo semelhante a type=2
.
fronteiras 3d isométricas expandidas com
fronteiras fornecidas por ebox
, de
modo semelhante a type=1
.
fronteiras 3d isométricas expandidas derivadas
dos dados, de modo semelhante a
type=2
.
Note que as fronteiras dos eixos podem ser customizadas através das propriedades da entidade Axes (ver axes_properties).
um inteiro (moldura ao redor do esboço).
nada é desenhado ao redor do esboço.
não implementado (é como box=0).
apenas os eixos atrás da superfície são desenhados.
uma caixa cercando a superfície é desenhada e legendas são adicionadas.
uma caixa cercando a superfície é desenhada e legendas e eixos são adicionados.
Note que o aspecto dos eixos pode ser customizado através das propriedades da entidade Axes (ver axes_properties).
especifica as fronteiras do esboço através do vetor
[xmin,xmax,ymin,ymax,zmin,zmax]
. Este argumento é
utilizado junto com type
em
flag
: é ajustado para 1
,
3
ou 5
(volte acima para ver o
comportamento correspondente). Se flag
estiver
faltando, ebox
não é levado em conta.
Note que, quando especificado, o argumento
ebox
age no campo data_bounds
que também pode ser ajustado através das propriedades da entidade de
eixos (ver axes_properties).
plot3d1
esboça uma superfície com cores
dependendo do nível z da superfície. Esta função de esboço especial também
pode ser habilitada ajustando color_flag=1
após um
plot3d
(ver surface_properties)
Entre com o comando plot3d1()
para visualizar uma
demonstração.
// mesmo esboço utilizando facetas computadas por genfac3d t=[0:0.3:2*%pi]'; z=sin(t)*cos(t'); [xx,yy,zz]=genfac3d(t,t,z); plot3d1(xx,yy,zz) | ![]() | ![]() |
// esboços múltiplos t=[0:0.3:2*%pi]'; z=sin(t)*cos(t'); [xx,yy,zz]=genfac3d(t,t,z); plot3d1([xx xx],[yy yy],[zz 4+zz]) | ![]() | ![]() |
// esboço simples com ponto de vista e legendas plot3d1(1:10,1:20,10*rand(10,20),35,45,"X@Y@Z",[2,2,3]) | ![]() | ![]() |
// mesmo esboço sem grid plot3d1(1:10,1:20,10*rand(10,20),35,45,"X@Y@Z",[-2,2,3]) | ![]() | ![]() |
// mesmo esboço sem grid deff("[x,y,z]=sph(alp,tet)",["x=r*cos(alp).*cos(tet)+orig(1)*ones(tet)";.. "y=r*cos(alp).*sin(tet)+orig(2)*ones(tet)";.. "z=r*sin(alp)+orig(3)*ones(tet)"]); r=1; orig=[0 0 0]; [xx,yy,zz]=eval3dp(sph,linspace(-%pi/2,%pi/2,40),linspace(0,%pi*2,20)); plot3d(xx,yy,zz) e=gce(); e.color_flag=1; scf(2); plot3d1(xx,yy,zz) // os dois gráficos são similares | ![]() | ![]() |