28 CHARACTER(LEN=MAXLENFILE) :: file_name
29 CHARACTER(LEN=80) :: title
30 INTEGER,
ALLOCATABLE :: cell_type(:)
31 INTEGER,
ALLOCATABLE :: connect(:)
32 INTEGER :: nelem, npoin
35 DOUBLE PRECISION,
ALLOCATABLE :: x(:)
36 DOUBLE PRECISION,
ALLOCATABLE :: y(:)
37 DOUBLE PRECISION,
ALLOCATABLE :: z(:)
69 INTEGER,
INTENT(IN) :: VAL
71 CHARACTER(LEN=8),
INTENT(OUT) :: RES
74 WRITE(res,
'(A7,I1)')
'0000000',val
75 ELSE IF(val.LT.100)
THEN 76 WRITE(res,
'(A6,I2)')
'000000',val
77 ELSE IF(val.LT.1000)
THEN 78 WRITE(res,
'(A5,I3)')
'00000',val
79 ELSE IF(val.LT.10000)
THEN 80 WRITE(res,
'(A4,I4)')
'0000',val
81 ELSE IF(val.LT.100000)
THEN 82 WRITE(res,
'(A3,I5)')
'000',val
83 ELSE IF(val.LT.1000000)
THEN 84 WRITE(res,
'(A2,I6)')
'00',val
85 ELSE IF(val.LT.10000000)
THEN 86 WRITE(res,
'(A1,I7)')
'0',val
107 CHARACTER(LEN=*),
INTENT(IN) :: FILE_NAME
108 INTEGER,
INTENT(OUT) :: FILE_ID
109 CHARACTER(LEN=9),
INTENT(IN) :: OPEN_MODE
110 INTEGER,
INTENT(OUT) :: IERR
112 #if !defined (DISABLE_VTK) 117 SELECT CASE(open_mode)
127 CALL get_free_id(file_id)
132 & trim(file_name)//
': '//
133 &
'OPEN_MESH_MED:ADD_OBJ' 139 OPEN(unit=file_id,file=
'bogus.txt',
140 & action=
'WRITE',iostat=ierr)
144 &
'OPEN_MESH_VTK:BOGUS' 171 INTEGER,
INTENT(IN) :: FILE_ID
172 INTEGER,
INTENT(OUT) :: IERR
178 #if !defined (DISABLE_VTK) 183 &
'CLOSE_MESH_VTK:GET_OBJ' 227 INTEGER,
INTENT(IN) :: FILE_ID
228 INTEGER,
INTENT(IN) :: NVAR
229 CHARACTER(LEN=80),
INTENT(IN) :: TITLE
230 INTEGER,
INTENT(OUT) :: IERR
232 #if !defined (DISABLE_VTK) 240 &
'SET_HEADER_VTK:GET_OBJ' 259 & NDP,NELEM,NPOIN,IKLE,X,Y,IERR)
284 INTEGER,
INTENT(IN) :: FILE_ID, NB_DIM_MESH
285 INTEGER,
INTENT(IN) :: NELEM, NPOIN, TYPE_ELEM, NDP
286 INTEGER,
INTENT(IN) :: IKLE(ndp*nelem)
287 DOUBLE PRECISION,
INTENT(IN) :: X(npoin)
288 DOUBLE PRECISION,
INTENT(IN) :: Y(npoin)
289 INTEGER,
INTENT(OUT) :: IERR
291 #if !defined (DISABLE_VTK) 301 &
'SET_MESH_VTK:GET_OBJ' 306 ALLOCATE(
vtk_obj_tab(vtk_id)%CELL_TYPE(nelem),stat=ierr)
310 &
'ALLOCATING CELL_TYPE' 314 SELECT CASE(type_elem)
329 ALLOCATE(
vtk_obj_tab(vtk_id)%CONNECT(nelem*(ndp+1)),stat=ierr)
333 &
'ALLOCATING CONNECT' 340 & ikle((j-1)*nelem+i)-1
373 & FIRST_VAR, VAR_VALUE, N, IERR)
391 INTEGER,
INTENT(IN) :: FILE_ID, N
392 INTEGER,
INTENT(IN) :: RECORD
393 CHARACTER(LEN=32),
INTENT(IN) :: VAR_NAME
394 DOUBLE PRECISION,
INTENT(IN) :: VAR_VALUE(n)
395 LOGICAL,
INTENT(IN) :: FIRST_VAR
396 INTEGER,
INTENT(OUT) :: IERR
398 #if !defined (DISABLE_VTK) 400 DOUBLE PRECISION,
ALLOCATABLE :: Z(:)
401 CHARACTER(LEN=MAXLENFILE) :: FILENAME
402 CHARACTER(LEN=8) :: TIMESTR
403 CHARACTER(LEN=32) :: VAR_NAME_VTK
417 filename = trim(
vtk_obj_tab(vtk_id)%FILE_NAME)//timestr
420 &
'UNSTRUCTURED_GRID')
476 var_name_vtk = var_name
477 CALL blanc2uscore(var_name_vtk, len(var_name_vtk))
482 &
'ADD_DATA:VTK_VAR ' integer, parameter prism_elt_type
integer, parameter hermes_vtk_not_loaded_err
subroutine add_obj(HASH, FILE_ID, HASHED_ID, IERR)
integer(i4p) function, public vtk_dat(NC_NN, VAR_LOCATION)
subroutine open_mesh_vtk(FILE_NAME, FILE_ID, OPEN_MODE, IERR)
integer, parameter maxlenfile
subroutine get_obj(HASH, FILE_ID, HASHED_ID, IERR)
integer, parameter triangle_elt_type
Y.AUDOUIN 30/06/2013 V6P3
character(len=200) error_message
subroutine number2string(RES, VAL)
integer, parameter hermes_invalid_open_mode_err
type(vtk_info), dimension(max_file) vtk_obj_tab
subroutine set_mesh_vtk(FILE_ID, NB_DIM_MESH, TYPE_ELEM, NDP, NELEM, NPOIN, IKLE, X, Y, IERR)
integer, parameter max_file
subroutine set_header_vtk(FILE_ID, TITLE, NVAR, IERR)
integer(i4p) function, public vtk_end()
subroutine close_mesh_vtk(FILE_ID, IERR)
integer, dimension(max_file) hash
integer(i4p) function, public vtk_con(NC, CONNECT, CELL_TYPE)
integer, parameter tetrahedron_elt_type
integer, parameter quadrangle_elt_type
integer(i4p) function, public vtk_ini(OUTPUT_FORMAT, FILENAME, TITLE, MESH_TOPOLOGY)
integer, parameter hermes_write_only_err
subroutine add_data_vtk(FILE_ID, VAR_NAME, RECORD, FIRST_VAR, VAR_VALUE, N, IERR)