# SOME DESCRIPTIVE TITLE # Copyright (C) YEAR Free Software Foundation, Inc. # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # # msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "POT-Creation-Date: 2013-10-24 08:59+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #. type: One-char language identifier #: train402.languagecode:1 #, no-wrap msgid "E" msgstr "F" # #. type: Title-text #: train402/scene.txt:1 #, no-wrap msgid "train402:Radar" msgstr "train402:Radar" # #. type: Resume-text #: train402/scene.txt:2 #, no-wrap msgid "train402:Use the radar to find lots of stupid blue crosses." msgstr "train402:Utilisez le radar pour trouver des objets répartis aléatoirement." # #. type: ScriptName-text #: train402/scene.txt:3 #, no-wrap msgid "train402:Find" msgstr "train402:Cherche" #. type: \b; header #: train402-help/tradar1.txt:1 #, no-wrap msgid "Exercise" msgstr "" #. type: Plain text #: train402-help/tradar1.txt:3 #, no-wrap msgid "Let the bot find all the blue crosses on the ground. As soon as the bot passed over one of the crosses, it will disappear. Here is the general principle that you will apply:" msgstr "" #. type: Plain text #: train402-help/tradar1.txt:5 #, no-wrap msgid "Repeat forever:\n" msgstr "" #. type: Bullet: 'o' #: train402-help/tradar1.txt:5 #, no-wrap msgid "Look for a cross" msgstr "" #. type: Bullet: 'o' #: train402-help/tradar1.txt:6 #, no-wrap msgid "If there is none, stop the program." msgstr "" #. type: Bullet: 'o' #: train402-help/tradar1.txt:7 #, no-wrap msgid "Calculate the direction of the cross." msgstr "" #. type: Bullet: 'o' #: train402-help/tradar1.txt:8 #, no-wrap msgid "Set the speed of the motors in such a way that they will find their way to the cross." msgstr "" #. type: \b; header #: train402-help/tradar1.txt:10 #, no-wrap msgid "The program" msgstr "" #. type: Plain text #: train402-help/tradar1.txt:12 #, no-wrap msgid "Use a while loop in order to repeat several instructions over and over:" msgstr "" #. type: \s; block (usually verbatim code) #: train402-help/tradar1.txt:16 #, no-wrap msgid "" "while ( true )\n" "{\n" "\tinstructions...\n" "}" msgstr "" #. type: Plain text #: train402-help/tradar1.txt:18 #, no-wrap msgid "The instruction radar will detect the blue crosses and put their description into a variable, for example spot. In this case, radar() needs only one parameter, i.e. the category of the object that it must look for:" msgstr "" #. type: \s; block (usually verbatim code) #: train402-help/tradar1.txt:19 #, no-wrap msgid "spot = radar(WayPoint);" msgstr "" #. type: Plain text #: train402-help/tradar1.txt:21 #, no-wrap msgid "Once all the crosses have been found, radar will return the value null. You will have to test this case and react accordingly with the instruction if:" msgstr "" #. type: \s; block (usually verbatim code) #: train402-help/tradar1.txt:26 #, no-wrap msgid "" "if ( spot == null ) // no more ?\n" "{\n" "\tmotor(0, 0); // stops the motors\n" "\tbreak; // stops the loop\n" "}" msgstr "" #. type: Plain text #: train402-help/tradar1.txt:27 #, no-wrap msgid "The instruction break will stop the infinite loop while (true)." msgstr "" #. type: Plain text #: train402-help/tradar1.txt:29 #, no-wrap msgid "Use the instruction direction() to calculate the angle of the rotation that the bot must perform in order to turn towards the blue cross. The coordinates of the object are given by spot.position. The following line will put the angle of the necessary rotation into the variable dir:" msgstr "" #. type: \s; block (usually verbatim code) #: train402-help/tradar1.txt:30 #, no-wrap msgid "dir = direction(spot.position);" msgstr "" #. type: Plain text #: train402-help/tradar1.txt:32 #, no-wrap msgid "The value of the angle is positive if the blue cross is on your left hand, and negative if it is on your right hand. If the cross to be reached is on your left hand, you must set the right-hand motor to full speed, and set the left-hand motor to a lower speed, according to the angle:" msgstr "" #. type: Plain text #: train402-help/tradar1.txt:38 #, no-wrap msgid "" " direction = 0 -> speed = 1.0\n" " direction = 45 -> speed = 0.5\n" " direction = 90 -> speed = 0.0\n" " direction = 135 -> speed = -0.5\n" " direction = 180 -> speed = -1.0" msgstr "" #. type: Plain text #: train402-help/tradar1.txt:40 #, no-wrap msgid "The graphic below shows the speed of the left-hand and right-hand motor as set by the instruction motor, according to the angle:" msgstr "" #. type: Image filename #: train402-help/tradar1.txt:41 #, no-wrap msgid "radar2" msgstr "" #. type: Plain text #: train402-help/tradar1.txt:43 #, no-wrap msgid "If the cross is straight ahead, the angle is 0 degrees. The motors will get the speeds 1 and 1, which means full speed ahead. If the cross is behind, the right motor will be set to speed -1: it will turn around. You can use the expression 1+dir/90 in order to calculate the necessary speed of the motors:" msgstr "" #. type: \s; block (usually verbatim code) #: train402-help/tradar1.txt:47 #, no-wrap msgid "" "if ( dir < 0 ) // on the right side?\n" "{\n" "\tmotor(1, 1+dir/90); // turns more or less\n" "}" msgstr "" #. type: Plain text #: train402-help/tradar1.txt:49 #, no-wrap msgid "Use the same principle if the angle has got a positive value, ranging between 0 and 180 degrees. It is up to you to work out the exact instructions to be performed:" msgstr "" #. type: \s; block (usually verbatim code) #: train402-help/tradar1.txt:53 #, no-wrap msgid "" "else // on the left side?\n" "{\n" "\tup to you to fill in here...\n" "}" msgstr "" #. type: Plain text #: train402-help/tradar1.txt:55 #, no-wrap msgid "At the beginning of the program, you must still declare all the variables. spot is of type object, whereas dir is of type float." msgstr "" #. type: \t; header #: train402-help/tradar1.txt:56 #, no-wrap msgid "See also" msgstr "" #. type: Plain text #: train402-help/tradar1.txt:57 #, no-wrap msgid "Programming, types and categories." msgstr "" # #~ msgid "train400:Motors" #~ msgstr "train400:Moteurs" # #~ msgid "train400:Motor" #~ msgstr "train400:Moteur" # #~ msgid "train400:" #~ msgstr "train400:" # #~ msgid "train401:Dragster" #~ msgstr "train401:Dragster" # #~ msgid "train401:" #~ msgstr "train401:" # #~ msgid "train401:Program a progressive deceleration in order to avoid the mines right behind the goal." #~ msgstr "train401:Décélération avec commande directe des moteurs." # #~ msgid "train402:" #~ msgstr "train402:" # #~ msgid "train403:Crazy bot" #~ msgstr "train403:Le petit poucet" # #~ msgid "train403:" #~ msgstr "train403:" # #~ msgid "train403:Use the radar to put some order into a big mess left behind by a crazy bot." #~ msgstr "train403:Utilisez le radar pour trouver toutes les marques déposées par le petit poucet." # #~ msgid "train403:Move" #~ msgstr "train403:Ramasse" # #~ msgid "train404:Patient hunter" #~ msgstr "train404:Chasse à l'homme" # #~ msgid "train404:" #~ msgstr "train404:" # #~ msgid "train404:Be patient enough not to waste your ammunitions." #~ msgstr "train404:Abattre quatre cibles mouvantes sans gaspiller un seul coup." # #~ msgid "train404:Patient" #~ msgstr "train404:Abattre" # #~ msgid "train405:Shadow" #~ msgstr "train405:Copieur ..." # #~ msgid "train405:" #~ msgstr "train405:" # #~ msgid "train405:Follow a bot, as if you were its shadow." #~ msgstr "train405:Suivez un robot, sans le heurter." # #~ msgid "train405:Follow" #~ msgstr "train405:Suivre"