]> SALOME platform Git repositories - modules/hexablock.git/blob - doc/test_doc/extrudeQuad/extrude_quad.py
Salome HOME
ParaView 4.1 / VTK 6.1 porting
[modules/hexablock.git] / doc / test_doc / extrudeQuad / extrude_quad.py
1 # -*- coding: utf-8 -*-
2 ####### Test for Extrude Quad ###############
3
4 import hexablock
5
6
7 doc = hexablock.addDocument("Extrude Quad Test")
8
9 dimx = 11
10 dimy = 11
11 dimz = 2
12
13 orig1 = doc.addVertex ( 0,0,0)
14 vx    = doc.addVector ( 1,0,0)
15 vy    = doc.addVector ( 0,1,0)
16 vz    = doc.addVector ( 0,0,1)
17 dir1  = doc.addVector ( 1,1,1)
18 dir2  = doc.addVector ( 1,1,-1)
19
20 dx =1
21 dy=1
22 dz=1
23
24 grid1 = doc.makeCartesianUni (orig1, vx,vy,vz, dx,dy,dz, dimx,dimy,dimz)
25
26 mx = dimx/2
27 my = dimy/2
28 liste1 = []
29 liste2 = []
30
31 liste1.append(grid1.getQuadIJ (mx, my, dimz))
32 liste2.append(grid1.getQuadIJ (mx, my, 0))
33 for nx in range(dimx):
34     if nx!=mx:     
35         liste1.append(grid1.getQuadIJ (nx, my, dimz))
36         liste2.append(grid1.getQuadIJ (nx, my, 0))
37
38 for ny in range(dimy):
39     if ny!=my:
40         liste1.append(grid1.getQuadIJ (mx, ny, dimz))
41         liste2.append(grid1.getQuadIJ (mx, ny, 0))
42
43 tlen = []
44 dh0  = 1
45 dh   = 0.02
46 lh = 0
47 for nro in range(5):
48     dh = 1.5*dh + 1
49     lh += dh
50     tlen.append(lh)
51
52 nbiter = 5
53 doc.saveVtk ("prisme1.vtk")
54 prisme2 = doc.extrudeQuadsUni (liste2, dir2, dh0, nbiter)
55 doc.saveVtk ("prisme2.vtk")
56
57 prisme1 = doc.extrudeQuads (liste1, dir1, tlen)
58
59 doc.saveVtk ("prisme3.vtk")