Function for saving texture variable (R4P).
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=I4P), | intent(in) | :: | NC_NN | |||
integer(kind=I4P), | intent(in) | :: | dimm | |||
character(len=*), | intent(in) | :: | varname | |||
real(kind=R4P), | intent(in) | :: | textCoo(1:NC_NN,1:dimm) |
function VTK_VAR_TEXT_R4(NC_NN,dimm,varname,textCoo) result(E_IO)
!---------------------------------------------------------------------------------------------------------------------------------
!! Function for saving texture variable (R4P).
!---------------------------------------------------------------------------------------------------------------------------------
!---------------------------------------------------------------------------------------------------------------------------------
implicit none
integer(I4P), intent(IN):: NC_NN ! number of nodes or cells
integer(I4P), intent(IN):: dimm ! texture dimensions
character(*), intent(IN):: varname ! variable name
real(R4P), intent(IN):: textCoo(1:NC_NN,1:dimm) ! texture
integer(I4P):: E_IO ! Input/Output inquiring flag: $0$ if IO is done, $> 0$ if IO is not done
character(len=maxlen):: s_buffer ! buffer string
integer(I8P):: n1,n2 ! counters
!---------------------------------------------------------------------------------------------------------------------------------
!---------------------------------------------------------------------------------------------------------------------------------
select case(f_out)
case(f_out_ascii)
write(unit=Unit_VTK,fmt='(A,1X,'//FI4P//',1X,A)',iostat=E_IO)'TEXTURE_COORDINATES '//trim(varname),dimm,' float'
write(s_buffer,fmt='(I1)',iostat=E_IO)dimm
s_buffer='('//trim(s_buffer)//FR4P//')'
write(unit=Unit_VTK,fmt=trim(s_buffer),iostat=E_IO)((textCoo(n1,n2),n2=1,dimm),n1=1,NC_NN)
case(f_out_binary)
write(s_buffer,fmt='(A,1X,'//FI4P//',1X,A)',iostat=E_IO)'TEXTURE_COORDINATES '//trim(varname),dimm,' float'
write(unit=Unit_VTK,iostat=E_IO)trim(s_buffer)//end_rec
write(unit=Unit_VTK,iostat=E_IO)((textCoo(n1,n2),n2=1,dimm),n1=1,NC_NN)
write(unit=Unit_VTK,iostat=E_IO)end_rec
endselect
return
!---------------------------------------------------------------------------------------------------------------------------------
endfunction VTK_VAR_TEXT_R4