Initial data commit
This commit is contained in:
parent
72d218235f
commit
f23f22d71c
199087 changed files with 3378941 additions and 0 deletions
42
Task/Bitmap-Read-a-PPM-file/Fortran/bitmap-read-a-ppm-file.f
Normal file
42
Task/Bitmap-Read-a-PPM-file/Fortran/bitmap-read-a-ppm-file.f
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
subroutine read_ppm(u, img)
|
||||
integer, intent(in) :: u
|
||||
type(rgbimage), intent(out) :: img
|
||||
integer :: i, j, ncol, cc
|
||||
character(2) :: sign
|
||||
character :: ccode
|
||||
|
||||
img%width = 0
|
||||
img%height = 0
|
||||
nullify(img%red)
|
||||
nullify(img%green)
|
||||
nullify(img%blue)
|
||||
|
||||
read(u, '(A2)') sign
|
||||
read(u, *) img%width, img%height
|
||||
read(u, *) ncol
|
||||
|
||||
write(0,*) sign
|
||||
write(0,*) img%width, img%height
|
||||
write(0,*) ncol
|
||||
|
||||
if ( ncol /= 255 ) return
|
||||
|
||||
call alloc_img(img, img%width, img%height)
|
||||
|
||||
if ( valid_image(img) ) then
|
||||
do j=1, img%height
|
||||
do i=1, img%width
|
||||
read(u, '(A1)', advance='no', iostat=status) ccode
|
||||
cc = iachar(ccode)
|
||||
img%red(i,j) = cc
|
||||
read(u, '(A1)', advance='no', iostat=status) ccode
|
||||
cc = iachar(ccode)
|
||||
img%green(i,j) = cc
|
||||
read(u, '(A1)', advance='no', iostat=status) ccode
|
||||
cc = iachar(ccode)
|
||||
img%blue(i,j) = cc
|
||||
end do
|
||||
end do
|
||||
end if
|
||||
|
||||
end subroutine read_ppm
|
||||
Loading…
Add table
Add a link
Reference in a new issue