File: param3d1.xml

package info (click to toggle)
scilab 5.2.2-9
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 334,832 kB
  • ctags: 52,586
  • sloc: xml: 526,945; ansic: 223,590; fortran: 163,080; java: 56,934; cpp: 33,840; tcl: 27,936; sh: 20,397; makefile: 9,908; ml: 9,451; perl: 1,323; cs: 614; lisp: 30
file content (320 lines) | stat: -rw-r--r-- 11,689 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
<?xml version="1.0" encoding="UTF-8"?>
<!--
 * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
 * Copyright (C) ENPC - Jean-Philippe Chancelier
 * 
 * This file must be used under the terms of the CeCILL.
 * This source file is licensed as described in the file COPYING, which
 * you should have received as part of this distribution.  The terms
 * are also available at    
 * http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
 *
 -->
<refentry version="5.0-subset Scilab" xml:id="param3d1" xml:lang="en"
          xmlns="http://docbook.org/ns/docbook"
          xmlns:xlink="http://www.w3.org/1999/xlink"
          xmlns:svg="http://www.w3.org/2000/svg"
          xmlns:ns5="http://www.w3.org/1999/xhtml"
          xmlns:mml="http://www.w3.org/1998/Math/MathML"
          xmlns:db="http://docbook.org/ns/docbook">
  <info>
    <pubdate>$LastChangedDate: 2008-03-26 09:50:39 +0100 (Wed, 26 Mar 2008)
    $</pubdate>
  </info>

  <refnamediv>
    <refname>param3d1</refname>

    <refpurpose>esboço 3d de curvas parametrizadas</refpurpose>
  </refnamediv>

  <refsynopsisdiv>
    <title>Seqüência de Chamamento</title>

    <synopsis>param3d1(x,y,z,[theta,alpha,leg,flag,ebox])
