plot3d1
Esboço 3d em níveis de cinza ou de cores de uma superfície
Seqüência de Chamamento
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>)
Parâmetros
- x,y
vetores linhas de tamanhos n1 e n2 (coordenadas dos eixos x e y). Estas coordenadas devem ser monótonas.
- z
matriz de tamanho (n1,n2).
z(i,j)
é o valor da superfície no ponto (x(i),y(j)).- xf,yf,zf
matrizes de tamanho (nf,n). Elas definem as facetas usadas para desenhar a superfície. Há
n
facetas. Cada facetai
é definida por um polígono comnf
pontos. As coordenadas dos eixos x, y e z dos pontos da i-ésima faceta são dados respectivamente porxf(:,i)
,yf(:,i)
ezf(:,i)
.- <opt_args>
representa uma seqüência de declarações
key1=value1, key2=value2
,... ondekey1
,key2,...
pode ser um dos seguintes: theta, alpha , leg, flag, ebox (ver definições abaixo).- theta, alpha
valores reais de dados em graus, as coordenadas esféricas do ponto de observação.
- leg
string definindo os rótulos para cada eixo com @ como um separador de campos, por exemplo "X@Y@Z".
- flag
um vetor real de tamanho três.
flag=[mode,type,box]
.- mode
um inteiro (cor da superfície).
- mode>0
a superfície é pintada com a cor
"mode"
; a borda da faceta é desenhada com o estilo e linha e cor correntes.- mode=0:
uma malha da superfície é desenhada.
- mode<0:
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
ecolor_flag
através das propriedades da entidade Surface (ver surface_properties).
- type
um inteiro (tipo de escala).
- type=0:
o esboço é feito utilizando-se a escala 3d corrente (definida por uma chamada anterior a
param3d
,plot3d
,contour
ouplot3d1
).- type=1:
re-escala automaticamente caixas 3d com relação de aspecto extrema, as fronteiras são especificadas pelo valor do argumento opcional
ebox
.- type=2:
re-escala automaticamente caixas 3d com relação de aspecto extrema, as fronteiras são computadas utilizando-se dados fornecidos.
- type=3:
fronteiras 3d isométricas com fronteiras da caixa dadas por
ebox
, de modo semelhante atype=1
.- type=4:
fronteiras 3d isométricas derivadas dos dados, de modo semelhante a
type=2
.- type=5:
fronteiras 3d isométricas expandidas com fronteiras fornecidas por
ebox
, de modo semelhante atype=1
.- type=6:
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).
- box
um inteiro (moldura ao redor do esboço).
- box=0:
nada é desenhado ao redor do esboço.
- box=1:
não implementado (é como box=0).
- box=2:
apenas os eixos atrás da superfície são desenhados.
- box=3:
uma caixa cercando a superfície é desenhada e legendas são adicionadas.
- box=4:
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).
- ebox
especifica as fronteiras do esboço através do vetor
[xmin,xmax,ymin,ymax,zmin,zmax]
. Este argumento é utilizado junto comtype
emflag
: é ajustado para1
,3
ou5
(volte acima para ver o comportamento correspondente). Seflag
estiver faltando,ebox
não é levado em conta.Note que, quando especificado, o argumento
ebox
age no campodata_bounds
que também pode ser ajustado através das propriedades da entidade de eixos (ver axes_properties).
Descrição
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.
Exemplos
// 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
Ver Também
Report an issue | ||
<< plot3d | 3d_plot | plot3d2 >> |