257 lines
6.6 KiB
Plaintext
257 lines
6.6 KiB
Plaintext
# 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.
|
|
msgid ""
|
|
msgstr ""
|
|
"Project-Id-Version: PACKAGE VERSION\n"
|
|
"Report-Msgid-Bugs-To: \n"
|
|
"POT-Creation-Date: 2014-07-02 12:51+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: pl\n"
|
|
"MIME-Version: 1.0\n"
|
|
"Content-Type: text/plain; charset=UTF-8\n"
|
|
"Content-Transfer-Encoding: 8bit\n"
|
|
"X-Generator: Translate Toolkit 1.11.0\n"
|
|
|
|
#. type: One-char language identifier
|
|
#: train405.languagecode:1
|
|
#, no-wrap
|
|
msgid "E"
|
|
msgstr ""
|
|
|
|
#. type: Title-text
|
|
#: train405/scene.txt:1
|
|
#, no-wrap
|
|
msgid "train405:Shadow"
|
|
msgstr ""
|
|
|
|
#. type: Resume-text
|
|
#: train405/scene.txt:2
|
|
#, no-wrap
|
|
msgid "train405:Follow a bot, as if you were its shadow."
|
|
msgstr ""
|
|
|
|
#. type: ScriptName-text
|
|
#: train405/scene.txt:3
|
|
#, no-wrap
|
|
msgid "train405:Follow"
|
|
msgstr ""
|
|
|
|
#. type: \b; header
|
|
#: train405-help/tfollow1.txt:1
|
|
#, no-wrap
|
|
msgid "Exercise"
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: train405-help/tfollow1.txt:3
|
|
#, no-wrap
|
|
msgid ""
|
|
"You must follow the <a object|bottr>target bot</a> with the explosive "
|
|
"device, but without touching it, otherwise it will blow up. Every time the "
|
|
"target bot stops, you must be close to it (less than 10m). After you managed "
|
|
"to stay close to the target bot at 10 successive stops, it will lead you to "
|
|
"the finishing pad, and the exercise is over. At every stop, the target bot "
|
|
"checks that you are there. If you are not there, you must start over again."
|
|
msgstr ""
|
|
|
|
#. type: \b; header
|
|
#: train405-help/tfollow1.txt:4
|
|
#, no-wrap
|
|
msgid "General principle"
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: train405-help/tfollow1.txt:6
|
|
#, no-wrap
|
|
msgid "Repeat forever :\n"
|
|
msgstr ""
|
|
|
|
#. type: Bullet: 'o'
|
|
#: train405-help/tfollow1.txt:6
|
|
#, no-wrap
|
|
msgid "Look for the target bot."
|
|
msgstr ""
|
|
|
|
#. type: Bullet: 'o'
|
|
#: train405-help/tfollow1.txt:7
|
|
#, no-wrap
|
|
msgid "Calculate the distance to the bot."
|
|
msgstr ""
|
|
|
|
#. type: Bullet: 'o'
|
|
#: train405-help/tfollow1.txt:8
|
|
#, no-wrap
|
|
msgid "if the distance to the target bot is less than 5m, move backward."
|
|
msgstr ""
|
|
|
|
#. type: Bullet: 'o'
|
|
#: train405-help/tfollow1.txt:9
|
|
#, no-wrap
|
|
msgid "Otherwise, calculate the direction of the target bot, and move towards it."
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: train405-help/tfollow1.txt:12
|
|
#, no-wrap
|
|
msgid ""
|
|
"As many times before, use <code><a cbot|while>while</a> (true)</code> in "
|
|
"order to perform the infinite loop:"
|
|
msgstr ""
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
#: train405-help/tfollow1.txt:16
|
|
#, no-wrap
|
|
msgid ""
|
|
"<code>while (true)\n"
|
|
"{\n"
|
|
"\t</code>instructions to be repeated ...<c/>\n"
|
|
"}"
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: train405-help/tfollow1.txt:18
|
|
#, no-wrap
|
|
msgid ""
|
|
"Look for the target bot with the instruction <code><a "
|
|
"cbot|radar>radar</a></code>:"
|
|
msgstr ""
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
#: train405-help/tfollow1.txt:19
|
|
#, no-wrap
|
|
msgid "<c/>\ttarget = radar(TargetBot);"
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: train405-help/tfollow1.txt:21
|
|
#, no-wrap
|
|
msgid "You do not have to test if the radar found a target bot: there must be one."
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: train405-help/tfollow1.txt:23
|
|
#, no-wrap
|
|
msgid ""
|
|
"Use the instruction <code><a cbot|dist>distance</a>( , )</code> to calculate "
|
|
"the distance between two points. The first point will be the position of "
|
|
"your own bot, given by <code>position</code>. The second point is the "
|
|
"position of the target bot, given by <code>target.position</code>."
|
|
msgstr ""
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
#: train405-help/tfollow1.txt:24
|
|
#, no-wrap
|
|
msgid "<c/>len = distance(position, target.position);"
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: train405-help/tfollow1.txt:30
|
|
#, no-wrap
|
|
msgid ""
|
|
"If the distance to the target bot is smaller than 5m, move backward with a "
|
|
"speed inversely proportional to the distance: the closer you are to the bot, "
|
|
"the faster you must move backward.\n"
|
|
"\tDistance = 5.0 meters -> speed = 0.0\n"
|
|
"\tDistance = 2.5 meters -> speed = -0.5\n"
|
|
"\tDistance = 0.0 meters -> speed = -1.0\n"
|
|
"You can use the <a cbot|expr>expression</a> <code>distance/5-1</code> in "
|
|
"order to achieve this, together with the <code><a cbot|if>if</a></code> to "
|
|
"test if the target is closer than 5m:"
|
|
msgstr ""
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
#: train405-help/tfollow1.txt:34
|
|
#, no-wrap
|
|
msgid ""
|
|
"<c/>if ( len < 5 ) // too close ?\n"
|
|
"{\n"
|
|
"\tmotor(len/5-1, len/5-1); // moves backward\n"
|
|
"}"
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: train405-help/tfollow1.txt:36
|
|
#, no-wrap
|
|
msgid ""
|
|
"If the distance to the target is greater than 5m, move towards the "
|
|
"target. First calculate the angle necessary to face the target with the "
|
|
"instruction <code><a cbot|direct>direction</a></code>. You can then adjust "
|
|
"the speed of the right-hand and left-hand motor in order to follow the "
|
|
"target:"
|
|
msgstr ""
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
#: train405-help/tfollow1.txt:48
|
|
#, no-wrap
|
|
msgid ""
|
|
"<c/>else\n"
|
|
"{\n"
|
|
"\tdir = direction(target.position);\n"
|
|
"\tif ( dir >= 0 ) // target on the left side?\n"
|
|
"\t{\n"
|
|
"\t\tmotor(1-dir/90, 1);\n"
|
|
"\t}\n"
|
|
"\telse // target on the right side?\n"
|
|
"\t{\n"
|
|
"\t\t<n/>it is up to you to fill in<c/>\n"
|
|
"\t}\n"
|
|
"}"
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: train405-help/tfollow1.txt:55
|
|
#, no-wrap
|
|
msgid ""
|
|
"When the target is on your left, <code>dir</code> takes a positive value, "
|
|
"ranging between 0 and 180. The <a cbot|expr>expression</a> "
|
|
"<code>1-dir/90</code> returns a speed ranging between 1 and -1, according to "
|
|
"the direction:\n"
|
|
"\tdirection = 0 -> speed = 1.0\n"
|
|
"\tdirection = 45 -> speed = 0.5\n"
|
|
"\tdirection = 90 -> speed = 0.0\n"
|
|
"\tdirection = 135 -> speed = -0.5\n"
|
|
"\tdirection = 180 -> speed = -1.0"
|
|
msgstr ""
|
|
|
|
#. type: Image filename
|
|
#: train405-help/tfollow1.txt:56
|
|
#, no-wrap
|
|
msgid "radar2"
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: train405-help/tfollow1.txt:58
|
|
#, no-wrap
|
|
msgid ""
|
|
"When the target is on the right side, <code>dir</code> is negative, ranging "
|
|
"between 0 and -180."
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: train405-help/tfollow1.txt:60
|
|
#, no-wrap
|
|
msgid ""
|
|
"The only task left for you now is to declare the <a cbot|var>variables</a> "
|
|
"that you use in the program. <code>target</code> is of type "
|
|
"<code>object</code>, whereas <code>dir</code> and <code>len</code> are of "
|
|
"type <code>float</code>."
|
|
msgstr ""
|
|
|
|
#. type: \t; header
|
|
#: train405-help/tfollow1.txt:61
|
|
#, no-wrap
|
|
msgid "See also"
|
|
msgstr ""
|
|
|
|
#. type: Plain text
|
|
#: train405-help/tfollow1.txt:62
|
|
#, no-wrap
|
|
msgid ""
|
|
"<a cbot>Programming</a>, <a cbot|type>types</a> and <a "
|
|
"cbot|category>categories</a>."
|
|
msgstr ""
|