From 0bbed15383617f6e6e9aa6552dfee05eca323c16 Mon Sep 17 00:00:00 2001 From: Adrien Destugues Date: Mon, 13 Oct 2008 19:38:58 +0000 Subject: [PATCH] Removed the useless "squares table" wich only worked for resolutions <= 1024 px. git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@245 416bcca6-2ee7-4201-b75f-2eb2f807beb1 --- divers.c | 14 ++++++-------- global.h | 1 - init.c | 10 ---------- main.c | 3 --- 4 files changed, 6 insertions(+), 22 deletions(-) diff --git a/divers.c b/divers.c index 40ede2d3..a5315a38 100644 --- a/divers.c +++ b/divers.c @@ -420,9 +420,9 @@ void Ellipse_Calculer_limites(short Rayon_horizontal,short Rayon_vertical) { uint64_t Ellipse_Limite; Ellipse_Rayon_horizontal_au_carre = - Table_des_carres[Rayon_horizontal]; + Rayon_horizontal * Rayon_horizontal; Ellipse_Rayon_vertical_au_carre = - Table_des_carres[Rayon_vertical]; + Rayon_vertical * Rayon_vertical; Ellipse_Limite = Ellipse_Rayon_horizontal_au_carre * Ellipse_Rayon_vertical_au_carre; Ellipse_Limite_Low = Ellipse_Limite & 0xFFFFFFFF; Ellipse_Limite >>= 32; @@ -431,10 +431,8 @@ void Ellipse_Calculer_limites(short Rayon_horizontal,short Rayon_vertical) byte Pixel_dans_ellipse(void) { - uint64_t ediesi = Table_des_carres[abs(Ellipse_Curseur_X)] * - (Ellipse_Rayon_vertical_au_carre) + - Table_des_carres[abs(Ellipse_Curseur_Y)] * - (Ellipse_Rayon_horizontal_au_carre); + uint64_t ediesi = Ellipse_Curseur_X * Ellipse_Curseur_X * Ellipse_Rayon_vertical_au_carre + + Ellipse_Curseur_Y * Ellipse_Curseur_Y * Ellipse_Rayon_horizontal_au_carre; if((ediesi >> 32) <= Ellipse_Limite_High && (ediesi & 0xFFFFFFFF) <= Ellipse_Limite_Low) return 255; @@ -443,8 +441,8 @@ byte Pixel_dans_ellipse(void) byte Pixel_dans_cercle(void) { - if((Table_des_carres[abs(Cercle_Curseur_X)] + - Table_des_carres[abs(Cercle_Curseur_Y)] ) <= Cercle_Limite) + if(Cercle_Curseur_X * Cercle_Curseur_X + + Cercle_Curseur_Y * Cercle_Curseur_Y <= Cercle_Limite) return 255; return 0; } diff --git a/global.h b/global.h index f999dace..f8ed9de9 100644 --- a/global.h +++ b/global.h @@ -489,7 +489,6 @@ GLOBAL word TABLE_ZOOM[NB_FACTEURS_DE_ZOOM][512]; // Données sur les ellipses et les cercles: -GLOBAL dword Table_des_carres[1025]; GLOBAL long Ellipse_Curseur_X; GLOBAL long Ellipse_Curseur_Y; GLOBAL long Ellipse_Rayon_vertical_au_carre; diff --git a/init.c b/init.c index 86dacfb9..b3464072 100644 --- a/init.c +++ b/init.c @@ -2089,16 +2089,6 @@ void Initialiser_les_tables_de_multiplication(void) } } - -void Initialiser_la_table_des_carres(void) -{ - long Indice; - - for (Indice=0;Indice<1025;Indice++) - Table_des_carres[Indice]=(Indice*Indice); -} - - void Initialiser_la_table_precalculee_des_distances_de_couleur(void) { int Indice; diff --git a/main.c b/main.c index 2fceed4d..001ae1f0 100644 --- a/main.c +++ b/main.c @@ -359,9 +359,6 @@ void Initialisation_du_programme(int argc,char * argv[]) Forcer_affichage_curseur=0; - // On initialise la table des carrés: - Initialiser_la_table_des_carres(); - // On initialise tout ce qui concerne les opérations et les effets Operation_Taille_pile=0; Mode_de_dessin_en_cours=OPERATION_DESSIN_CONTINU;