Discussion forum about PANORAMIC language

Mac, Windows & Android application development with PANORAMIC language
 
HomeFAQSearchRegisterMemberlistUsergroupsLog in
Latest topics
» Hello world.
by Mon Jun 19, 2017 1:37 am

» Biomorphes de PICKOVER
by Sun Jun 18, 2017 2:33 am

» In less than 10 lines of code
by Fri Jun 16, 2017 5:03 am

» Effect Dopler
by Fri Jun 16, 2017 3:29 am

» SuperEllipse
by Wed Jun 14, 2017 4:01 am

» Plants
by Wed Jun 14, 2017 3:38 am

» Mira's attractor
by Wed Jun 14, 2017 3:30 am

» Triangle of Sierpinski
by Wed Jun 14, 2017 3:22 am

» Esthétique polaire
by Wed Jun 14, 2017 3:16 am

» Butterfly effect : Lorenz equations
by Wed Jun 14, 2017 3:08 am

» Collision detection
by Tue Jun 13, 2017 5:09 am

» The Bees Laline Paull Epub Books
by Mon Oct 10, 2016 8:58 pm

» PANORAMIC for Mac OSX 10 is available
by Tue Aug 09, 2016 6:08 pm

» ide
by Sat Jul 16, 2016 12:27 am

» Can I change the program icon/logo in my application ?
by Thu Jul 07, 2016 3:32 am

Navigation
 Portal
 Index
 Memberlist
 Profile
 FAQ
 Search

Share | 
 

 Biomorphes de PICKOVER

View previous topic View next topic Go down 
AuthorMessage
papydall

avatar

Number of posts : 39
Age : 66
Localisation : TUNISIA
Registration date : 2013-03-16

PostSubject: Biomorphes de PICKOVER   Sun Jun 18, 2017 2:33 am

Code:

rem ============================================================================
rem                 Biomorphes de PICKOVER
rem                  Papydall - Juin 2017
rem ============================================================================
rem Les biomorphes sont issus d’un programme informatique.
rem L’algorithme permettant de tracer un biomorphe utilise les nombres complexes.
rem Il manipule une suite de complexes dans le plan complexe.
rem ============================================================================
rem RAPPEL :
rem Un nombre complexe n’est pas si complexe que ça !
rem Il s’appelle complexe parce qu’il est composé de deux parties :
rem L’une dite partie réelle et l’autre partie imaginaire.
rem Un nombre complexe z s’écrit sous la forme :
rem         ______________
rem        |              |
rem        | z = a + i*b  |
rem        |______________|
rem
rem Dans le plan complexe, z désigne l’affixe d’un point où la partie réelle a
rem en détermine l’abscisse et la partie imaginaire b, l’ordonnée.
rem ============================================================================
rem Le nombre i (qui s’appelle unité imaginaire) est tel que i² = -1
rem C’est-à-dire "i = racine carrée de moins un"
rem ============================================================================
rem Comme exemple, on s’intéresse au biomorphe appelé "radiolaire" à 12 branches
rem de la forme z³ + c
rem ============================================================================
dim xc,yc : xc = 0.5 : yc = 0.1 : ' c <--- xc + i*yc
dim rz,rza,iz,iza,j,k,n,xm,ym,t$
width 0,750
picture 10 : width 10,width_client(0)-100 : height 10,height_client(0)-100
top 10,50 : left 10,50 : 2d_target_is 10  : color 10,0,0,0
alpha 20 : font_size 20,14 : font_bold 20 : font_color 20,0,0,255 : left 20,150
t$ = "Biomorphe de Pickover : Radiolaire à 12 branches" + chr$(13)
t$ = t$ + "de la forme z³ + c  ..... <ESC> pour arrêter ....."
caption 20,t$ : caption 0,"Tracé en cours ..."
xm = width(10) : ym = height(10)
for j = 50 to xm - 50
    for k = 10 to ym
        rza = -6.4 + 0.02 * j : iza = -3.5 + 0.02 * k
        for n = 1 to 10
            rz = power(rza,3) - 3 * rza * power(iza,2) + xc : ' partie réelle de z
            iz = 3 * power(rza,2) * iza - power(iza,3) + yc : ' partie imaginaire de z
            IF (ABS(rz) > 10) OR (ABS(iz) > 10) OR (SQR(rz*rz+iz*iz) > 10) THEN exit_for
            rza = rz : iza = iz
        next n
        IF (ABS(rz) < 10) OR (ABS(iz) < 10)
           2d_pen_color 255,0,0 : 2d_point j,k
        end_if
        IF (ABS(rz) <  OR (ABS(iz) <
           2d_pen_color 255,255,0 : 2d_point j,k
        end_if
        IF (ABS(rz) < 6) OR (ABS(iz) < 6)
           2d_pen_color 0,255,0 : 2d_point j,k
        end_if
        IF (ABS(rz) < 4) OR (ABS(iz) < 4)
           2d_pen_color 255,0,0 : 2d_point j,k
        end_if
        IF (ABS(rz) < 2) OR (ABS(iz) < 2)
           2d_pen_color 255,255,0 : 2d_point j,k
        end_if
        display
        if scancode = 27 then terminate
    NEXT k
NEXT j
caption 0,"Terminé"
rem ============================================================================




Back to top Go down
View user profile
 
Biomorphes de PICKOVER
View previous topic View next topic Back to top 
Page 1 of 1

Permissions in this forum:You cannot reply to topics in this forum
Discussion forum about PANORAMIC language :: Panoramic for Windows :: Source code (snippets)-
Jump to: