TurtleSheet ReadMe


Peter Burkimsher 2016-10-26

peterburk@gmail.com

What is TurtleSheet?

A plotting program based on LogoWriter, integrated with a spreadsheet.

What can I use it for?

This is not "just a toy" (my housemate said that). There are many data-driven plots that Excel can't yet draw.
For example:
Subway maps, Gantt chart, efficiency arrows, circuit diagram, axes, box plot, Venn diagram, traffic simulator,
population pyramid, phone tower hexagons, clock timing diagrams, tree graphs, chemistry, timelines...

How do I use it?

Basic operation

  • Type some Logo code into the Logo Code field on the bottom left.
  • Click Compile.
  • See the JS equivalent in the JavaScript code field. You can also type directly into here.
  • Click Run.
  • See the turtle move in the Drawing area on the top right.
  • Other buttons

  • Import takes tab-delimited data from the Import Area and copies it into the spreadsheet.
  • Clear removes all data from the spreadsheet.
  • Save copies the Logo Code field into HTML5 LocalStorage (a kind of cookie).
  • Load brings back a saved program from LocalStorage and puts it into the Logo Code field.
  • Shortcuts

  • lt 90 turns the turtle left by 90 degrees.
  • fd 50 moves the turtle forward by 50 steps (you might need to zoom out to see this).
  • rt 90 turns the turtle right by 90 degrees.
  • cg (clear graphics) clears the Drawing area and moves the turtle back to where it started.
  • square draws a square of size 50 pixels.
  • railway draws a subway-style map of the train network in Taiwan.
  • What are some other commands?

  • bk 50 moves the turtle back by 50 pixels
  • label [hello world] draws a text label.
  • circle draws a circle.
  • pu (pen up) picks the pen off the paper - moving will not draw a line.
  • pd (pen down) puts the pen down the paper - moving will start drawing a new line.
  • repeat 4 [fd 50 rt 90] generates a for loop in JavaScript that draws a square.
  • What new features can I expect in future?

  • Object-oriented design. Every time the pen is picked up and put down, a new object is created.
  • Saving multiple "files" into LocalStorage.
  • Compile subroutines in Logo code (to cube ...end).
  • Import image into Drawing area.
  • Draggable turtle, objects.
  • Onclick scripts.
  • Animation, save gif.
  • Multiple turtles.
  • Setsh to change the turtle icon.
  • Line colour, width.
  • Fill area.
  • Object awareness - don't draw a label over something else.
  • Diagonal selection in spreadsheet.