Changeset 213 in Sophya for trunk/SophyaPI
- Timestamp:
- Mar 5, 1999, 2:48:06 PM (27 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/SophyaPI/PIext/pihisto2d.cc
r210 r213 48 48 void PIHisto2D::UseColors(bool fg, CMapId cmap) 49 49 // 50 // Choix de la couleur si fg=true 50 // Choix de la couleur si fg=true avec la color map cmap. 51 51 // (pour la couleur cmap cf picmap.h). 52 // Independamment du choix du display, la dynamique est 53 // codee sur la color map donnant ainsi une double 54 // information. Par exemple, carres de tailles variables 55 // en couleur. Cette option est incontournable dans le cas 56 // d'un display par des carres de taille fixe. 52 57 //-- 53 58 { … … 58 63 void PIHisto2D::UseScale(unsigned short type,float logscale) 59 64 // 60 // Pour changer les echelles .65 // Pour changer les echelles (lineaire ou logarithmique) 61 66 //| Type = 0 : echelle lineaire 62 67 //| = 1 : echelle log10 63 //| - Explication du codage en type=1 (log10) :64 //| 1 -/ map lineaire :65 //| [0,1] -> [lmin,lmax]66 //| f -> F = lmin+f*(lmax-lmin)67 //| 2-/ transformation log10:68 //| [lmin,lmax] -> [log10(lmin),log10(lmax)]69 //| F -> LF = lg10(F)70 //| 3-/ rescaling entre 0 et 1 :71 //| [log10(lmin),log10(lmax)] -> [0,1]72 //| LF -> (LF-log10(lmin))/(log10(lmax)-log10(lmin))73 //| soit en definissant logscale = lmax/lmin74 //| LF = log10(1.+f*(logscale-1))/log10(logscale)68 //| -**- Explication du codage en type=0 (lineaire) : 69 //| 1. [hmin,hmax] -> [0,1] 70 //| h -> f = (h-hmin)/(hmax-hmin) 71 //| 2. codage de f=[0,1] sur la dynamique du display choisi 72 //| -**- Explication du codage en type=1 (logarithmique base 10) : 73 //| 1. map lineaire entre 0 et 1: 74 //| [hmin,hmax] -> [0,1] 75 //| h -> f = (h-hmin)/(hmax-hmin) 76 //| 2. transformation logarithmique de base 10 : 77 //| [0,1] -> [0,1] 78 //| f -> lf = log10(1.+f*(logscale-1))/log10(logscale) 79 //| 3. codage de lf=[0,1] sur la dynamique du display choisi 75 80 //-- 76 81 { … … 93 98 //| Type = 2 : code a la "hbook2" " .+123...9AB...YZ*" 94 99 //| (cf detail PIHisto2D::HPrint2) 95 //| Type = 3 : carres de taille s fixes(couleur).100 //| Type = 3 : carres de taille fixe (couleur). 96 101 //-- 97 102 { … … 108 113 // 109 114 // Gestion de la dynamique a representer: 110 // la dynamique va etre transformee de [hmin,hmax] vers [0,1]. 115 //| La dynamique va etre transformee de [hmin,hmax] vers [0,1] selon 116 //| [hmin,hmax] -> [0,1] 117 //| h -> f = (h-hmin)/(hmax-hmin) 118 //| Par la suite selon ce qui est demande, f va coder le display ou etre 119 //| transforme en une autre echelle [0,1]. 120 //| Si hmax<=hmin, ils sont forces a la dynamique totale de l'histo2D. 111 121 //-- 112 122 { … … 121 131 // Pour definir la fraction de la dynamique a dessiner: 122 132 //| Certains type de display (f=[0,1] cf PIHisto2D::UseDyn), 123 //| - on ne dessine rien si f <= frmin 124 //| - on limite l'excursion a f*frmax cad [...,frmax] 133 //| - on ne dessine rien si f <= frmin dans les cas de display avec 134 //| des nuages de points ou des carres de tailles variables. 135 //| Pour un display "a la hbook2" on force frmin = 0. 136 //| - frmax n'est utilise que pour la representation avec 137 //| des carres de tailles variables: c'est la taille 138 //| maximum que peut avoir le carre exprimee en unite 139 //| de la taille du bin (ex: si frmax=0.8 le carre 140 //| le + grand qui pourra etre dessine dans un bin 141 //| aura une taille egale a 0.8*(taille du bin)). 125 142 //-- 126 143 { … … 160 177 // 161 178 // Dessin de l'histogramme. 179 //| Code de dessin selon choix des options: 180 //| (detail voir UseColors UseScale UseDisplay UseDyn UseFrac) 181 //| [hmin,hmax] -> [0,1] [[ -> re-codage log10 entre [0,1] ]] -> f=[0,1] 182 //| Puis selon display: 183 //| 0 carres variables : if(f>fracmin) taille carre = f*fracmax *taille_du_bin 184 //| 1 nuage de points : if(f>fracmin) npoints = f*PerPt *npoints_ecran_dans_bin 185 //| 2 code hbook2 : if(f>0) map de f=]0,1] dans ".+...Z*" 186 //| 3 carres fixes : couleur = lut[f*nombre_d_entree_dans_la_lut] 162 187 //-- 163 188 {
Note:
See TracChangeset
for help on using the changeset viewer.