320 lines
10 KiB
Plaintext
320 lines
10 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 "P"
|
|
|
|
#. type: Title-text
|
|
#: train405/scene.txt:1
|
|
#, no-wrap
|
|
msgid "train405:Shadow"
|
|
msgstr "train405:Cień"
|
|
|
|
#. type: Resume-text
|
|
#: train405/scene.txt:2
|
|
#, no-wrap
|
|
msgid "train405:Follow a bot, as if you were its shadow."
|
|
msgstr "train405:Podążaj za robotem, stając się jego cieniem."
|
|
|
|
#. type: ScriptName-text
|
|
#: train405/scene.txt:3
|
|
#, no-wrap
|
|
msgid "train405:Follow"
|
|
msgstr "train405:Podążaj"
|
|
|
|
#. type: \b; header
|
|
#: train405-help/tfollow1.txt:1
|
|
#, no-wrap
|
|
msgid "Exercise"
|
|
msgstr "Ćwiczenie"
|
|
|
|
#. 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 ""
|
|
"Podążaj za <a object|bottr>robotem celem</a> niosącym ładunek wybuchowy. "
|
|
"Bądź ostrożny, gdyż zderzenie z nim grozi wybuchem. Podczas każdego "
|
|
"zatrzymania robota celu należy być odpowiednio blisko niego (mniej niż 10 "
|
|
"metrów). Gdy uda się być w pobliżu robota 10 razy z rzędu, ćwiczenie "
|
|
"zakończy się wraz z jego dotarciem na platformę końcową. Przy każdym "
|
|
"zatrzymaniu robot cel sprawdza, czy śledzący go robot jest odpowiednio "
|
|
"blisko. Jeśli nie, liczenie zaczyna się od początku."
|
|
|
|
#. type: \b; header
|
|
#: train405-help/tfollow1.txt:4
|
|
#, no-wrap
|
|
msgid "General principle"
|
|
msgstr "Ogólny algorytm"
|
|
|
|
#. type: Plain text
|
|
#: train405-help/tfollow1.txt:6
|
|
#, no-wrap
|
|
msgid "Repeat forever :\n"
|
|
msgstr "Powtarzaj w nieskończoność:\n"
|
|
|
|
#. type: Bullet: 'o'
|
|
#: train405-help/tfollow1.txt:6
|
|
#, no-wrap
|
|
msgid "Look for the target bot."
|
|
msgstr "Znajdź robot cel."
|
|
|
|
#. type: Bullet: 'o'
|
|
#: train405-help/tfollow1.txt:7
|
|
#, no-wrap
|
|
msgid "Calculate the distance to the bot."
|
|
msgstr "Oblicz odległość do robota."
|
|
|
|
#. 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 "Jeśli odległość jest mniejsza niż 5 m, cofnij się."
|
|
|
|
#. type: Bullet: 'o'
|
|
#: train405-help/tfollow1.txt:9
|
|
#, no-wrap
|
|
msgid "Otherwise, calculate the direction of the target bot, and move towards it."
|
|
msgstr ""
|
|
"W przeciwnym przypadku oblicz kierunek do robota celu i idź w jego stronę."
|
|
|
|
#. 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 ""
|
|
"Podobnie jak poprzednio użyj nieskończonej pętli <code><a "
|
|
"cbot|while>while</a> (true)</code>:"
|
|
|
|
#. 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 ""
|
|
"<code>while (true)\n"
|
|
"{\n"
|
|
"\t</code>instrukcje, które mają być powtarzane ...<c/>\n"
|
|
"}"
|
|
|
|
#. 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 "Znajdź robot cel instrukcją <code><a cbot|radar>radar</a></code>:"
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
#: train405-help/tfollow1.txt:19
|
|
#, no-wrap
|
|
msgid "<c/>\ttarget = radar(TargetBot);"
|
|
msgstr "<c/>\ttarget = radar(TargetBot);"
|
|
|
|
#. 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 "Nie musisz sprawdzać, czy robot znalazł cel: na pewno tam jest."
|
|
|
|
#. 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 ""
|
|
"Użyj instrukcji <code><a cbot|dist>distance</a>( , )</code> do obliczenie "
|
|
"odległości między dwoma punktami. Pierwszym jest pozycja Twojego robota, "
|
|
"podana przez <code>position</code>. Drugim jest pozycja robota celu, podana "
|
|
"przez <code>target.position</code>."
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
#: train405-help/tfollow1.txt:24
|
|
#, no-wrap
|
|
msgid "<c/>len = distance(position, target.position);"
|
|
msgstr "<c/>len = distance(position, target.position);"
|
|
|
|
#. 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 ""
|
|
"Jeśli odległość od robota celu jest mniejsza niż 5 metrów, oddal się od "
|
|
"niego z prędkością odwrotnie proporcjonalną do odległości: im bliżej jest "
|
|
"robot, tym szybciej należy się cofać.\n"
|
|
"\tOdległość = 5.0 metrów -> prędkość = 0.0\n"
|
|
"\tOdległość = 2.5 metra -> prędkość = -0.5\n"
|
|
"\tOdległość = 0.0 metrów -> prędkość = -1.0\n"
|
|
"Aby to uzyskać, możesz użyć <a cbot|expr>wyrażenia</a> "
|
|
"<code>distance/5-1</code>, wspólnie z instrukcją <code><a "
|
|
"cbot|if>if</a></code> sprawdzającą, czy cel jest bliżej niż 5 m:"
|
|
|
|
#. 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 ""
|
|
"<c/>if ( len < 5 ) // za blisko?\n"
|
|
"{\n"
|
|
"\tmotor(len/5-1, len/5-1); // cofnij\n"
|
|
"}"
|
|
|
|
#. 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 ""
|
|
"Jeśli odległość do celu jest większa niż 5m, poruszaj się w jego kierunku. "
|
|
"Najpierw oblicz kąt niezbędny do obrócenia się w jego kierunku używając "
|
|
"instrukcji <code><a cbot|direct>direction</a></code>. Następnie dostosuj "
|
|
"prędkości prawego i lewego silnika, aby Twój robot podążał za celem:"
|
|
|
|
#. 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 ""
|
|
"<c/>else\n"
|
|
"{\n"
|
|
"\tdir = direction(target.position);\n"
|
|
"\tif ( dir >= 0 ) // cel po lewej stronie?\n"
|
|
"\t{\n"
|
|
"\t\tmotor(1-dir/90, 1);\n"
|
|
"\t}\n"
|
|
"\telse // cel po prawej stronie?\n"
|
|
"\t{\n"
|
|
"\t\t<n/>do Ciebie należy uzupełnienie tego<c/>\n"
|
|
"\t}\n"
|
|
"}"
|
|
|
|
#. 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 ""
|
|
"Gdy cel jest po lewej stronie, zmienna <code>dir</code> ma wartość dodatnią, "
|
|
"pomiędzy 0 i 180. <a cbot|expr>Wyrażenie</a> <code>1-dir/90</code> zwraca "
|
|
"prędkość w zakresie pomiędzy 1 i -1 w zależności od kierunku:\n"
|
|
"\tkierunek = 0 -> prędkość = 1.0\n"
|
|
"\tkierunek = 45 -> prędkość = 0.5\n"
|
|
"\tkierunek = 90 -> prędkość = 0.0\n"
|
|
"\tkierunek = 135 -> prędkość = -0.5\n"
|
|
"\tkierunek = 180 -> prędkość = -1.0"
|
|
|
|
#. type: Image filename
|
|
#: train405-help/tfollow1.txt:56
|
|
#, no-wrap
|
|
msgid "radar2"
|
|
msgstr "radar2"
|
|
|
|
#. 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 ""
|
|
"Gdy cel jest po prawej stronie, zmienna <code>dir</code> ma wartość ujemną, "
|
|
"pomiędzy 0 i -180."
|
|
|
|
#. 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 ""
|
|
"Jedynym zadaniem jakie jeszcze Ci zostało jest zadeklarowanie <a "
|
|
"cbot|var>zmiennych</a> używanych w programie. <code>target</code> jest typu "
|
|
"<code>object</code>, podczas gdy <code>dir</code> i <code>len</code> są typu "
|
|
"<code>float</code>."
|
|
|
|
#. type: \t; header
|
|
#: train405-help/tfollow1.txt:61
|
|
#, no-wrap
|
|
msgid "See also"
|
|
msgstr "Zobacz również"
|
|
|
|
#. 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 ""
|
|
"<a cbot>Programowanie</a>, <a cbot|type>typy</a> i <a "
|
|
"cbot|category>kategorie</a>."
|