2022-12-06 11:49:45 +11:00
|
|
|
!-------------------------------------------------------------------
|
|
|
|
!-
|
|
|
|
|
2022-12-01 22:03:22 +11:00
|
|
|
program chkpixels
|
|
|
|
|
2022-12-17 05:26:54 +11:00
|
|
|
use spitpgm
|
|
|
|
use pixrgb
|
|
|
|
|
|
|
|
use trials ! experiments, ymmv.
|
2022-12-01 22:03:22 +11:00
|
|
|
|
2022-12-06 11:49:45 +11:00
|
|
|
implicit none
|
2022-12-01 22:03:22 +11:00
|
|
|
|
|
|
|
write(0, *) "------ CHKPIXELS ------"
|
2024-01-17 11:13:49 +11:00
|
|
|
! call test_spit_gray(3)
|
|
|
|
call test_spit_rgb16(1100, 512)
|
2022-12-01 22:03:22 +11:00
|
|
|
|
|
|
|
STOP 'BECAUSE NO CPU AVAILABLE'
|
|
|
|
|
|
|
|
contains
|
|
|
|
!-------------------------------------------------------------------
|
2022-12-25 08:13:17 +11:00
|
|
|
!-
|
|
|
|
! exerciser for the 'pixrgb' module
|
2022-12-01 22:03:22 +11:00
|
|
|
!-
|
2024-01-17 11:13:49 +11:00
|
|
|
subroutine test_spit_rgb16(sz, kg)
|
2023-01-07 20:40:29 +11:00
|
|
|
integer, intent(in) :: sz, kg
|
2022-12-17 05:26:54 +11:00
|
|
|
|
|
|
|
type(t_pixrgb), allocatable :: pixrgb(:,:)
|
|
|
|
integer :: ix, iy
|
|
|
|
|
|
|
|
print *, "test spit rgb", sz
|
|
|
|
allocate(pixrgb(sz, sz))
|
2022-12-25 08:13:17 +11:00
|
|
|
call rgbpix_set_to_zero(pixrgb)
|
2024-01-17 11:13:49 +11:00
|
|
|
|
2022-12-17 05:26:54 +11:00
|
|
|
do ix=1, sz
|
|
|
|
do iy=1, sz
|
2024-01-17 11:13:49 +11:00
|
|
|
pixrgb(ix, iy)%r = mod(ix * iy, 65000)
|
|
|
|
if (ix.EQ.iy) pixrgb(ix, iy)%g = 65000
|
|
|
|
pixrgb(ix, iy)%b = mod ((ix*iy) * 13, 65000)
|
2022-12-17 05:26:54 +11:00
|
|
|
end do
|
|
|
|
end do
|
2024-01-17 11:13:49 +11:00
|
|
|
call rgbpix_spit_as_pnm_16 (pixrgb, "current-rgb16.pnm")
|
|
|
|
call new_spit_rgb16 (pixrgb, "experiment-rgb16.pnm")
|
|
|
|
|
2022-12-17 05:26:54 +11:00
|
|
|
deallocate(pixrgb)
|
|
|
|
|
|
|
|
end subroutine
|
|
|
|
!-------------------------------------------------------------------
|
|
|
|
!-
|
|
|
|
subroutine test_spit_as(increment)
|
2022-12-06 11:49:45 +11:00
|
|
|
integer, intent(in) :: increment
|
2022-12-01 22:03:22 +11:00
|
|
|
|
2022-12-06 11:49:45 +11:00
|
|
|
integer, parameter :: SZ = 40
|
2022-12-01 22:03:22 +11:00
|
|
|
integer, dimension(SZ, SZ) :: greymap
|
|
|
|
integer :: ix, iy, value
|
|
|
|
|
2023-01-07 20:40:29 +11:00
|
|
|
print *, "test spit as", sz
|
2022-12-01 22:03:22 +11:00
|
|
|
value = 0
|
|
|
|
do iy=1, SZ
|
|
|
|
do ix=1, SZ
|
|
|
|
greymap(ix, iy) = value
|
2022-12-06 11:49:45 +11:00
|
|
|
value = value + increment
|
2022-12-01 22:03:22 +11:00
|
|
|
enddo
|
|
|
|
enddo
|
2024-01-07 04:47:47 +11:00
|
|
|
! call spit_as_pgm_16 (greymap, 'a.pnm')
|
|
|
|
! call spit_as_pgm_eq (greymap, 'b.pnm')
|
2023-01-07 20:40:29 +11:00
|
|
|
call spit_as_pgm_8 (greymap, 'c.pnm')
|
|
|
|
call new_spit_a (greymap, 'x.pnm')
|
2022-12-01 22:03:22 +11:00
|
|
|
end subroutine
|
|
|
|
|
|
|
|
end program
|
|
|
|
|
|
|
|
!-------------------------------------------------------------------
|