]> SALOME platform Git repositories - modules/hexablock.git/blob - doc/tui_prism_join_quad.rst
Salome HOME
Abu : Mise a jour HEXABLOCK
[modules/hexablock.git] / doc / tui_prism_join_quad.rst
1 :tocdepth: 3
2
3
4 .. _tuiprismjoinquad:
5
6 ============================ 
7 Extrude and Join Quadrangles
8 ============================
9
10 There are two different methods to build hexahedra from quadrangles:
11
12 - Extrusion of quadrangles
13 - Join two sets of quadrangles
14
15 .. _tuiextrudequad:
16
17 Extrude a quadrangle or quadrangles
18 ===================================
19
20 .. _tuiextrudequadssimple:
21
22 Simple Extrude
23 --------------
24
25 To extrude one quad or a set of quads the following data are required:
26
27 - *quad*    : the quad to be extruded (for one quad extrusion).
28 - *quads*   : the list of quadrangles to be extruded (for multiple quads extrusion).
29 - *nbLayers*: the number of layers of hexahedra resulting from the extrusion.
30
31 One quad extrusion::
32
33         elts = doc.extrudeQuadTop(quad, nbLayers)
34
35 Extrusion of a set of quads::
36
37         elts = doc.extrudeQuadsTop(quads, nbLayers)
38
39
40 GUI command: :ref:`guiextrudequadssimple`
41
42
43 .. _tuiextrudequadsuniform:
44
45 Uniform Extrude
46 ---------------
47
48 The following data are required:
49
50 - *quad*    : the quad to be extruded (for one quad extrusion).
51 - *quads*   : the list of quadrangles to be extruded (for multiple quads extrusion).
52 - *dir*     : the direction of the extrusion.
53 - *length*  : the length of hexahedra resulting from the extrusion.
54 - *nbLayers*: the number of layers of hexahedra resulting from the extrusion.
55
56 One quad extrusion::
57
58         elts = doc.extrudeQuadUni(quad, dir, length, nbLayers)
59         
60 Extrusion of a set of quads::
61
62         elts = doc.extrudeQuadsUni(quads, dir, length, nbLayers)
63
64
65 GUI command: :ref:`guiextrudequadsuniform`
66
67
68 .. _tuiextrudequadscustom:
69
70 Custom Extrude
71 --------------
72
73 The following data are required:
74
75 - *quad* : the quad to be extruded (for one quad extrusion).
76 - *quads*: the list of quadrangles to be extruded (for multiple quads extrusion).
77 - *dir*  : the direction of the extrusion.
78 - *th*   : a list of heights (in ascendant order because the size is computed from the origin) to specify the size of each layer of extrusion.
79
80 One quad extrusion::
81
82         elts = doc.extrudeQuad(quad, dir, th)
83         
84 Extrusion of a set of quads::
85
86         elts = doc.extrudeQuads(quads, dir, th)
87         
88
89 GUI command: :ref:`guiextrudequadscustom`
90
91 Operations on *elts*: :ref:`tuielements2`
92
93
94 Example
95 -------
96
97 .. literalinclude:: test_doc/extrudeQuad/extrude_quad.py
98    :linenos:
99
100
101
102 .. _tuijoinquad:
103
104 Join quadrangle or quadrangles
105 ==============================
106
107 .. _tuijoinquadsuniform:
108
109 Uniform Join
110 ------------
111
112 The following data are required:
113
114 - *quad*      : the quad to be joined and from which hexahedra will be created (one quad case).
115 - *quads*     : the set of quadrangles to be joined and from which hexahedra will be created (multiple quad case).
116 - *fromPointA*: a vertex belonging to the first quadrangle of the set of quadrangles.
117 - *fromPointB*: a vertex, consecutive to previous Point a, belonging to the first quadrangle.
118     
119 - *quadDest*  : a quadrangle from the set of targeted quadrangles.
120 - *toPointA*  : the target vertex (in the target quadrangle) for *fromPointA*.
121 - *toPointB*  : the target vertex (in the target quadrangle) for *fromPointB*.
122
123 - *nbLayers*  : number of layers of hexahedra issued from the operation.
124
125 To join one quad to an other use the function **joinQuadUni**::
126
127         elts = doc.joinQuadUni(quad, quadDest, fromPointA, fromPointB, toPointA, toPointB, nbLayers)
128
129 To join a set of quads to another quad use the function **joinQuadsUni**::
130
131         elts = doc.joinQuadsUni(quads, quadDest, fromPointA, fromPointB, toPointA, toPointB, nbLayers)
132
133 GUI command: :ref:`guijoinquadsuniform`
134
135
136 .. _tuijoinquadscustom:
137
138 Custom Join
139 -----------
140
141 The following data are required:
142
143 - *quad*      : the quad to be joined and from which hexahedra will be created (one quad case).
144 - *quads*     : the set of quadrangles to be joined and from which hexahedra will be created (multiple quads case).
145 - *fromPointA*: a vertex belonging to the first quadrangle of the set of quadrangles.
146 - *fromPointB*: a vertex, consecutive to previous Point a, belonging to the first quadrangle.
147     
148 - *quadDest*  : a quadrangle from the set of targeted quadrangles.
149 - *toPointA*  : the target vertex (in the target quadrangle) for *fromPointA*.
150 - *toPointB*  : the target vertex (in the target quadrangle) for *fromPointB*.
151
152 - *th*    : a list of heights to specify the size of each layer of hexahedra issued from the operation.
153
154 To make a custom join of one quad to another use the function **joinQuad**::
155
156         elts = doc.joinQuad(quad, quadDest, fromPointA, fromPointB, toPointA, toPointB, th)
157         
158 To make a custom join of a set of quads to another quad use the function **joinQuads**::
159
160         elts = doc.joinQuads(quads, quadDest, fromPointA, fromPointB, toPointA, toPointB, th)
161
162 GUI command: :ref:`guijoinquadscustom`
163
164 Operations on *elts*: :ref:`tuielements2`
165
166
167 Example
168 -------
169
170 .. literalinclude:: test_doc/joinQuad/join_quad.py
171    :linenos: