1<chapter id="getting-started"> 2<title>Getting Started</title> 3<para>When you start &kturtle; you will see something like this:</para> 4<screenshot> 5 <screeninfo>Here is a screenshot of &kturtle; when you start it for the first time</screeninfo> 6 <mediaobject> 7 <imageobject> 8 <imagedata fileref="mainwindow.png" format="PNG"/> 9 </imageobject> 10 <textobject> 11 <phrase>&kturtle; on a fresh start</phrase> 12 </textobject> 13 </mediaobject> 14</screenshot> 15<para>In this Getting Started guide we assume that the language of the &turtlescript; commands is English. You can change this language with the <menuchoice><guimenu>Settings</guimenu><guisubmenu>Script Language</guisubmenu></menuchoice> submenu. Be aware that the language you set here for &kturtle; is the one you use to type the &turtlescript; commands, not the language used by &kde; on your computer and used to display the &kturtle; interface and menus.</para> 16 17<sect1 id="first-steps"> 18<title>First steps with &turtlescript;: meet the Turtle!</title> 19<para>You must have noticed the turtle in the middle of the canvas: you are just about to learn how to control it using commands in the editor.</para> 20 21<sect2 id="the-turtle-moves"> 22<title>The Turtle Moves</title> 23<para>Let us start by getting the turtle moving. Our turtle can do 3 types of moves, (1) it can move forwards and backwards, (2) it can turn left and right and (3) it can go (jump) directly to a position on the screen. Try this for example:</para> 24<para> 25<screen> 26forward 100 27turnleft 90 28</screen> 29Type or copy-paste the code to the editor and execute it (using <link linkend="run-execute"><menuchoice><guimenu>Run</guimenu><guimenuitem>Run</guimenuitem></menuchoice></link>) to see the result.</para> 30 31<para>When you typed and executed the commands like above in the editor you might have noticed one or more of the following things:</para> 32<orderedlist> 33<listitem><para>That — after executing the commands — the turtle moves up, draws a line, and then turns a quarter turn to the left. This because you have used the <link linkend="forward"><userinput>forward</userinput></link> and the <link linkend="turnleft"><userinput>turnleft</userinput></link> commands.</para> 34</listitem> 35<listitem> 36<para>That the color of the code changed while you where typing it: this feature is called <emphasis>intuitive highlighting</emphasis> — different types of commands are highlighted differently. This makes reading large blocks of code more easy.</para> 37</listitem> 38<listitem> 39<para>That the turtle draws a thin black line.</para> 40</listitem> 41<listitem> 42<para>Maybe you got an error message. This could simply mean two things: you could have made a mistake while copying the commands, or you should still set the correct language for the &turtlescript; commands (you can do that by choosing the <menuchoice><guimenu>Settings</guimenu><guisubmenu>Script Language</guisubmenu></menuchoice> submenu).</para> 43</listitem> 44</orderedlist> 45 46<para>You will likely understand that <userinput>forward 100</userinput> instructed the turtle to move forward leaving a line, and that <userinput>turnleft 90</userinput> instructed the turtle to turn 90 <glossterm linkend="degrees">degrees</glossterm> to the left.</para> 47 48<para>Please see the following links to the reference manual for a complete explanation of the new commands: <link linkend="forward"><userinput>forward</userinput></link>, <link linkend="backward"><userinput>backward</userinput></link>, <link linkend="turnleft"><userinput>turnleft</userinput></link>, and <link linkend="turnright"><userinput>turnright</userinput></link>.</para> 49</sect2> 50 51<sect2 id="more-examples"> 52<title>More examples</title> 53<para>The first example was very simple, so let us go on!</para> 54 55<para> 56 57<screen> 58reset 59 60canvassize 200,200 61canvascolor 0,0,0 62pencolor 255,0,0 63penwidth 5 64 65go 20,20 66direction 135 67 68forward 200 69turnleft 135 70forward 100 71turnleft 135 72forward 141 73turnleft 135 74forward 100 75turnleft 45 76 77go 40,100 78</screen> 79Again you can type or copy-paste the code to the editor or open the <filename>arrow</filename> example in the <guimenu>Examples</guimenu> submenu and execute it (using <link linkend="run-execute"><menuchoice><guimenu>Run</guimenu><guimenuitem>Run</guimenuitem></menuchoice></link>) to see the result. In the next examples you are expected to know the drill.</para> 80 81<para>You might have noticed that this second example uses a lot more code. You have also seen a couple of new commands. Here a short explanation of all the new commands:</para> 82 83<para>After a <userinput>reset</userinput> command everything is like is was when you had just started &kturtle;.</para> 84 85<para><userinput>canvassize 200,200</userinput> sets the canvas width and height to 200 <glossterm linkend="pixels">pixels</glossterm>. The width and the height are equal, so the canvas will be a square.</para> 86 87<para><userinput>canvascolor 0,0,0</userinput> makes the canvas black. <userinput>0,0,0</userinput> is a <glossterm linkend="rgb">RGB-combination</glossterm> where all values are set to <userinput>0</userinput>, which results in black.</para> 88 89<para><userinput>pencolor 255,0,0</userinput> sets the color of the pen to red. <userinput>255,0,0</userinput> is a <glossterm linkend="rgb">RGB-combination</glossterm> where only the red value is set to <userinput>255</userinput> (fully on) while the others (green and blue) are set to <userinput>0</userinput> (fully off). This results in a bright shade of red.</para> 90 91<para>If you do not understand the color values, be sure to read the glossary on <glossterm linkend="rgb">RGB-combination</glossterm>.</para> 92 93<para><userinput>penwidth 5</userinput> sets the width (the size) of the pen to <userinput>5</userinput> <glossterm linkend="pixels">pixels</glossterm>. From now on every line the turtle draw will have a thickness of <userinput>5</userinput>, until we change the <userinput>penwidth</userinput> to something else.</para> 94 95<para><userinput>go 20,20</userinput> commands the turtle to go to a certain place on the canvas. Counted from the upper left corner, this place is 20 <glossterm linkend="pixels">pixels</glossterm> across from the left, and 20 <glossterm linkend="pixels">pixels</glossterm> down from the top of the canvas. Note that using the <userinput>go</userinput> command the turtle will not draw a line.</para> 96 97<para><userinput>direction 135</userinput> set the turtle's direction. The <userinput>turnleft</userinput> and <userinput>turnright</userinput> commands change the turtle's angle starting from its current direction. The <userinput>direction</userinput> command changes the turtle's angle from zero, and thus is not relative to the turtle previous direction.</para> 98 99<para>After the <userinput>direction</userinput> command a lot of <userinput>forward</userinput> and <userinput>turnleft</userinput> commands follow. These command do the actual drawing.</para> 100 101<para>At last another <userinput>go</userinput> command is used to move the turtle aside.</para> 102 103<para>Make sure you follow the links to the reference. The reference explains each command more thoroughly.</para> 104 105 106</sect2> 107</sect1> 108 109 110 111<!-- EXTRA SECTIONS CAN BE ADDED TO THE "GETTING STARTED" 112 113<sect1 id="calculations"> 114<title>Simple Calculations</title> 115<para> 116Not yet written 117</para> 118</sect1> 119<sect1 id="using_variables"> 120<title>Using Variables: creating 'number containers'</title> 121<para> 122Not yet written 123</para> 124</sect1> 125<sect1 id="using_strings"> 126<title>Using strings: creating 'text containers'</title> 127<para> 128Not yet written 129</para> 130</sect1> 131<sect1 id="logic"> 132<title>Logic: asking the computer simple questions</title> 133<para> 134Not yet written 135</para> 136</sect1> 137<sect1 id="recursion"> 138<title>Recursion: the Turtle is using itself</title> 139<para> 140Draw a maze for example 141</para> 142</sect1> 143--> 144 145 146</chapter> 147