public static LieuCle buildAndAddLieuCle(TypeDeLieu type, CouleurEquipe couleur, PointOriente pt, ElementSurface surfaceControle, double toleranceAngulaire) { LieuCle retour = new LieuCle(type, pt, surfaceControle, toleranceAngulaire); addLieuCle(type, couleur, retour); return(retour); }
public static void startActions(ModeOperatoire mode, TypeRobot type, CouleurEquipe couleur) { Informations.printInformations(Priority.HIGH, "Starting actions with mod : " + mode.ToString() + " & type : " + type.ToString()); if (ACTION_PER_TYPE.Contains(mode)) { if (((Hashtable)ACTION_PER_TYPE[mode]).Contains(type)) { if (((Hashtable)((Hashtable)ACTION_PER_TYPE[mode])[type]).Contains(couleur)) { Informations.printInformations(Priority.HIGH, "Lancement de l'action mère avec le mode " + mode.ToString() + " & type : " + type.ToString() + " & couleur " + couleur.ToString()); ((Action)((Hashtable)((Hashtable)ACTION_PER_TYPE[mode])[type])[couleur]).Execute(); return; } else { Informations.printInformations(Priority.HIGH, "MODE INTROUVABLE : Impossible de lancer l'action mère (introuvable) pour la couleur : " + couleur.ToString()); } } else { Informations.printInformations(Priority.HIGH, "MODE INTROUVABLE : Impossible de lancer l'action mère (introuvable) pour le mode : " + mode.ToString()); } } else { Informations.printInformations(Priority.HIGH, "TYPE INTROUVABLE : Impossible de lancer l'action mère (introuvable) pour le type : " + type.ToString()); } }
private static void addLieuCle(TypeDeLieu type, CouleurEquipe couleur, LieuCle lieu) { if (!LIEUX_CLES.Contains(couleur)) { LIEUX_CLES.Add(couleur, new Hashtable()); } ((Hashtable)LIEUX_CLES[couleur]).Add(type, lieu); }
public static LieuCle GetLieuCleFor(TypeDeLieu type, CouleurEquipe couleur) { if (LIEUX_CLES.Contains(couleur)) { Hashtable lieux_associes = (Hashtable)LIEUX_CLES[couleur]; if (lieux_associes.Contains(type)) { return((LieuCle)lieux_associes[type]); } } return(null); }
/* ********************************** FIN TEST ROBOT 1 ****************************** */ /// <summary> /// Fin de la liste des composants /// </summary> public Robot(composants.IHM.Parametrization parametrization) { this.typeRobot = parametrization.GetTypeRobot(); this.modeOperatoire = parametrization.GetModeOperatoire(); this.couleurEquipe = parametrization.GetCouleurEquipe(); //ecranTactile = new DisplayTE35(14, 13, 12, 10); // L'écran tactile est présent sur chaque robot parametrization.startMethod += this.Start; robot = this; loadComponents(); }
/* ********************************** FIN TEST ROBOT 1 ****************************** */ /// <summary> /// Fin de la liste des composants /// </summary> public Robot(composants.IHM.Parametrization parametrization, composants.IHM.C_IHM IHM) { this.IHM = IHM; Debug.Print("Querying type..."); this.typeRobot = parametrization.GetTypeRobot(); Debug.Print("Got type : " + typeRobot.ToString()); Debug.Print("Querying mode operatoire..."); this.modeOperatoire = parametrization.GetModeOperatoire(); Debug.Print("Got mode : " + modeOperatoire.ToString()); Debug.Print("Querying couleur..."); this.couleurEquipe = parametrization.GetCouleurEquipe(); Debug.Print("Got couleur : " + Couleur.ToString()); //ecranTactile = new DisplayTE35(14, 13, 12, 10); // L'écran tactile est présent sur chaque robot parametrization.startMethod += this.Start; robot = this; loadComponents(); new Thread(() => { while (true) { Thread.Sleep(this.BASE_ROULANTE.REFRESH_RATE_KANGAROO); this.BASE_ROULANTE.kangaroo.CheckMovingStatus(); } }).Start(); /* * if (this.TypeRobot == TypeRobot.PETIT_ROBOT) * { * new Thread(() => * { * while (true) * { * //Thread.Sleep(PR_ULTRASON.REFRESH_RATE); * PR_ULTRASON.detectObstacle(null); * } * }).Start(); * }*/ /*Debug.Print("Starting ROBOT !!!"); * parametrization.startMethod();*/ }
private static void setMotherAction(ModeOperatoire mode, TypeRobot type, CouleurEquipe couleur, Action a) { if (!ACTION_PER_TYPE.Contains(mode)) { ACTION_PER_TYPE.Add(mode, new Hashtable()); } if (!((Hashtable)ACTION_PER_TYPE[mode]).Contains(type)) { ((Hashtable)ACTION_PER_TYPE[mode]).Add(type, new Hashtable()); } if (((Hashtable)((Hashtable)ACTION_PER_TYPE[mode])[type]).Contains(couleur)) { ((Hashtable)((Hashtable)ACTION_PER_TYPE[mode])[type])[couleur] = a; } else { ((Hashtable)((Hashtable)ACTION_PER_TYPE[mode])[type]).Add(couleur, a); } Informations.printInformations(Priority.MEDIUM, "actions mere set pour le type " + type + " & le mode " + mode + " & couleur " + couleur); }
/// <summary> /// Configure la fenetre de competition avec les parametre du robot /// </summary> /// <param name="type">Type de Robot</param> /// <param name="couleur">Couleur de l'equipe</param> internal void defineRobotParam(TypeRobot type, CouleurEquipe couleur) { TextBlock indicatifRobot; indicatifRobot = (TextBlock)m_window.GetChildByName("indicatifRobot"); switch (type) { case TypeRobot.GRAND_ROBOT: indicatifRobot.Text = "GRAND_ROBOT"; break; case TypeRobot.PETIT_ROBOT: indicatifRobot.Text = "PETIT_ROBOT"; break; default: indicatifRobot.Text = "Robot type inconnu"; break; } switch (couleur) { case CouleurEquipe.VERT: indicatifRobot.BackColor = Colors.Green; break; case CouleurEquipe.ORANGE: indicatifRobot.BackColor = Colors.Orange; break; default: indicatifRobot.BackColor = Colors.Blue; break; } }
public CustomParametrization(TypeRobot typeRobot, ModeOperatoire modeOperatoire, CouleurEquipe couleurEquipe) { this.typeRobot = typeRobot; this.modeOperatoire = modeOperatoire; this.couleurEquipe = couleurEquipe; }
public static LieuCle buildAndAddLieuCle(TypeDeLieu type, CouleurEquipe couleur, PointOriente pt) { return(buildAndAddLieuCle(type, couleur, pt, SURFACE_DE_CONTROLE_STANDARD, TOLERANCE_ANGULAIRE_STANDARD)); }