Pencil Code Reference > jumpto
The turtle starts in the middle of the window, at (x, y) coordinates (0, 0).
jumpto x, y
jumps to an absolute location in
traditional Cartesian coordinates. In this coordinate system,
Each unit is one pixel, and each graph paper grid square is 25 units.
The mathematical coordinate axes are used, placing (0, 0)
at the middle with x increasing to the right (horizontally) and y increasing upward (vertically).
A vector represented as an array of two numbers can be used.
jumpto [x, y]
is treated the same as
jumpto x, y
.
jumpto
will jump to a location without drawing. You can use the function moveto with a pen to draw lines between points.
jumpto
does not affect the
turtle rotation, only its position.
dot yellow, 20 jumpto 50, 50 dot blue, 20 jumpto -75, -25 dot pink, 20 jumpto 0, -50 dot purple, 20 jumpto -125, 80 dot green, 20 jumpto -125, 100
The native coordinate system supported by HTML follows a different
convention: it places the (pageX, pageY) origin at the upper-left corner
of the page. pageX
increases to the right, but
pageY
is inverted: pageY
increases going down.
jumpto
supports native HTML coordinates if they are passed
with the pageX
and pageY
properties. Note
that HTML mouse events all have pageX and pageY properties, so
jumpto lastclick
will jump to the location of the last
mouse click.
Replay the demo to see how jumpto lastclick
works.
jumpto pageX: 50, pageY: 100 dot blue, 20 jumpto pageX: 150, pageY: 200 dot green, 20 jumpto pageX: 250, pageY: 100 dot yellow, 20 jump to lastclick dot purple, 20 fd 20
jumpto
will also jump to any element or jQuery object or
any other object that supports a pagexy() method that returns page
coordinates. For example jumpto otherturtle
will jump
to the location of another turtle.
Here is a summary of some types of locations that
jumpto
understands.
example | motion |
---|---|
jumpto x, y |
jump to (x, y) in traditional mathematical y-up coordinates. |
jumpto [x, y] |
same as jumpto x, y |
jumpto pageX: px, pageY: py |
jump using HTML page coordinates. |
jumpto lastmouse |
jump to the location of the last mouse event. |
jumpto otherturtle |
jump to another turtle. |
jumpto $('#spot') |
jump to the element with id spot. |
jumpto document |
jump to the center of the document. |
jumpto window |
jump to the center of the visible window. |
When passing a single location object to jumpto
, it supports
an optional second argument limiting the distance of the motion. When the
second argument is given, the turtle will jump towards the location, but
no farther than the limiting distance in pixels.
In the following program the turtle will jump towards the last mouse event twice per second, but will jump a distance of no more than 10 pixels each time.
This function is useful to emulate gait.
pen green
tick 2, ->
jumpto lastmouse, 10
In all these uses, jumpto
moves the turtle without changing
its direction.
If you want to draw lines between points, use jumpto
with a pen.