Python turtle graphics : 指定座標への移動(goto, setposition, setx, sety)
turtleの指定座標への移動
turtle graphicsではforwardやright、leftなどによる前進や回転でturtleを移動させる他に、座標を指定して直接その位置へturtleを移動させることも出来ます。x、y座標を指定して移動する
以下のメソッドは引数としてx、y座標を指定すると、その位置へturtleが移動します。- turtle.goto()
- turtle.setposition()
- 省略形 : turtle.setpos()
turtle.goto(250, 80)
とします。
座標を配列として指定
またこれらのメソッドはx、yの引数2つの他、例えば[30, 60]のような配列を引数とすることも可能です。その場合は以下のようになります。
p = [100, 200]
turtle.goto(p)
x、yのどちらか一方の座標のみ指定して移動する
以下のメソッドではxもしくはy、一つの引数だけ指定して移動することが出来ます。- turtle.setx()
- turtle.sety()
移動時に線を描くかどうか
さて、以上のような座標を指定して移動するとき、線を描くかどうかを場合によって選択する必要が出てくるでしょう。単にそのままメソッドを実行した場合は線が描かれます。しかしそうではなく、移動時には線を描かせないようにしたい場合もあるでしょう。そういった場合は以下のメソッドを組み合わせて用います。
線を描くペンを無効にする。
- turtle.penup()
- 省略形 : turtle.pu()
- 省略形 : turtle.up()
無効にしたペンを再度有効にする。
- turtle.pendown()
- 省略形 : turtle.pd()
- 省略形 : turtle.down()
実際にこれらのメソッドを用いる場合、まず移動前にペンを無効にしておいて、移動後に再びペンを有効にします。
実行例は以下のようになります。
turtle.penup()
turtle.goto(30, 210)
turtle.pendown()
その他
turtle.home()というメソッドがあり、これはturtleを初期位置(0, 0)に戻すものです。ただこちらはturtleの向いている角度も初期状態に戻るため、ここで紹介した他のメソッドとはやや毛色が異なるものです。まとめページ
Python turtle graphics まとめスポンサーリンク
Amazon商品リンク : Pythonプログラミング関連
コメント
コメントを投稿