# SOME DESCRIPTIVE TITLE # Copyright (C) YEAR Free Software Foundation, Inc. # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "POT-Creation-Date: 2013-10-24 09:01+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\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 "P" #. 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:Użyj radaru do znalezienia mnóstwa głupich niebieskich plusów." #. type: ScriptName-text #: train402/scene.txt:3 #, no-wrap msgid "train402:Find" msgstr "train402:Znajdź" #. 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 <a object|waypoint>blue crosses</a> 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 <code><a cbot|while>while</a></code> 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 "" "<code>while ( true )\n" "{\n" "\t</code>instructions...<c/>\n" "}" msgstr "" #. type: Plain text #: train402-help/tradar1.txt:18 #, no-wrap msgid "" "The instruction <code><a cbot|radar>radar</a></code> will detect the blue " "crosses and put their description into a variable, for example " "<code>spot</code>. In this case, <code><a cbot|radar>radar</a>()</code> " "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 "<c/>spot = radar(WayPoint);" msgstr "" #. type: Plain text #: train402-help/tradar1.txt:21 #, no-wrap msgid "" "Once all the crosses have been found, <code>radar</code> will return the " "value <code><a cbot|null>null</a></code>. You will have to test this case " "and react accordingly with the instruction <code><a cbot|if>if</a></code>:" msgstr "" #. type: \s; block (usually verbatim code) #: train402-help/tradar1.txt:26 #, no-wrap msgid "" "<c/>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 "" "<n/>The instruction <code><a cbot|break>break</a></code> will stop the " "infinite loop <code>while (true)</code>." msgstr "" #. type: Plain text #: train402-help/tradar1.txt:29 #, no-wrap msgid "" "Use the instruction <code><a cbot|direct>direction</a>()</code> 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 " "<code>spot.position</code>. The following line will put the angle of the " "necessary rotation into the <a cbot|var>variable</a> <code>dir</code>:" msgstr "" #. type: \s; block (usually verbatim code) #: train402-help/tradar1.txt:30 #, no-wrap msgid "<c/>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 = <code> 0</code> -> speed = <code> 1.0</code>\n" " direction = <code> 45</code> -> speed = <code> 0.5</code>\n" " direction = <code> 90</code> -> speed = <code> 0.0</code>\n" " direction = <code>135</code> -> speed = <code>-0.5</code>\n" " direction = <code>180</code> -> speed = <code>-1.0</code>" 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 <code><a cbot|motor>motor</a></code>, 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 <a cbot|expr>expression</a> <code>1+dir/90</code> 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 "" "<c/>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 "" "<code>else // on the left side?\n" "{\n" "\t</code>up to you to fill in here...<c/>\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. <code>spot</code> is of type <code><a " "cbot|object>object</a></code>, whereas <code>dir</code> is of type <code><a " "cbot|float>float</a></code>." 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 "" "<a cbot>Programming</a>, <a cbot|type>types</a> and <a " "cbot|category>categories</a>." msgstr ""