//
        public Dictionary <string, Color> GetTableCouleursDegradees(List <string> p_classesTriees, enumProgressionCouleurs p_progressionCouleur, int p_alpha, bool p_croissantSinonDecroissant)
        {
            Dictionary <string, Color> v_tableCouleurs = new Dictionary <string, Color>();

            try
            {
                Dictionary <int, Color> v_tab = GetTableCouleursDegradees(p_classesTriees.Count, p_progressionCouleur, p_alpha, p_croissantSinonDecroissant);
                int v_index = 0;
                foreach (KeyValuePair <int, Color> v_col in v_tab)
                {
                    v_tableCouleurs.Add(p_classesTriees[v_index], v_col.Value);
                    v_index++;
                }
            }
            catch (Exception)
            {
                throw;
            }
            return(v_tableCouleurs);
        }
        public Dictionary <int, Color> GetTableCouleursDegradees(int p_nbreClasses, enumProgressionCouleurs p_progressionCouleur, int p_alpha = 120, bool p_croissantSinonDecroissant = true)
        {
            Dictionary <int, Color> v_tableCouleurs = new Dictionary <int, Color>();

            try
            {
                Color v_couleur;
                int   v_pasDIncremetation = Convert.ToInt16(Math.Round((double)255 / p_nbreClasses));
                int   v_niveauCouleurRef;
                int   v_niveauCouleurInverseRef;
                if (p_croissantSinonDecroissant)
                {
                    v_niveauCouleurRef        = v_pasDIncremetation;
                    v_niveauCouleurInverseRef = 255;
                }
                else
                {
                    v_niveauCouleurRef        = 255;
                    v_niveauCouleurInverseRef = v_pasDIncremetation;
                }
                //
                for (int v_indexClasse = 1; v_indexClasse <= p_nbreClasses; v_indexClasse++)
                {
                    switch (p_progressionCouleur)
                    {
                    case enumProgressionCouleurs.red:
                        v_couleur = Color.FromScRgb(p_alpha, v_niveauCouleurRef, 0, 0);
                        break;

                    case enumProgressionCouleurs.green:
                        v_couleur = Color.FromScRgb(p_alpha, 0, v_niveauCouleurRef, 0);
                        break;

                    case enumProgressionCouleurs.blue:
                        v_couleur = Color.FromScRgb(p_alpha, 0, 0, v_niveauCouleurRef);
                        break;

                    case enumProgressionCouleurs.greenVersRed:
                        v_couleur = Color.FromScRgb(p_alpha, v_niveauCouleurRef, v_niveauCouleurInverseRef, 0);
                        break;

                    default:
                        throw new Exception("Méthode " + p_progressionCouleur + " non implémentée.");
                    }
                    v_tableCouleurs.Add(v_indexClasse, v_couleur);
                    if (p_croissantSinonDecroissant)
                    {
                        v_niveauCouleurRef += v_pasDIncremetation;
                        v_niveauCouleurRef -= v_pasDIncremetation;
                    }
                    else
                    {
                        v_niveauCouleurRef -= v_pasDIncremetation;
                        v_niveauCouleurRef += v_pasDIncremetation;
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }
            return(v_tableCouleurs);
        }
Exemple #3
0
 public void GetVisuPointsAlti(List <BeanPoint_internal> p_points, int p_nbreClasses, bool p_croissantSinonDecroissant, enumModeSeuillage p_methodeDeSeuillage, enumProgressionCouleurs p_progressionCouleurs, int p_alpha, int p_taillePointAutoSi0OuMoins)
 {
     try
     {
         int param_ratioTaillePoint = 100;
         int v_taillePoints         = p_taillePointAutoSi0OuMoins;
         if (p_taillePointAutoSi0OuMoins <= 0)
         {
             v_taillePoints = GetTailleAffichageDuPoint(p_points, param_ratioTaillePoint);
         }
         //
         Dictionary <string, List <BeanPoint_internal> > v_classifDesPoints;
         v_classifDesPoints = FVisualisationServices.createSeuillageServices().GetPointsParClasseOrdonnees(p_points, p_nbreClasses, p_methodeDeSeuillage);
         Dictionary <string, Color> v_tableCouleurs;
         v_tableCouleurs = FVisualisationServices.createVisualisationSpatialTraceServices().GetTableCouleursDegradees(v_classifDesPoints.Keys.ToList(), p_progressionCouleurs, p_alpha, p_croissantSinonDecroissant);
         //
         GetVisuPointsAlti(v_classifDesPoints, v_tableCouleurs, v_taillePoints);
     }
     catch (Exception)
     {
         throw;
     }
 }