pers


perspective

Principe
pers
abs
Cylindrique
normale
Conique
Courbe
Procédurale
screen
Adaptative
Voir aussi

Principe

Par défaut les bases de données (supposées définies en 3D dans le repère absolu) sont mises en perspective par la méthode classique de la perspective linéaire par projection conique des points 3D sur le plan du tableau, le sommet du cone est l´oeil qui regarde vers le point de vue , avec une certaine focale et un certain roulis.
La perspective cylindrique, une perspective courbe, la perspective procédurale et la perspective adaptative sont accessibles en temps réel.

pers

pers

Retourne le type de la perspective.

pers(p)

Active la perspective de type :
p=0: cylindrique (cavalière ou normal).
p=1: conique (par défaut).
p=2: courbe.
p<0: procédurale.

pers(x1,y1,z1,x2,y2,z2,...)

       Retourne la projection perspective de la ligne polygonale 3D de sommets (x1,y1,z1), (x2,y2,z2), ...
Exemples:
1) pers 100,200,300: Retourne la perspective du point de coordonnées absolues 100,200,300
2) pers(CG vol 1): Retourne la perspective du center de gravité du volume num
3) pers(CG(poi[1,4] vol 1)): Retourne la perspective du center de gravité des points 1,2,3 et 4 du volume num

pers abs

pers abs view(id)

Retourne la matrice de passage du repère de la perspective au repère absolu de la view(id)..

Perspective cylindrique

pers(0)

ou no pers
        Active la perspective cylindrique (ou encore normal ou cavalière).

pers normal

pers normal

En no pers, retourne les 9 paramètres (xo,yo,zo, xc,yc,zc, xup,yup,zup) définissant la transformation gluLookAt d´OpenGL.
       xo,yo,zo = position de l´oeil.
       xc,yc,zc = position du point de référence.
       xup,yup,zup = direction du vecteur up.

pers normal(xo,yo,zo, xc,yc,zc, xup,yup,zup)

Modifie ces paramètres.

Perspective conique

pers(0)

ou no pers
        Active la perspective conique (par défaut).

Perspective courbe

pers(2)

Active la perspective courbe: les rayons lumineux ne sont plus des droites mais par des arcs de cercles passant par l´oeil, la fuite et le point à mettre en perspective.
Remarque: cette perspective est calculée dans le bloc poi à partir du bloc poi validate, c´est pourquoi il est nécessaire de faire validate(1)poi vol(id) chaque fois que la géométrie du volume id est changée, et validate(-1)poi vol(id) au sortir de ce mode de perspective.

Perspective procédurale

pers(p<0)

Active la perspective procédurale exécutée par la fonction pers_utilisateur() du fichier utilb.c

pers screen

pers screen view(id)

Retourne la matrce de passage du repè de la perspective au repè de l´écran de la view(id).

Perspective adaptative

En définissant des fonctions locales sur une vue, si yes local et si si yes view sont actifs, ces fonctions constituent un programme encapsulé dans la vue et qui sera exécuté à chaque invocation de cette vue. Voir un exemple dans la fonction VIEW() du fichier demo1_local.func

Voir aussi:


abs eye view
abs pers view
eye abs view
eye pers view
inv pers
no pers
status
yes pers