param3d1(x,y,list(z,colors),[theta,alpha,leg,flag,ebox])</synopsis>
  </refsynopsisdiv>

  <refsection>
    <title>Parâmetros</title>

    <variablelist>
      <varlistentry>
        <term>x,y,z</term>

        <listitem>
          <para>matrizes de mesmo tamanho (nl,nc). </para>

          <para>Cada coluna i das matrizes corresponde às coordenadas da
          i-ésima curva. Você pode fornecer uma cor específica para cada curva
          utilizando <literal>list(z,colors)</literal> ao invés de
          <literal>z</literal>, onde <literal>colors</literal> é um vetor de
          tamanho <literal>nc</literal>. Se <literal>color(i)</literal> for
          negativo, a curva é esboçada utilizando-se a marca com identificador
          <literal>abs(style(i))</literal>; se <literal>style(i)</literal> for
          estritamente positivo, uma linha simples com idenficador de cor
          <literal>style(i)</literal> ou uma linha tracejada com identificador
          de tipo de tracejado <literal>style(i)</literal> é utilizada.</para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term>theta,alpha</term>

        <listitem>
          <para>valores reais fornecendo em graus as coordenadas esféricas do
          ponto de observação. <emphasis>Os valores padrões são 35 e 45
          graus.</emphasis></para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term>leg</term>

        <listitem>
          <para>string definindo rótulos para cada eixo com @ como separador
          de campo, por exemplo " X@Y@Z" . </para>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term>flag=[type,box]</term>

        <listitem>
          <para> <literal>type</literal> e <literal>box</literal> possuem o
          mesmo significado que em <literal>plot3d</literal>:</para>

          <variablelist>
            <varlistentry>
              <term>type</term>

              <listitem>
                <para>um inteiro (tipo de escala).</para>

                <variablelist>
                  <varlistentry>
                    <term>type=0</term>

                    <listitem>
                      <para>o esboço é feito utilizando-se a escala 3d
                      corrente (definida por uma chamada anterior a
                      <literal>param3d</literal>, <literal>plot3d</literal>,
                      <literal>contour</literal> ou
                      <literal>plot3d1</literal>).</para>
                    </listitem>
                  </varlistentry>

                  <varlistentry>
                    <term>type=1</term>

                    <listitem>
                      <para>re-escala automaticamente caixas 3d com relação de
                      aspecto extrema, as fronteiras são especificadas pelo
                      valor do argumento opcional
                      <literal>ebox</literal>.</para>
                    </listitem>
                  </varlistentry>

                  <varlistentry>
                    <term>type=2</term>

                    <listitem>
                      <para> re-escala automaticamente caixas 3d com relação
                      de aspecto extrema, as fronteiras são computadas
                      utilizando-se dados fornecidos. <emphasis>Este é o valor
                      padrão</emphasis></para>
                    </listitem>
                  </varlistentry>

                  <varlistentry>
                    <term>type=3</term>

                    <listitem>
                      <para> fronteiras 3d isométricas com fronteiras da caixa
                      dadas por <literal>ebox</literal>, de modo semelhante a
                      <literal>type=1</literal>.</para>
                    </listitem>
                  </varlistentry>

                  <varlistentry>
                    <term>type=4</term>

                    <listitem>
                      <para> fronteiras 3d isométricas derivadas dos dados, de
                      modo semelhante a<literal> type=2</literal>.</para>
                    </listitem>
                  </varlistentry>

                  <varlistentry>
                    <term>type=5</term>

                    <listitem>
                      <para> fronteiras 3d isométricas expandidas com
                      fronteiras fornecidas por <literal>ebox</literal>, de
                      modo semelhante a <literal>type=1</literal>.</para>
                    </listitem>
                  </varlistentry>

                  <varlistentry>
                    <term>type=6</term>

                    <listitem>
                      <para>fronteiras 3d isométricas expandidas derivadas dos
                      dados, de modo semelhante a <literal>type=2</literal>.
                      Note que as fronteiras dos eixos podem ser customizadas
                      através das propriedades da entidade de eixos (ver <link
                      linkend="axes_properties">axes_properties</link>).</para>
                    </listitem>
                  </varlistentry>
                </variablelist>
              </listitem>
            </varlistentry>

            <varlistentry>
              <term>box</term>

              <listitem>
                <para>um inteiro (moldura ao redor do esboço).</para>

                <variablelist>
                  <varlistentry>
                    <term>box=0</term>

                    <listitem>
                      <para>nada é desenhado ao redor do esboço.</para>
                    </listitem>
                  </varlistentry>

                  <varlistentry>
                    <term>box=1</term>

                    <listitem>
                      <para>não implementado (é como box=0). </para>
                    </listitem>
                  </varlistentry>

                  <varlistentry>
                    <term>box=2</term>

                    <listitem>
                      <para> apenas os eixos atrás da superfície são
                      desenhados. </para>
                    </listitem>
                  </varlistentry>

                  <varlistentry>
                    <term>box=3</term>

                    <listitem>
                      <para>uma caixa cercando a superfície é desenhada e
                      legendas são adicionadas. </para>
                    </listitem>
                  </varlistentry>

                  <varlistentry>
                    <term>box=4</term>

                    <listitem>
                      <para>uma caixa cercando a superfície é desenhada e
                      legendas e eixos são adicionados. Note que o aspecto dos
                      eixos também pode ser customizado através das
                      propriedades da entidade Axes (ver <link
                      linkend="axes_properties">axes_properties</link>).
                      <emphasis>Este é o valor padrão.</emphasis></para>
                    </listitem>
                  </varlistentry>
                </variablelist>
              </listitem>
            </varlistentry>
          </variablelist>
        </listitem>
      </varlistentry>

      <varlistentry>
        <term>ebox</term>

        <listitem>
          <para>especifica as fronteiras do esboço através do vetor
          <literal>[xmin,xmax,ymin,ymax,zmin,zmax]</literal>. Este argumento é
          utilizado junto com <literal>type</literal> em
          <literal>flag</literal> se este estiver ajustado para
          <literal>1</literal>, <literal>3</literal> ou <literal>5</literal>
          (volte acima para ver o comportamento correspondente). Se
          <literal>flag</literal> estiver faltando, <literal>ebox</literal>
          não é levado em conta. Note que, quando especificado, o argumento
          <literal>ebox</literal> age no campo <literal>data_bounds</literal>
          fque também pode ser ajustado através das propriedades da entidade
          de eixos (ver <link
          linkend="axes_properties">axes_properties</link>). O valor padrão de
          <literal>ebox</literal> é <literal>[0,1,0,1,0,1]</literal>.</para>
        </listitem>
      </varlistentry>
    </variablelist>
  </refsection>

  <refsection>
    <title>Descrição</title>

    <para><literal>param3d1</literal> usado para esboçar curvas 3d definidas
    por suas coordenadas <literal>x</literal>, <literal>y</literal> e
    <literal>z</literal>. Note que os dados também podem ser ajustados ou
    recebidos através das propriedades da entidade Surface (ver <link
    linkend="surface_properties">surface_properties</link>).</para>

    <para>Note que propriedades como <literal>rotation angles</literal>,
    <literal>colors</literal> e <literal>thickness</literal> das curvas
    esboçadas também podem ser ajustadas através das propriedades de param3d
    (ver <link linkend="param3d_properties">param3d_properties</link>).</para>

    <para>Entre com o comando <literal>param3d1()</literal> para visualizar
    uma demonstração.</para>
  </refsection>

  <refsection>
    <title>Exemplos</title>

    <programlisting role="example"><![CDATA[ 
xset('window',20) // criando janela de número 20
t=[0:0.1:5*%pi]';
param3d1([sin(t),sin(2*t)],[cos(t),cos(2*t)],..
         list([t/10,sin(t)],[3,2]),35,45,"X@Y@Z",[2,3])

xdel(20);
a=get("current_axes");//obtendo manipulador dos novos eixos criados
t=[0:0.1:5*%pi]';
param3d1([sin(t),sin(2*t)],[cos(t),cos(2*t)],[t/10,sin(t)])
a.rotation_angles=[65,75]; 
a.data_bounds=[-1,-1,-1;1,1,2]; //limites fornecidos por data_bounds
a.thickness = 2;
h=a.children //obtendo o manipulador para a entidade Param3d: um Compound composto de duas curvas
h.children(1).foreground = 3 // primeira curva
curve2 = h.children(2);
curve2.foreground = 6;
curve2.mark_style = 2;
 ]]></programlisting>
  </refsection>

  <refsection>
    <title>Ver Também</title>

    <simplelist type="inline">
      <member><link linkend="param3d">param3d</link></member>

      <member><link linkend="plot3d">plot3d</link></member>

      <member><link linkend="plot2d">plot2d</link></member>

      <member><link linkend="gca">gca</link></member>

      <member><link linkend="xdel">xdel</link></member>

      <member><link linkend="delete">delete</link></member>
    </simplelist>
  </refsection>

  <refsection>
    <title>Autor</title>

    <para>J.Ph.C.</para>
  </refsection>
</refentry>