Forum de Programmation en langage PANORAMIC
Rechercher
 
 

Résultats par :
 


Rechercher Recherche avancée

Mots-clés

fichiers  

Derniers sujets
» Useful Dog
Ven 6 Avr - 14:25 par Papydall-Admin

» Les Courbes de Bézier cubiques
Ven 30 Mar - 4:08 par Papydall-Admin

» Animation flash
Mer 14 Mar - 2:50 par Papydall-Admin

» Mega-Strip
Lun 12 Mar - 1:24 par Papydall-Admin

» Les oiseaux de mon jardin
Ven 9 Mar - 1:08 par Papydall-Admin

»  Création et gestion d’un livre
Jeu 8 Mar - 15:37 par Papydall-Admin

» Deux questions d’éthique
Mar 6 Mar - 1:56 par Papydall-Admin

»  La Blague Du Jour
Lun 5 Mar - 2:50 par Papydall-Admin

» Branle-Fesse
Lun 5 Mar - 2:46 par Papydall-Admin

Juillet 2018
LunMarMerJeuVenSamDim
      1
2345678
9101112131415
16171819202122
23242526272829
3031     

Calendrier Calendrier


Formules de passage de la 3D vers l'écran

Aller en bas

Formules de passage de la 3D vers l'écran

Message par Papydall-Admin le Jeu 13 Oct - 4:33

Code:

rem ============================================================================
'          Formules de passage de la 3D vers l'écran
'                       Par Papydall
rem ============================================================================
rem   Xecran = Xorogine + A * (x - y)
rem   Yecran = yorigine - B * (x + y) - C * z
rem   Avec :
rem   A = zoom / sqr(2)
rem   B = zoom * sin(alfa) / sqr(2)
rem   C = zoom * cos(alpha)
rem ============================================================================
'          Equation du plan de projection
rem ============================================================================
rem   x + y - c1*z avec c1 = sqr(2) * tan(alfa)
rem ============================================================================

dim alfa,a,b,c,c1,zoom,phi,lambda,xo,yo,x,y,z,xe,ye,r
alfa = pi/4 : c1 = sqr(2)*tan(alfa)
xo = 320 : yo = 240 : r = 100 : zoom = 2
a = zoom/sqr(2) : b = zoom * sin(alfa)/sqr(2) : c = zoom * cos(alfa)
color 0,0,0,0 : display
caption 0,"Veuillez patienter .... <CLICK> pour arrêter"
for phi = 0 to 2*pi step pi/25  : ' méridiens
    for lambda = 0-pi/2 to pi/2 step 0.001
' Equation paramétrique de la sphère
        x = r * cos(lambda) * cos(phi)  : ' Coordonnées ...
        y = r * cos(lambda) * sin(phi)  : ' ... sphériques ...
        z = r * sin(lambda)             : ' .... de la sphère
        xe = xo + a*(x-y) : ye = yo - b*(x+y) - c*z : ' Coordonnées du point à l'écran
        if x+y-c1*z < 0   : ' Le point est-il visible ?
           2d_pen_color 255,255,0  : ' Oui ---> le tracé sera en jaune
        else
           2d_pen_color 255,0,0 : ' Non, le point est caché ---> le tracé sera en rouge
        end_if
        2d_point xe,ye :' Afficher le point à l'écran
        if scancode <> 0 then caption 0,"Arrêté par l'utilisateur ... " : end
    next lambda
next phi
caption 0,"Terminé"
rem ============================================================================

_________________
Invité, merci d'être passé par ici.
avatar
Papydall-Admin
Admin

Messages : 94
Réputation : 0
Date d'inscription : 08/09/2015
Age : 67
Localisation : MOKNINE (Tunisie)

Voir le profil de l'utilisateur http://papydall-panoramic.forumarabia.com

Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum