Exemplo n.º 1
0
 /// <summary>
 /// Cosntructeur vide d'un aéroport
 /// </summary>
 public Aeroport()
 {
     m_nom              = "null";
     m_localisation     = new PositionGeo();
     m_listAeronef      = new List <Aeronef>();
     m_achalPassager    = 0;
     m_achalMarchandise = 0;
 }
Exemplo n.º 2
0
        /// <summary>
        /// Obtient une position random pour le feu
        /// </summary>
        /// <param name="width">Width de la carte</param>
        /// <param name="height">Height de la carte</param>
        /// <param name="rand">Random</param>
        /// <returns>PositionGeo aléatoire dans la carte</returns>
        public override PositionGeo randomPosition(int width, int height, Random rand)
        {
            PositionGeo position = new PositionGeo();

            position.PosX = rand.Next(width);
            position.PosY = rand.Next(height);

            return(position);
        }
Exemplo n.º 3
0
 /// <summary>
 /// Cosntructeur d'un aéroport
 /// </summary>
 /// <param name="p_nom">Nom de l'aeroport</param>
 /// <param name="p_achalMarchandise">Nombre représentant l'achalandage des marchandises de l'aeroport</param>
 /// <param name="p_achalPassager">Nombre représentant l'achalandage des passagers de l'aeroport</param>
 public Aeroport(string p_nom, int p_achalMarchandise, int p_achalPassager)
 {
     m_listAeronef      = new List <Aeronef>();
     m_listClient       = new List <Client>();
     m_nom              = p_nom;
     m_achalPassager    = p_achalPassager;
     m_achalMarchandise = p_achalMarchandise;
     m_localisation     = new PositionGeo();
     m_image            = Properties.Resources.airport;
 }
Exemplo n.º 4
0
 /// <summary>
 /// Constructeur vide d'aeroincendie.
 /// </summary>
 public AeroIncendie() : base()
 {
     m_nom              = "null";
     m_vitesse          = 0;
     m_tempsEnt         = 0;
     m_dispo            = true;
     m_origine          = new PositionGeo();
     m_image            = null;
     m_nbAller          = 0;
     this.m_indexClient = -1;
 }
Exemplo n.º 5
0
 /// <summary>
 ///  Constructeur d'Aeronef de secours
 /// </summary>
 /// <param name="nom">Nom de l'aeronef</param>
 /// <param name="type">Type de l'aeronef</param>
 /// <param name="vitesse">Vitesse de l'aeronef</param>
 /// <param name="entretien">Temps d'entretien de l'aeronef</param>
 /// <param name="origine">Origine de l'aeronef</param>
 /// <param name="nbAller">Nombre d'aller retour que l'aeronef doit effectuer</param>
 public AeroSecours(string nom, string type, int vitesse, int entretien, PositionGeo origine, int nbAller) : base(nom, type, vitesse, entretien, origine)
 {
     this.m_nom         = nom;
     this.m_type        = type;
     this.m_vitesse     = vitesse;
     this.m_tempsEnt    = entretien;
     this.m_origine     = origine;
     this.m_dispo       = true;
     this.m_indexClient = -1;
     this.m_nbAller     = nbAller;
 }
Exemplo n.º 6
0
 /// <summary>
 /// Constructeur vide d'aeronef.
 /// </summary>
 public Aeronef()
 {
     m_nom              = "null";
     m_vitesse          = 0;
     m_tempsEnt         = 0;
     m_localisation     = new PositionGeo();
     m_origine          = new PositionGeo();
     this.m_dispo       = true;
     this.m_indexClient = -1;
     this.m_etat        = new Etat(this);;
 }
Exemplo n.º 7
0
 /// <summary>
 /// Constructeur complex AeroIncendie.
 /// </summary>
 /// <param name="nom">Nom de l'aeronef</param>
 /// <param name="vitesse">Vitesse de l'aeronef</param>
 /// <param name="entretien">Temps d'entretien de l'aeronef</param>
 /// <param name="origine">Point d'origine de l'aeronef</param>
 /// <param name="type">Type de l'areonef</param>
 public AeroIncendie(string nom, string type, int vitesse, int entretien, PositionGeo origine) : base(nom, type, vitesse, entretien, origine)
 {
     this.m_nom         = nom;
     this.m_type        = type;
     this.m_vitesse     = vitesse;
     this.m_tempsEnt    = entretien;
     this.m_dispo       = true;
     this.m_origine     = origine;
     this.m_image       = Properties.Resources.incendie;
     this.m_nbAller     = 0;
     this.m_indexClient = -1;
 }
Exemplo n.º 8
0
 /// <summary>
 /// Constructeur d'aeronef.
 /// </summary>
 /// <param name="nom">Nom de l'aeronef</param>
 /// <param name="vitesse">Vitesse de l'aeronef</param>
 /// <param name="entretien">Temps d'entretien de l'aeronef</param>
 /// <param name="origine">Point d'origine de l'aeronef</param>
 public Aeronef(string nom, string type, int vitesse, int entretien, PositionGeo origine)
 {
     this.m_nom          = nom;
     this.m_type         = type;
     this.m_vitesse      = vitesse;
     this.m_tempsEnt     = entretien;
     this.m_localisation = null;
     this.m_origine      = origine;
     this.m_dispo        = true;
     this.m_etat         = new Etat(this);
     this.m_indexClient  = -1;
 }
Exemplo n.º 9
0
 /// <summary>
 /// Constructeur complex d'AeroObservateur
 /// </summary>
 /// <param name="nom">Nom de l'aeronef</param>
 /// <param name="vitesse">Vitesse de l'aeronef</param>
 /// <param name="entretien">Temps d'entretien de l'aeronef</param>
 /// <param name="origine">Point d'origine de l'aeronef</param>
 /// <param name="nbAller">Nombre d'aller que l'aeronef fait</param>
 /// <param name="rayon">Rayon d'un tour complet de l'aeronef</param>
 /// <param name="type">type de l'areonef</param>
 public AeroObservateur(string nom, string type, int vitesse, int entretien, PositionGeo origine, int nbAller, int rayon) : base(nom, type, vitesse, entretien, origine)
 {
     this.m_nom         = nom;
     this.m_type        = type;
     this.m_vitesse     = vitesse;
     this.m_tempsEnt    = entretien;
     this.m_origine     = origine;
     this.m_dispo       = true;
     this.m_nbAller     = nbAller;
     this.m_rayon       = rayon;
     this.m_indexClient = -1;
 }
Exemplo n.º 10
0
 /// <summary>
 /// Constructeur vide d'AeroMarchandise
 /// </summary>
 public AeroMarchandise() : base()
 {
     m_nom               = "null";
     m_vitesse           = 0;
     m_tempsEnt          = 0;
     m_origine           = new PositionGeo();
     m_tempsEmb          = 0;
     m_tempsDeb          = 0;
     m_capacite          = 0;
     m_image             = null;
     this.m_indexClient  = -1;
     m_clientDestination = new PositionGeo();
 }
Exemplo n.º 11
0
 /// <summary>
 /// Constructeur complex d'AeroMarchandise
 /// </summary>
 /// <param name="nom">Nom de l'aeronef</param>
 /// <param name="vitesse">Vitesse de l'aeronef</param>
 /// <param name="entretien">Temps d'entretien de l'aeronef</param>
 /// <param name="origine">Point d'origine de l'aeronef</param>
 /// <param name="charger">Temps de chargement de l'aeronefe</param>
 /// <param name="decharger">Temps de déchargement de l'aeronef</param>
 /// <param name="change">Capacité de l'aeronef</param>
 public AeroMarchandise(string nom, string type, int vitesse, int entretien, PositionGeo origine, int charger, int decharger, int change) : base(nom, type, vitesse, entretien, origine, charger, decharger)
 {
     this.m_nom          = nom;
     this.m_type         = type;
     this.m_vitesse      = vitesse;
     this.m_tempsEnt     = entretien;
     this.m_origine      = origine;
     this.m_tempsEmb     = charger;
     this.m_tempsDeb     = decharger;
     this.m_capacite     = change;
     this.m_indexClient  = -1;
     m_clientDestination = new PositionGeo();
 }
Exemplo n.º 12
0
        /// <summary>
        /// Avance l'avion vers sa destination
        /// </summary>
        /// <param name="tempsPasse">Minute passée dans la simulation pendant le tick</param>
        /// <param name="clients">Liste des clients dans l'aéroport auquel appartient l'aéronef</param>
        public override void avancer(int tempsPasse, List <Client> clients)
        {
            int x = m_positionActuelle.PosX;
            int y = m_positionActuelle.PosY;

            int clientX = clients[m_aeronef.IndexClient].Destination.PosX;
            int clientY = clients[m_aeronef.IndexClient].Destination.PosY;

            double distance = pythagore(clientX - x, clientY - y);
            double ticks    = distance / (m_aeronef.Vitesse * tempsPasse);

            m_positionActuelle.PosX += Convert.ToInt32((clientX - x) / ticks);
            m_positionActuelle.PosY += Convert.ToInt32((clientY - y) / ticks);

            //Selon le type de l'aéonef, le dirige vers le prochain état
            switch (m_aeronef.Type)
            {
            case "Secours":
                if (m_positionActuelle.Equals(clients[m_aeronef.IndexClient].Destination))
                {
                    PositionGeo tempo = m_aeronef.Origine;
                    m_aeronef.Origine = clients[m_aeronef.IndexClient].Destination;
                    clients[m_aeronef.IndexClient].Destination = tempo;
                }
                else
                {
                }
                break;

            case "Incendies":
                if (true)
                {
                }
                break;

            default:
                break;
            }
        }
Exemplo n.º 13
0
 /// <summary>
 /// Cosntructeur de distance
 /// </summary>
 /// <param name="nom"></param>
 /// <param name="type"></param>
 /// <param name="vitesse"></param>
 /// <param name="entretien"></param>
 /// <param name="origine"></param>
 public Distance(string nom, string type, int vitesse, int entretien, PositionGeo origine) : base(nom, type, vitesse, entretien, origine)
 {
 }
Exemplo n.º 14
0
 /// <summary>
 /// Constructeur vide de transport
 /// </summary>
 /// <param name="nom"></param>
 /// <param name="type"></param>
 /// <param name="vitesse"></param>
 /// <param name="entretien"></param>
 /// <param name="origine"></param>
 /// <param name="charger"></param>
 /// <param name="decharger"></param>
 public Transport(string nom, string type, int vitesse, int entretien, PositionGeo origine, int charger, int decharger) : base(nom, type, vitesse, entretien, origine)
 {
 }
Exemplo n.º 15
0
        /// <summary>
        /// Obtient une position aléatoire pour la génération d'un client
        /// </summary>
        /// <param name="width">Width de la carte</param>
        /// <param name="height">Height de la carte</param>
        /// <param name="rand">Aléatoire</param>
        /// <returns>Retourne une position geographique</returns>
        virtual public PositionGeo randomPosition(int width, int height, Random rand)
        {
            PositionGeo position = new PositionGeo();

            return(position);
        }