Égonométrie / Code

Le code de l'égonométrie est créé en 1998 en LISP au sein du laboratoire GRCAO de l'Université de Montreal. Porté en moteur interactif en 2001 sur une technologie JAVA, en 2020, la technologie JS + P5 est utilisée. 

 

15 Tableaux numériques JIT - Ecran 

P5JS code

function egonometricPoint(x, y, z) {
    // dx, dy, dz : l'écart entre le point et l'observateur
    dx = x - obsX;
    dy = y - obsY;
    dz = z - obsZ;
    // distance : la diagonale horizontale entre l'observateur et le point 
    distance = sqrt(dx * dx + dy * dy);
    // longitude : l'angle horizontal du point par rapport à l'observateur
    longitude = atan( dy/dx);

    // on ajoute l'angle d'observation
    longitude = longitude + obsA;
    if (dx < 0) {

       longitude = PI + longitude;}
    // latitude : l'angle vertical. 
    latitude = atan (dz / distance) ;
    if ( distance < 0) {

        latitude = PI + latitude;}
    //arc : le développé sur la sphere de projection
    darc = (latitude + HALF_PI) / PI;
    // calcul des coordonnées cartésiennes du point projeté en base 1
    ex = darc * cos(longitude);
    ey = darc * sin(longitude);

}