1 <?xml version="1.0" encoding="UTF-8"?>
3 * Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
4 * Copyright (C) INRIA - Serge Steer
5 * Copyright (C) 2016, 2018 - Samuel GOUGEON
7 * Copyright (C) 2012 - 2016 - Scilab Enterprises
9 * This file is hereby licensed under the terms of the GNU GPL v2.0,
10 * pursuant to article 5.3.4 of the CeCILL v.2.1.
11 * This file was originally licensed under the terms of the CeCILL v2.1,
12 * and continues to be available under such terms.
13 * For more information, see the COPYING file which you should have received
14 * along with this program.
17 <refentry xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink"
18 xmlns:svg="http://www.w3.org/2000/svg" xmlns:mml="http://www.w3.org/1998/Math/MathML"
19 xmlns:db="http://docbook.org/ns/docbook" xmlns:scilab="http://www.scilab.org"
20 xml:lang="fr" xml:id="isoview">
22 <refname>isoview</refname>
23 <refpurpose>Règle la vue isométrique des repères graphiques
27 <title>Syntaxe</title>
31 isoview(idGraphics [,"on"|"off"])
32 isoview(xmin, xmax, ymin, ymax) // OBSOLETE. utiliser replot()
35 <refsection role="arguments">
36 <title>Paramètres</title>
39 <term>"on" | "off" | <none></term>
40 <listitem>Active, désactive ou commute la vue isométrique pour
41 les repères graphiques considérés.
46 <term>idGraphics</term>
48 Vecteur d'identifiants graphiques. Tous les repères
49 graphiques afférents sont traités. Par défaut, le repère
55 <term>xmin, xmax, ymin, ymax</term>
57 4 nombres décimaux : nouvelles bornes du repère actif.
59 Ces paramètres seront supprimés de <literal>isoview()</literal>
60 dans Scilab 6.1. SVP désormais utiliser
61 <link linkend="replot">replot</link>
62 à la suite de <function>isoview</function>.
69 <refsection role="description">
70 <title>Description</title>
72 <function>isoview</function> est utilisée pour activer ou désactiver
73 l'affichage graphique en échelles isométriques sur les axes
74 x, y, voire z, sans modifier la taille de la fenêtre graphique.
77 <literal>isoview()</literal> ou simplement <literal>isoview</literal>
78 commute la vue isométrique/normale pour le repère actif, en conservant
82 <literal>isoview("on")</literal> ou <literal>isoview on</literal>
83 active la vue isométrique pour le repère actif.
86 <literal>isoview("off")</literal> ou <literal>isoview off</literal>
87 relaxe les échelles en x, y (voire z) pour le repère actif.
90 <literal>isoview(idGraphics,..)</literal> agit sur tous les repères
91 graphiques impliqués dans le vecteur d'identifiants graphiques donné :
94 Si <varname>idGraphics(i)</varname> désigne une figure,
95 tous ses repères graphiques sont considérés.
98 Si <varname>idGraphics(i)</varname> représente un repère
99 graphique, il est modifié comme tel.
102 Si <varname>idGraphics(i)</varname> désigne un
103 sous-composant d'un repère (telle qu'une courbe polyline, un agrégat
104 compound, etc), son repère graphique parent est considéré.
109 <literal>isoview(xmin, xmax, ymin, ymax)</literal> sets the current
110 axes in isometric mode, and then sets its bounds to the given values.
112 Cette utilisation sera supprimée à partir de Scilab 6.1. Merci d'utiliser
113 <link linkend="replot">replot</link> après
114 <function>isoview</function> à la place.
118 Après l'appel à <literal>isoview(..)</literal>, le repère actif
119 reste le même, y compris lorsque plusieurs repères ont été traités.
121 <note>Il est possible de tracer directement des courbes en échelles isométriques
122 en utilisant l'option <literal>plot2d(...,frameflag=4)</literal> lors
123 de l'appel, sans devoir utiliser <function>isoview</function> après coup.
126 <title>Affichage selon .isoview et .cube_scaling</title>
128 <table align="middle">
130 <th>isoview(..)</th><th>gca().isoview</th>
131 <th>gca().cube_scaling</th>
132 <td><emphasis role="bold">Rendu graphique</emphasis></td>
135 <th>on</th><td align="center">on</td>
136 <td align="center">off</td>
137 <td>X, Y sont Z are isométriques</td>
140 <th>off</th><td align="center">off</td>
141 <td align="center">on</td>
142 <td>Echelles en X, Y and Z indépendantes. En 3D, facteur de forme
143 amélioré lorsque les étendues en X/Y/Z sont très différentes.</td>
146 <th></th><td align="center">off</td>
147 <td align="center">off</td>
148 <td>Echelles en X, Y, Z indépendantes. En 3D, les facteurs d'échelles
149 X/Y/Z rendus en perspective sont similaires à ceux des données.</td>
152 <th></th><td align="center">on</td>
153 <td align="center">on</td>
154 <td>Les échelles graphiques sont fixées de sorte que le repère
155 graphique apparaisse carré ou cubique.
162 <refsection role="examples">
163 <title>Exemples</title>
164 <programlisting role="example"><![CDATA[
170 plot2d(cos(t),sin(t))
171 xtitle("Véritable cercle")
175 plot2d(cos(t),sin(t))
179 plot2d(7*cos(t),2*sin(t))
180 xtitle("Véritable ellipse")
184 plot2d(7*cos(t),2*sin(t))
187 // Dessinons une sphère à facettes calculées avec eval3dp()
188 deff("[x,y,z] = sph(alp,tet)",[
189 "x = r*cos(alp).*cos(tet)+orig(1)*ones(tet)"; ..
190 "y = r*cos(alp).*sin(tet)+orig(2)*ones(tet)"; ..
191 "z = r*sin(alp)+orig(3)*ones(tet)"]);
192 r = 3; orig = [0 0 0];
193 [xx,yy,zz] = eval3dp(sph,linspace(-%pi/2,%pi/2,40),linspace(0,%pi*2,40));
195 plot3d(xx, yy, zz, alpha=60, flag=[color("green") 8 4])
196 zlabel("isoview off", "rotation", -90, "fontsize",4)
197 xtitle("Véritable sphère")
200 plot3d(xx, yy, zz, alpha=60, flag=[color("green") 8 4])
201 zlabel("isoview on", "rotation", -90, "fontsize",4)
204 // Commutation en vue isométrique/normale pour tous les repères de la fenêtre
207 // Passage en vue isométrique de tous les repères de la fenêtre graphique
210 // Passage en vue normale du repère actif
213 // Passage en vue isométrique des repères graphiques du haut
215 isoview([a1 a2 a3], "on")
221 f.axes_size = [850 400];
224 plot2d(cos(t),sin(t))
225 xtitle("True circle")
228 plot2d(cos(t),sin(t))
232 plot2d(7*cos(t),2*sin(t))
233 xtitle("True ellipse")
236 plot2d(7*cos(t),2*sin(t))
239 // plot of a sphere using facets computed by eval3dp
240 deff("[x,y,z] = sph(alp,tet)",["x = r*cos(alp).*cos(tet)+orig(1)*ones(tet)"; ..
241 "y = r*cos(alp).*sin(tet)+orig(2)*ones(tet)"; ..
242 "z = r*sin(alp)+orig(3)*ones(tet)"]);
243 r = 3; orig = [0 0 0];
244 [xx,yy,zz] = eval3dp(sph,linspace(-%pi/2,%pi/2,40),linspace(0,%pi*2,40));
246 plot3d(xx, yy, zz, alpha=60, flag=[color("green") 8 4])
247 zlabel("isoview off", "rotation", -90, "fontsize",4)
248 xtitle("True sphere")
251 plot3d(xx, yy, zz, alpha=60, flag=[color("green") 8 4])
252 zlabel("isoview on", "rotation", -90, "fontsize",4)
255 <programlisting role="example"><![CDATA[
256 // Utilisation de l'option frameflag=4 de plot2d() :
257 r = linspace(1,10,200);
261 plot2d(r.*sin(t),r.*cos(t))
265 plot2d(r.*sin(t),r.*cos(t),frameflag=4)
266 xtitle("with frameflag=4")
268 <scilab:image localized="true">
269 r = linspace(1,10,200);
273 plot2d(r.*sin(t),r.*cos(t))
277 plot2d(r.*sin(t),r.*cos(t),frameflag=4)
278 xtitle("avec frameflag=4")
281 <refsection role="see also">
282 <title>Voir aussi</title>
283 <simplelist type="inline">
285 <link linkend="replot">replot</link>
288 <link linkend="axes_properties">Axes properties</link>
293 <refsection role="history">
294 <title>Historique</title>
297 <revnumber>6.0</revnumber>
300 <listitem>Ajout des drapeaux "on", "off".</listitem>
301 <listitem>Ajout des paramètres d'entrée <none> et idGraphics.</listitem>
306 <revnumber>6.0.2</revnumber>
308 "isoview on" désormais fixe .cube_scaling="off", et
309 "isoview off" fixe .cube_scaling="on".