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()
例えば、x座標が250、y座標が80の位置に移動させる場合は
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プログラミング関連

コメント

スポンサーリンク


このブログの人気の投稿

Ubuntu Softwareが起動しないのでいろいろと調べてみる(Ubuntu 20.04.1 LTS)

gnuplotでプロットなどの色をcolornameの指定で変更する

gnuplot : グラフにグリッド線を描く方法(set grid)

gnuplot : プロット画像のサイズ指定について(set sizeとの違い)

Pythonのformat()を使って1桁の16進数でも2桁で出力する方法