Salome HOME
dccbe8c9017fae94a1304c1b26fb3a7dde07960a
[modules/homard.git] / doc / tui_create_zone.rst
1 .. _tui_create_zone:
2
3 La zone
4 =======
5
6 .. index:: single: zone
7 .. index:: single: boite
8 .. index:: single: sphere
9 .. index:: single: cylindre
10 .. index:: single: tuyau
11 .. index:: single: disque
12 .. index:: single: disque avec trou
13 .. index:: single: 2D
14
15 Les variables sont décrites dans :ref:`gui_create_zone`.
16
17 Méthodes de la classe homard
18 """"""""""""""""""""""""""""
19
20 Ces méthodes retournent une instance de la classe zone.
21
22 +----------------------------------------------------------------------------------+
23 +----------------------------------------------------------------------------------+
24 | .. module:: CreateZoneBox                                                        |
25 |                                                                                  |
26 | **CreateZoneBox(zone_name, Xmin, Xmax, Ymin, Ymax, Zmin, Zmax)**                 |
27 |     Retourne une instance de la classe ``zone`` de type parallélépipèdique       |
28 |     après sa création                                                            |
29 |                                                                                  |
30 |     - ``zone_name`` : le nom de la zone basée sur un parallélépipède             |
31 |     - ``Xmin``, ``Xmax`` : coordonnées extrêmes selon X                          |
32 |     - ``Ymin``, ``Ymax`` : coordonnées extrêmes selon Y                          |
33 |     - ``Zmin``, ``Zmax`` : coordonnées extrêmes selon Z                          |
34 +----------------------------------------------------------------------------------+
35 | .. module:: CreateZoneCylinder                                                   |
36 |                                                                                  |
37 | **CreateZoneCylinder(zone_name, Xbase, Ybase, Zbase, Xaxe, Yaxe, Zaxe, R, H)**   |
38 |     Retourne une instance de la classe ``zone`` de type cylindrique              |
39 |     après sa création                                                            |
40 |                                                                                  |
41 |     - ``zone_name`` : le nom de la zone basée sur un cylindre                    |
42 |     - ``Xbase``, ``Ybase``, ``Zbase`` : coordonnées d'un point de base           |
43 |       positionné sur l'axe                                                       |
44 |     - ``Xaxe``, ``Yaxe``, ``Zaxe`` : vecteur de l'axe                            |
45 |     - ``R`` : rayon du cylindre                                                  |
46 |     - ``H`` : hauteur du cylindre                                                |
47 +----------------------------------------------------------------------------------+
48 | .. module:: CreateZonePipe                                                       |
49 |                                                                                  |
50 | **CreateZonePipe(zone_name, Xbase, Ybase, Zbase, Xaxe, Yaxe, Zaxe, R, H, Rint)** |
51 |     Retourne une instance de la classe ``zone`` de type tuyau                    |
52 |     après sa création                                                            |
53 |                                                                                  |
54 |     - ``zone_name`` : le nom de la zone basée sur un tuyau                       |
55 |     - ``Xbase``, ``Ybase``, ``Zbase`` : coordonnées d'un point de base           |
56 |       positionné sur l'axe                                                       |
57 |     - ``Xaxe``, ``Yaxe``, ``Zaxe`` : vecteur de l'axe                            |
58 |     - ``R`` : rayon externe du tuyau                                             |
59 |     - ``H`` : hauteur du tuyau                                                   |
60 |     - ``R`` : rayon interne du tuyau                                             |
61 +----------------------------------------------------------------------------------+
62 | .. module:: CreateZoneSphere                                                     |
63 |                                                                                  |
64 | **CreateZoneSphere(zone_name, Xcen, Ycen, Zcen, R)**                             |
65 |     Retourne une instance de la classe ``zone`` de type sphérique                |
66 |     après sa création                                                            |
67 |                                                                                  |
68 |     - ``zone_name`` : le nom de la zone basée sur une sphère                     |
69 |     - ``Xcen``, ``Ycen``, ``Zcen`` : coordonnées du centre de la sphère          |
70 |     - ``R`` : rayon de la sphère                                                 |
71 +----------------------------------------------------------------------------------+
72 | .. module:: CreateZoneBox2D                                                      |
73 |                                                                                  |
74 | **CreateZoneBox2D(zone_name, Umin, Umax, Vmin, Vmax, Orient)**                   |
75 |     Retourne une instance de la classe ``zone`` de type rectangulaire            |
76 |     après sa création                                                            |
77 |                                                                                  |
78 |     - ``zone_name`` : le nom de la zone basée sur un rectangle                   |
79 |     - ``Umin``, ``Umax`` : coordonnées extrêmes pour la 1ère dimension           |
80 |     - ``Vmin``, ``Vmax`` : coordonnées extrêmes pour la 2nde dimension           |
81 |     - ``Orient`` : entier précisant la convention d'orientation du plan          |
82 +----------------------------------------------------------------------------------+
83 | .. module:: CreateZoneDisk                                                       |
84 |                                                                                  |
85 | **CreateZoneDisk(zone_name, Ucen, Vcen, R, Orient)**                             |
86 |     Retourne une instance de la classe ``zone`` de type disque                   |
87 |     après sa création                                                            |
88 |                                                                                  |
89 |     - ``zone_name`` : le nom de la zone basée sur un disque plein                |
90 |     - ``Ucen``, ``Vcen`` : coordonnées du centre du disque                       |
91 |     - ``R`` : rayon du disque                                                    |
92 |     - ``Orient`` : entier précisant la convention d'orientation du plan          |
93 +----------------------------------------------------------------------------------+
94 | .. module:: CreateZoneDiskWithHole                                               |
95 |                                                                                  |
96 | **CreateZoneDiskWithHole(zone_name, Ucen, Vcen, R, Rint, Orient)**               |
97 |     Retourne une instance de la classe ``zone`` de type disque troué             |
98 |     après sa création                                                            |
99 |                                                                                  |
100 |     - ``zone_name`` : le nom de la zone basée sur un disque troué                |
101 |     - ``Ucen``, ``Vcen`` : coordonnées du centre du disque                       |
102 |     - ``R`` : rayon externe du disque                                            |
103 |     - ``Rint`` : rayon interne du disque                                         |
104 |     - ``Orient`` : entier précisant la convention d'orientation du plan          |
105 +----------------------------------------------------------------------------------+
106
107
108
109 +---------------------------------------------------------------+
110 +---------------------------------------------------------------+
111 |   La convention d'orientation du plan est la même que celle   |
112 |   utilisée dans les autres modules de Salome, en particulier  |
113 |   GEOM :                                                      |
114 |                                                               |
115 |     1. plan XY ; U <==> X et V <==> Y                         |
116 |     2. plan YZ ; U <==> Y et V <==> Z                         |
117 |     3. plan ZX ; U <==> Z et V <==> X                         |
118 +---------------------------------------------------------------+
119
120
121 .. note::
122   Les fonctions définissant des zones 2D ne doivent être utilisées que si l'intégralité du
123   maillage est 2D, dans un des plans de coordonnées.
124
125
126
127
128 +---------------------------------------------------------------+
129 +---------------------------------------------------------------+
130 | .. module:: GetZone                                           |
131 |                                                               |
132 | **GetZone(zone_name)**                                        |
133 |     Retourne l'instance de la classe ``zone`` connue par      |
134 |     son nom                                                   |
135 |                                                               |
136 |     - ``zone_name`` : le nom de la zone                       |
137 +---------------------------------------------------------------+
138 | .. module:: GetAllZonesName                                   |
139 |                                                               |
140 | **GetAllZonesName()**                                         |
141 |     Retourne la liste des noms de toutes les zones créées     |
142 |                                                               |
143 +---------------------------------------------------------------+
144
145
146 Méthodes de la classe zone
147 """"""""""""""""""""""""""
148
149 +---------------------------------------------------------------+
150 +---------------------------------------------------------------+
151 | .. module:: GetName                                           |
152 |                                                               |
153 | **GetName()**                                                 |
154 |     Retourne le nom de la zone                                |
155 +---------------------------------------------------------------+
156 | .. module:: GetType                                           |
157 |                                                               |
158 | **GetType()**                                                 |
159 |     Retourne le type de la zone                               |
160 |                                                               |
161 |         * 2 : parallélépipède                                 |
162 |         * 3 : sphère                                          |
163 |         * 5 : cylindre                                        |
164 |         * 7 : tuyau                                           |
165 |         * 11, 12, 13 : rectangle et orientation 1, 2 ou 3     |
166 |         * 31, 32, 33 : disque et orientation 1, 2 ou 3        |
167 |         * 61, 62, 63 : disque percé et orientation 1, 2 ou 3  |
168 +---------------------------------------------------------------+
169 | .. module:: GetCoords                                         |
170 |                                                               |
171 | **GetCoords()**                                               |
172 |     Retourne un tableau contenant les coordonnées de la zone  |
173 |     dans l'ordre d'entrée dans le CreateZoneXXXX associé      |
174 +---------------------------------------------------------------+
175
176
177 Exemple
178 """""""
179 La création d'une boîte 3D ou d'un disque dans le plan XY se fait ainsi : ::
180
181     zone_1 = homard.CreateZoneBox ("BLOC", -1., 1., -30., 40., 10.5, 20.8)
182     zone_2 = homard.CreateZoneDisk ("disque", 1., 3., 43.25, 1)
183
184
185 Saisie graphique correspondante
186 """""""""""""""""""""""""""""""
187 Consulter :ref:`gui_create_zone`
188
189 .. warning::
190   En mode graphique, si on édite une zone et que l'on modifie une des dimensions, toutes les itérations qui ont été calculées précédemment avec cette zone sont invalidées. En mode python, cela n'est plus vrai : les itérations restent telles quelles.
191
192
193