tweaking the Julia's fractal

This commit is contained in:
tTh
2024-02-10 21:55:04 +01:00
parent 27635a0398
commit dd552abeda
4 changed files with 45 additions and 17 deletions

View File

@@ -1,4 +1,5 @@
module julias
implicit none
contains
@@ -42,13 +43,14 @@ subroutine simple_julia(pic, cx, cy, maxiter)
if (over_iter) then
pic(ix, iy) = 0
else
pic(ix, iy) = iter*12
pic(ix, iy) = mod(iter*13, 256)
endif
enddo ! iy
enddo ! ix
end subroutine simple_julia
!===============================================================
subroutine julia_colormapped(pic, cx, cy, maxiter)
use pixrgb
type(t_pixrgb), intent(inout), dimension (:,:) :: pic
@@ -64,11 +66,11 @@ subroutine julia_colormapped(pic, cx, cy, maxiter)
width = ubound(pic, 1)
height = ubound(pic, 2)
C = complex(cx, cy)
print *, "Color julia, const = ", C
! print *, "Color julia, const = ", C
do ix = 1, width
fx = (float(ix) / (float(width*2)/4.0) - 1.0)
fx = (float(ix) / (float(width*2)/10.0) - 2.5)
do iy = 1, height
fy = (float(iy) / (float(height*2)/4.0) - 1.0)
fy = (float(iy) / (float(height*2)/10.0) - 2.5)
! ------ traitement du pixel
iter = 0 ; over_iter = .FALSE.
Z = complex(fx, fy)
@@ -85,9 +87,9 @@ subroutine julia_colormapped(pic, cx, cy, maxiter)
pic(ix, iy)%g = mod(abs(int(real(Z) *140)), 255)
pic(ix, iy)%b = mod(abs(int(aimag(Z)*140)), 255)
else
pic(ix, iy)%r = mod(iter*33, 255)
pic(ix, iy)%r = mod(iter*22, 255)
pic(ix, iy)%g = mod(iter*59, 255)
pic(ix, iy)%b = mod(iter*41, 255)
pic(ix, iy)%b = mod(iter*21, 255)
endif
enddo ! iy
enddo ! ix