Exemple #1
0
        /// <summary>
        /// Prédicat vrai si et seulement si le graphe de Gabriel comporte l'arête entre s1 et s2
        /// </summary>
        public bool DoiventEtreRelies(Sommet s1, Sommet s2)
        {
            Sommet s0 = s1.CalculeMilieu(s2);       //Milieu de s1 et s2
            double r  = s1.CalculeDistance(s2) / 2; //Rayon du disque ouvert d'exclusion

            foreach (Sommet s in Sommets)
            {
                if (s.CalculeDistance(s0) < r)            //Si un sommet est dans le disque ouvert
                {
                    if (!s.IsEqual(s1) && !s.IsEqual(s2)) //Pour ne pas tester le sommet avec lui-même
                    {
                        return(false);                    //Sortie de boucle si un sommet est dans le domaine d'exclusion
                    }
                }
            }
            return(true);
        }
Exemple #2
0
 public Arete(Sommet s1, Sommet s2)
 {
     S1   = s1;
     S2   = s2;
     Cout = S1.CalculeDistance(S2);
 }