2013-10-25 13:45:09 +00:00
|
|
|
# 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"
|
2014-07-10 15:16:30 +00:00
|
|
|
"Report-Msgid-Bugs-To: \n"
|
2014-07-02 10:48:36 +00:00
|
|
|
"POT-Creation-Date: 2014-07-02 12:51+0200\n"
|
2013-10-25 13:45:09 +00:00
|
|
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
|
|
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
|
|
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
2014-07-10 15:16:30 +00:00
|
|
|
"Language: fr\n"
|
2013-10-25 13:45:09 +00:00
|
|
|
"MIME-Version: 1.0\n"
|
|
|
|
"Content-Type: text/plain; charset=UTF-8\n"
|
|
|
|
"Content-Transfer-Encoding: 8bit\n"
|
2014-07-10 15:16:30 +00:00
|
|
|
"X-Generator: Translate Toolkit 1.11.0\n"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: One-char language identifier
|
|
|
|
#: train703.languagecode:1
|
|
|
|
#, no-wrap
|
|
|
|
msgid "E"
|
|
|
|
msgstr "F"
|
|
|
|
|
|
|
|
#
|
|
|
|
#. type: Title-text
|
|
|
|
#: train703/scene.txt:1
|
|
|
|
#, no-wrap
|
|
|
|
msgid "train703:Remote control #5"
|
|
|
|
msgstr "train703:Télécommande #5"
|
|
|
|
|
|
|
|
#
|
|
|
|
#. type: Resume-text
|
|
|
|
#: train703/scene.txt:2
|
|
|
|
#, no-wrap
|
2014-07-10 15:16:30 +00:00
|
|
|
msgid ""
|
|
|
|
"train703:Remote control a bot without using an information exchange post by "
|
|
|
|
"storing the orders."
|
2013-10-25 13:45:09 +00:00
|
|
|
msgstr "train703:Télécommandez un robot en mémorisant tous les ordres."
|
|
|
|
|
|
|
|
#
|
|
|
|
#. type: ScriptName-text
|
|
|
|
#: train703/scene.txt:3
|
|
|
|
#, no-wrap
|
|
|
|
msgid "train703:Remote5"
|
|
|
|
msgstr "train703:Remote5"
|
|
|
|
|
|
|
|
#. type: \b; header
|
|
|
|
#: train703-help/tremote5.txt:1
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid "Exercise"
|
2014-07-02 10:48:36 +00:00
|
|
|
msgstr "Exercice"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:3
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
#, fuzzy, no-wrap
|
2014-07-10 15:16:30 +00:00
|
|
|
msgid ""
|
|
|
|
"Remote control a slave robot without using an <a object|exchange>information "
|
|
|
|
"exchange post</a>. The robot should pass over the 6 blue crosses. "
|
|
|
|
msgstr ""
|
|
|
|
"Télécommandez un robot, sans utiliser une <a object|exchange>borne "
|
|
|
|
"d'information</a>, pour qu'il passe par les 6 croix bleues."
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:5
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid "The two main actors of this exercise are:\n"
|
2014-07-02 10:48:36 +00:00
|
|
|
msgstr "Les 2 acteurs principaux de cet exercice sont:\n"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Bullet: '1)'
|
|
|
|
#: train703-help/tremote5.txt:5
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2014-07-10 15:16:30 +00:00
|
|
|
msgid ""
|
|
|
|
"The <a object|botgr>wheeled grabber</a> without an energy pack and therefore "
|
|
|
|
"immobile. This is the master you should program so it will transmit orders "
|
|
|
|
"to the slave."
|
|
|
|
msgstr ""
|
|
|
|
"Un <a object|botgr>robot déménageur</a> sans pile, donc immobile. C'est lui "
|
|
|
|
"l'émetteur que vous devez programmer."
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Bullet: '2)'
|
|
|
|
#: train703-help/tremote5.txt:6
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2014-07-10 15:16:30 +00:00
|
|
|
msgid ""
|
|
|
|
"The slave <a object|bottr>practice bot</a> which is already programmed and "
|
|
|
|
"just waits for orders from the master."
|
|
|
|
msgstr ""
|
|
|
|
"Un <a object|bottr>robot d'entraînement</a> qui attend les ordres. Ce robot "
|
|
|
|
"est déjà programmé."
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:9
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2014-07-10 15:16:30 +00:00
|
|
|
msgid ""
|
|
|
|
"The orders shall be stored, so the master will be able to transmit several "
|
|
|
|
"orders without waiting for each order being processed. We use an <a "
|
|
|
|
"cbot|array>array</a> for this purpose."
|
|
|
|
msgstr ""
|
|
|
|
"Il faudra mémoriser les ordres, afin que le robot émetteur puisse donner "
|
|
|
|
"tous les ordres sans attendre. Pour cela, le plus simple est d'utiliser un <"
|
|
|
|
"a cbot|array>tableau</a> d'ordres."
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: \b; header
|
|
|
|
#: train703-help/tremote5.txt:10
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid "The slave"
|
2014-07-02 10:48:36 +00:00
|
|
|
msgstr "Le robot récepteur"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:12
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2014-07-10 15:16:30 +00:00
|
|
|
msgid ""
|
|
|
|
"First of all we must understand how the program of the slave works. The <a "
|
|
|
|
"cbot|class>class</a> <code>order</code> contains two members: "
|
|
|
|
"<code>m_type</code> is the order to execute (move or turn) and "
|
|
|
|
"<code>m_param</code> is the distance to move or the rotation angle¦:"
|
2013-10-25 13:45:09 +00:00
|
|
|
msgstr ""
|
2014-07-10 15:16:30 +00:00
|
|
|
"Pour commencer, il faut comprendre le programme du robot d'entraînement qui "
|
|
|
|
"attend les ordres.\n"
|
|
|
|
"Une <a cbot|class>classe</a> <code>order</code> contient deux variables: "
|
|
|
|
"<code>global_type</code> détermine l'ordre à effectuer (avancer ou tourner) "
|
|
|
|
"et <code>global_param</code> détermine la distance à avancer ou l'angle de "
|
|
|
|
"rotation:"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:14
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid "<c/><s/><a cbot|public>public</a> <a cbot|class>class</a> order"
|
2014-07-02 10:48:36 +00:00
|
|
|
msgstr "<c/><s/><a cbot|public>public</a> <a cbot|class>class</a> order"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
|
|
#: train703-help/tremote5.txt:18
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid ""
|
|
|
|
"{\n"
|
|
|
|
"\t<a cbot|int>int</a> m_type;\n"
|
|
|
|
"\t<a cbot|float>float</a> m_param;\n"
|
|
|
|
"}"
|
|
|
|
msgstr ""
|
2014-07-02 10:48:36 +00:00
|
|
|
"{\n"
|
|
|
|
"\t<a cbot|int>int</a> global_type;\n"
|
|
|
|
"\t<a cbot|float>float</a> global_param;\n"
|
|
|
|
"}"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:20
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2014-07-10 15:16:30 +00:00
|
|
|
msgid ""
|
|
|
|
"A second <a cbot|class>class</a> <code>exchange</code> contains the "
|
|
|
|
"mechanism for exchanging the orders. We declare a <code><a "
|
|
|
|
"cbot|static>static</a></code> class member <code>m_fifo</code> which will "
|
|
|
|
"contain the list of orders to be executed. The word <code>static</code> "
|
|
|
|
"insures that the member <code>m_fifo</code> is shared between all instances "
|
|
|
|
"of the <a cbot|class>class</a> exchange."
|
|
|
|
msgstr ""
|
|
|
|
"Une deuxième <a cbot|class>classe</a> <code>exchange</code> contient le "
|
|
|
|
"mécanisme d'échange et de mémorisation des ordres. Il faut d'abord déclarer "
|
|
|
|
"une variable <code><a cbot|static>static</a></code> appelée ici "
|
|
|
|
"<code>global_fifo[]</code>. Cette variable contient une liste d'ordres à "
|
|
|
|
"effectuer. Les accolades <code>[]</code> indiquent qu'il s'agit d'un <a "
|
|
|
|
"cbot|array>tableau</a>. L'instruction <code>static</code> permet à tous les "
|
|
|
|
"robots d'accéder à la même variable unique."
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:22
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid "<c/><s/>{"
|
2014-07-02 10:48:36 +00:00
|
|
|
msgstr "<c/><s/><a cbot|public>public</a> <a cbot|class>class</a> exchange"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
|
|
#: train703-help/tremote5.txt:23
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2014-07-10 15:16:30 +00:00
|
|
|
msgid ""
|
|
|
|
"\t<a cbot|static>static</a> <a cbot|private>private</a> order m_fifo[] = "
|
|
|
|
"null;"
|
2013-10-25 13:45:09 +00:00
|
|
|
msgstr ""
|
2014-07-02 10:48:36 +00:00
|
|
|
"{\n"
|
2014-07-10 15:16:30 +00:00
|
|
|
"\t<a cbot|static>static</a> <a cbot|private>private</a> order global_fifo[] ="
|
|
|
|
" null;"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:25
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2014-07-10 15:16:30 +00:00
|
|
|
msgid ""
|
|
|
|
"The <code>put</code> method will be used by the master robot for "
|
|
|
|
"transmitting an order. The order will simply be added at the end of the "
|
|
|
|
"<code>m_fifo</code> array:"
|
|
|
|
msgstr ""
|
|
|
|
"Une première méthode <code>put</code> sera utilisée par le robot émetteur "
|
|
|
|
"pour donner un ordre. L'ordre est simplement ajouté à la fin du tableau:"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:27
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid "<c/><s/>\t<a cbot|synchro>synchronized</a> void put(order a)"
|
2014-07-02 10:48:36 +00:00
|
|
|
msgstr "<c/><s/>\t<a cbot|synchro>synchronized</a> void put(order a)"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
|
|
#: train703-help/tremote5.txt:30
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid ""
|
|
|
|
"\t{\n"
|
|
|
|
"\t\tm_fifo[sizeof(m_fifo)] = a;\n"
|
|
|
|
"\t}"
|
|
|
|
msgstr ""
|
2014-07-02 10:48:36 +00:00
|
|
|
"\t{\n"
|
|
|
|
"\t\tglobal_fifo[sizeof(global_fifo)] = a;\n"
|
|
|
|
"\t}"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:32
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2014-07-10 15:16:30 +00:00
|
|
|
msgid ""
|
|
|
|
"Another method <code>get</code> will be used by the slave to retrieve the "
|
|
|
|
"orders. This method returns the order to be executed. If the list is empty, "
|
|
|
|
"<code>null</code> will be returned and the robot must wait for more "
|
|
|
|
"orders. Otherwise the first order in the list must be returned and the "
|
|
|
|
"remaining orders must be \"scrolled up\". As an array can not be "
|
|
|
|
"\"shortened\" we use a temporary array <code>copy</code>¦:"
|
|
|
|
msgstr ""
|
|
|
|
"Une deuxième méthode <code>get</code> sera utilisée par le robot récepteur "
|
|
|
|
"pour prendre connaissance d'un ordre à effectuer. Si la liste est vide, on "
|
|
|
|
"retourne <code>null</code> et le robot devra attendre. Dans le cas "
|
|
|
|
"contraire, il faut retourner le premier ordre de la liste, et décaler tout "
|
|
|
|
"le contenu de la liste vers le haut. Pour cela, il est nécessaire d'utiliser "
|
|
|
|
"une nouvelle liste intermédiaire <code>copy</code>, car une liste existante "
|
|
|
|
"n'est jamais raccourcie:"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:34
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid "<c/><s/>\t<a cbot|synchro>synchronized</a> order get()"
|
2014-07-02 10:48:36 +00:00
|
|
|
msgstr "<c/><s/>\t<a cbot|synchro>synchronized</a> order get()"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
|
|
#: train703-help/tremote5.txt:46
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid ""
|
|
|
|
"\t{\n"
|
|
|
|
"\t\tif ( sizeof(m_fifo) == 0 ) return null;\n"
|
|
|
|
"\n"
|
|
|
|
"\t\torder a = m_fifo[0];\n"
|
|
|
|
"\t\torder copy[] = null;\n"
|
|
|
|
"\t\tfor ( int i=1 ; i<sizeof(m_fifo) ; i++ )\n"
|
|
|
|
"\t\t{\n"
|
|
|
|
"\t\t\tcopy[i-1] = m_fifo[i];\n"
|
|
|
|
"\t\t}\n"
|
|
|
|
"\t\tm_fifo = copy;\n"
|
|
|
|
"\t\treturn a;\n"
|
|
|
|
"\t}"
|
|
|
|
msgstr ""
|
2014-07-02 10:48:36 +00:00
|
|
|
"\t{\n"
|
|
|
|
"\t\tif ( sizeof(global_fifo) == 0 ) return null;\n"
|
|
|
|
"\n"
|
|
|
|
"\t\torder a = global_fifo[0];\n"
|
|
|
|
"\t\torder copy[] = null;\n"
|
|
|
|
"\t\tfor ( int i=1 ; i<sizeof(global_fifo) ; i++ )\n"
|
|
|
|
"\t\t{\n"
|
|
|
|
"\t\t\tcopy[i-1] = global_fifo[i];\n"
|
|
|
|
"\t\t}\n"
|
|
|
|
"\t\tglobal_fifo = copy;\n"
|
|
|
|
"\t\treturn a;\n"
|
|
|
|
"\t}"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:48
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2014-07-10 15:16:30 +00:00
|
|
|
msgid ""
|
|
|
|
"The main program of the slave contains an instance of the class "
|
|
|
|
"<code>exchange</code> called <code>list</code>. We put () after the word "
|
|
|
|
"<code>list</code> in order to create an instance of the class "
|
|
|
|
"<code>exchange</code>."
|
|
|
|
msgstr ""
|
|
|
|
"Le programme principal peut maintenant exister. La variable <code>list</code>"
|
|
|
|
" est de type <code>exchange</code>, qui est une <a cbot|class>classe</a>. Il "
|
|
|
|
"faut utiliser l'instruction <code><a cbot|new>new</a></code> pour créer "
|
|
|
|
"immédiatement une instance."
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:50
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid "<c/><s/><a cbot|extern>extern</a> void object::Slave5( )"
|
2014-07-02 10:48:36 +00:00
|
|
|
msgstr "<c/><s/><a cbot|extern>extern</a> void object::Slave5( )"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
|
|
#: train703-help/tremote5.txt:53
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid ""
|
|
|
|
"{\n"
|
|
|
|
"\texchange list();\n"
|
|
|
|
"\torder todo;"
|
|
|
|
msgstr ""
|
2014-07-02 10:48:36 +00:00
|
|
|
"{\n"
|
|
|
|
"\texchange list = new exchange();\n"
|
|
|
|
"\torder todo;"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:55
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2014-07-10 15:16:30 +00:00
|
|
|
msgid ""
|
|
|
|
"The outer <code>while</code> loop lasts for ever. The inner "
|
|
|
|
"<code>while</code> loop waits for an order by using the <code>get</code> "
|
|
|
|
"method of the <code>exchange</code> class. As soon as <code>get</code> "
|
|
|
|
"returns a value different from <code>null</code>, the while loop stops."
|
|
|
|
msgstr ""
|
|
|
|
"La première boucle <code>while</code> exécute les ordres à l'infini. La "
|
|
|
|
"deuxième boucle <code>while</code> attend un ordre en exécutant la méthode "
|
|
|
|
"<code>get</code> de la classe <code>exchange</code>. Dès qu'un ordre "
|
|
|
|
"contenant une valeur différente de <code>null</code> est reçu, la boucle est "
|
|
|
|
"stoppée."
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:57
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid "<c/><s/>\t<a cbot|while>while</a> ( true )"
|
2014-07-02 10:48:36 +00:00
|
|
|
msgstr "<c/><s/>\t<a cbot|while>while</a> ( true )"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
|
|
#: train703-help/tremote5.txt:64
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid ""
|
|
|
|
"\t{\n"
|
|
|
|
"\t\t<a cbot|while>while</a> ( true )\n"
|
|
|
|
"\t\t{\n"
|
|
|
|
"\t\t\ttodo = list.get();\n"
|
|
|
|
"\t\t\tif ( todo != null ) break;\n"
|
|
|
|
"\t\t\twait(1);\n"
|
|
|
|
"\t\t}"
|
|
|
|
msgstr ""
|
2014-07-02 10:48:36 +00:00
|
|
|
"\t{\n"
|
|
|
|
"\t\t<a cbot|while>while</a> ( true )\n"
|
|
|
|
"\t\t{\n"
|
|
|
|
"\t\t\ttodo = list.get();\n"
|
|
|
|
"\t\t\tif ( todo != null ) break;\n"
|
|
|
|
"\t\t\twait(1);\n"
|
|
|
|
"\t\t}"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:66
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2014-07-10 15:16:30 +00:00
|
|
|
msgid ""
|
|
|
|
"Now we have received the order in the <code>todo</code> variable. All we "
|
|
|
|
"have to do is execute it:"
|
2014-07-02 10:48:36 +00:00
|
|
|
msgstr "Il ne reste plus qu'à exécuter l'ordre reçu:"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:68
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid "<c/><s/>\t\tif ( todo.m_type == 1 )"
|
2014-07-02 10:48:36 +00:00
|
|
|
msgstr "<c/><s/>\t\tif ( todo.global_type == 1 )"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
|
|
#: train703-help/tremote5.txt:81
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid ""
|
|
|
|
"\t\t{\n"
|
|
|
|
"\t\t\tmove(todo.m_param);\n"
|
|
|
|
"\t\t}\n"
|
|
|
|
"\t\telse if ( todo.m_type == 2 )\n"
|
|
|
|
"\t\t{\n"
|
|
|
|
"\t\t\tturn(todo.m_param);\n"
|
|
|
|
"\t\t}\n"
|
|
|
|
"\t\telse\n"
|
|
|
|
"\t\t{\n"
|
|
|
|
"\t\t\tmessage(\"Unknown order\");\n"
|
|
|
|
"\t\t}\n"
|
|
|
|
"\t}\n"
|
|
|
|
"}"
|
|
|
|
msgstr ""
|
2014-07-02 10:48:36 +00:00
|
|
|
"\t\t{\n"
|
|
|
|
"\t\t\tmove(todo.global_param);\n"
|
|
|
|
"\t\t}\n"
|
|
|
|
"\t\telse if ( todo.global_type == 2 )\n"
|
|
|
|
"\t\t{\n"
|
|
|
|
"\t\t\tturn(todo.global_param);\n"
|
|
|
|
"\t\t}\n"
|
|
|
|
"\t\telse\n"
|
|
|
|
"\t\t{\n"
|
|
|
|
"\t\t\tmessage(\"Unknown order\");\n"
|
|
|
|
"\t\t}\n"
|
|
|
|
"\t}\n"
|
|
|
|
"}"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: \b; header
|
|
|
|
#: train703-help/tremote5.txt:82
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid "The master"
|
2014-07-02 10:48:36 +00:00
|
|
|
msgstr "Le robot émetteur"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:84
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2014-07-10 15:16:30 +00:00
|
|
|
msgid ""
|
|
|
|
"In the master we write a function called <code>SendOrder</code> which will "
|
|
|
|
"send an order to the slave:"
|
|
|
|
msgstr ""
|
|
|
|
"Dans le robot émetteur, il est plus simple d'écrire une procédure "
|
|
|
|
"<code>SendOrder</code> qui se charge d'envoyer un ordre au robot récepteur. "
|
|
|
|
"Il n'est pas nécessaire d'attendre, puisque tous les ordres sont stockés "
|
|
|
|
"dans une liste:"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:86
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid "<c/><s/>void object::SendOrder(float order, float param)"
|
2014-07-02 10:48:36 +00:00
|
|
|
msgstr "<c/><s/>void object::SendOrder(float order, float param)"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
|
|
#: train703-help/tremote5.txt:94
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid ""
|
|
|
|
"{\n"
|
|
|
|
"\texchange list();\n"
|
|
|
|
"\torder todo();\n"
|
|
|
|
"\t\n"
|
|
|
|
"\ttodo.m_type = order;\n"
|
|
|
|
"\ttodo.m_param = param;\n"
|
|
|
|
"\tlist.put(todo);\n"
|
|
|
|
"}"
|
|
|
|
msgstr ""
|
2014-07-02 10:48:36 +00:00
|
|
|
"{\n"
|
|
|
|
"\texchange list = new exchange();\n"
|
|
|
|
"\torder todo();\n"
|
|
|
|
"\t\n"
|
|
|
|
"\ttodo.global_type = order;\n"
|
|
|
|
"\ttodo.global_param = param;\n"
|
|
|
|
"\tlist.put(todo);\n"
|
|
|
|
"}"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:96
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid "Now the main program of the master is very simple:"
|
2014-07-02 10:48:36 +00:00
|
|
|
msgstr "Le programme principal est finalement d'une simplicité enfantine:"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:98
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid "<c/><s/>extern void object::Remote5( )"
|
2014-07-02 10:48:36 +00:00
|
|
|
msgstr "<c/><s/>extern void object::Remote5( )"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: \s; block (usually verbatim code)
|
|
|
|
#: train703-help/tremote5.txt:109
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid ""
|
|
|
|
"{\n"
|
|
|
|
"\tSendOrder(1, 20); // move(20);\n"
|
|
|
|
"\tSendOrder(2, 90); // turn(90);\n"
|
|
|
|
"\tSendOrder(1, 20); // move(20);\n"
|
|
|
|
"\tSendOrder(2, 90); // turn(90);\n"
|
|
|
|
"\tSendOrder(1, 10); // move(10);\n"
|
|
|
|
"\tSendOrder(2, 90); // turn(90);\n"
|
|
|
|
"\tSendOrder(1, 10); // move(10);\n"
|
|
|
|
"\tSendOrder(2,-90); // turn(-90);\n"
|
|
|
|
"\tSendOrder(1, 10); // move(10);\n"
|
|
|
|
"}"
|
|
|
|
msgstr ""
|
2014-07-02 10:48:36 +00:00
|
|
|
"{\n"
|
|
|
|
"\tSendOrder(1, 20); // move(20);\n"
|
|
|
|
"\tSendOrder(2, 90); // turn(90);\n"
|
|
|
|
"\tSendOrder(1, 20); // move(20);\n"
|
|
|
|
"\tSendOrder(2, 90); // turn(90);\n"
|
|
|
|
"\tSendOrder(1, 10); // move(10);\n"
|
|
|
|
"\tSendOrder(2, 90); // turn(90);\n"
|
|
|
|
"\tSendOrder(1, 10); // move(10);\n"
|
|
|
|
"\tSendOrder(2,-90); // turn(-90);\n"
|
|
|
|
"\tSendOrder(1, 10); // move(10);\n"
|
|
|
|
"}"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:111
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
|
|
|
msgid "<format key><key help/></format> show these instruction at any time."
|
2014-07-10 15:16:30 +00:00
|
|
|
msgstr ""
|
|
|
|
"<format key><key help/></format> permet de revoir ces instructions en tout "
|
|
|
|
"temps!"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: \t; header
|
|
|
|
#: train703-help/tremote5.txt:112
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid "See also"
|
2014-07-02 10:48:36 +00:00
|
|
|
msgstr "Voir aussi"
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#. type: Plain text
|
|
|
|
#: train703-help/tremote5.txt:113
|
2014-07-10 15:16:30 +00:00
|
|
|
#, no-wrap
|
2014-07-02 10:48:36 +00:00
|
|
|
#, fuzzy, no-wrap
|
2013-10-25 13:45:09 +00:00
|
|
|
msgid "<a command>Controls</a> and <a cbot>programming</a>."
|
2014-07-02 10:48:36 +00:00
|
|
|
msgstr "<a tremote4>Exercice précédent</a> et <a cbot>programmation</a>."
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#
|
|
|
|
#~ msgid "train700:Classes"
|
|
|
|
#~ msgstr "train700:Classes"
|
|
|
|
|
|
|
|
#
|
|
|
|
#~ msgid "train700:"
|
|
|
|
#~ msgstr "train700:"
|
|
|
|
|
|
|
|
#
|
|
|
|
#~ msgid "train701:Remote control #3"
|
|
|
|
#~ msgstr "train701:Télécommande #3"
|
|
|
|
|
|
|
|
#
|
|
|
|
#~ msgid "train701:"
|
|
|
|
#~ msgstr "train701:"
|
|
|
|
|
|
|
|
#
|
2014-07-02 10:48:36 +00:00
|
|
|
#~ msgid ""
|
|
|
|
#~ "train701:Remote control a bot without using an information exchange post "
|
|
|
|
#~ "by using a string."
|
|
|
|
#~ msgstr ""
|
|
|
|
#~ "train701:Télécommandez un robot sans borne d'information en utilisant une "
|
|
|
|
#~ "simple chaîne de caractère."
|
2013-10-25 13:45:09 +00:00
|
|
|
|
|
|
|
#
|
|
|
|
#~ msgid "train701:Remote3"
|
|
|
|
#~ msgstr "train701:Remote3"
|
|
|
|
|
|
|
|
#
|
|
|
|
#~ msgid "train702:Remote control #4"
|
|
|
|
#~ msgstr "train702:Télécommande #4"
|
|
|
|
|
|
|
|
#
|
|
|
|
#~ msgid "train702:"
|
|
|
|
#~ msgstr "train702:"
|
|
|
|
|
|
|
|
#
|
|
|
|
#~ msgid "train702:Remote4"
|
|
|
|
#~ msgstr "train702:Remote4"
|
|
|
|
|
|
|
|
#
|
|
|
|
#~ msgid "train703:"
|
|
|
|
#~ msgstr "train703:"
|