Python を使用してミニオンを描画するにはどうすればよいですか?
前書き:
あのかわいい隻目のミニオンを覚えていますか?何事も自己顕示欲が強いので、Pythonで実装してみましょう、ミニオンが逃げていきます。
推奨: "Python チュートリアル"
1. Turtle ライブラリをインポートします
<pre style="-webkit-tap-highlight-color: transparent; box-sizing: border-box; font-family: Consolas, Menlo, Courier, monospace; font-size: 16px; white-space: pre-wrap; position: relative; line-height: 1.5; color: rgb(153, 153, 153); margin: 1em 0px; padding: 12px 10px; background: rgb(244, 245, 246); border: 1px solid rgb(232, 232, 232); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">import turtle as t t.pensize(4) t.speed(10)
ブラシのサイズと描画速度を設定します。値を変更してブラシの速度を向上させることができます。
2. ミニオンの頭を描く
<pre style="-webkit-tap-highlight-color: transparent; box-sizing: border-box; font-family: Consolas, Menlo, Courier, monospace; font-size: 16px; white-space: pre-wrap; position: relative; line-height: 1.5; color: rgb(153, 153, 153); margin: 1em 0px; padding: 12px 10px; background: rgb(244, 245, 246); border: 1px solid rgb(232, 232, 232); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">def head(): t.penup() t.fillcolor("#FFEE26") t.goto(-130, 10) t.pendown() t.begin_fill() t.seth(81) t.fd(90) t.seth(100) t.circle(-500, 3) t.circle(-100, 10) t.circle(-200, 25) t.circle(-110, 20) t.circle(-140, 30) t.circle(-180, 30) t.circle(-200, 20) t.circle(-140, 10) t.circle(-160, 50) t.seth(85) t.fd(-148) t.seth(-112) t.circle(-250, 14) t.fd(200) t.right(80) t.fd(190) t.seth(110) t.circle(-200, 7) t.circle(-130, 30) t.end_fill()
3. ミニオンの前後の角を描く
<pre style="-webkit-tap-highlight-color: transparent; box-sizing: border-box; font-family: Consolas, Menlo, Courier, monospace; font-size: 16px; white-space: pre-wrap; position: relative; line-height: 1.5; color: rgb(153, 153, 153); margin: 1em 0px; padding: 12px 10px; background: rgb(244, 245, 246); border: 1px solid rgb(232, 232, 232); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">def forefoot(): t.begin_fill() t.penup() t.goto(-120, -250) t.pendown() t.fillcolor("#030003") t.setheading(-135) t.circle(60, 20) t.fd(35) t.circle(20, 160) t.circle(100, 10) t.fd(20) t.goto(-120, -250) t.end_fill() def hindleg(): t.begin_fill() t.color("black", "#0045D9") t.penup() t.goto(-50, -300) t.pendown() t.setheading(-150) t.circle(-80, 60) t.setheading(90) t.circle(-40, 67) t.seth(-30) t.goto(-50, -300) t.end_fill()
3. ミニオンの服を描く
<pre style="-webkit-tap-highlight-color: transparent; box-sizing: border-box; font-family: Consolas, Menlo, Courier, monospace; font-size: 16px; white-space: pre-wrap; position: relative; line-height: 1.5; color: rgb(153, 153, 153); margin: 1em 0px; padding: 12px 10px; background: rgb(244, 245, 246); border: 1px solid rgb(232, 232, 232); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">def cloths(): t.begin_fill() t.penup() t.goto(-45, -70) t.pendown() t.fillcolor("#0045D9") t.setheading(-15) t.circle(500, 5) t.circle(400, 26) t.seth(-112) t.circle(-250, 7) t.seth(-69) t.circle(-250, 7) t.right(15) t.circle(-320, 18) t.circle(-330, 10) t.fd(80) t.right(81) t.fd(190) t.seth(141) t.circle(-180, 15) t.circle(-150, 30) t.right(6) t.circle(-90, 15) t.seth(-45) t.circle(50, 10) t.seth(-30) t.circle(200, 20) t.circle(150, 10) t.seth(92) t.circle(500, 10) t.setheading(75) t.goto(-45, -70) t.end_fill()
4. ミニオンのポケットを描画
<pre style="-webkit-tap-highlight-color: transparent; box-sizing: border-box; font-family: Consolas, Menlo, Courier, monospace; font-size: 16px; white-space: pre-wrap; position: relative; line-height: 1.5; color: rgb(153, 153, 153); margin: 1em 0px; padding: 12px 10px; background: rgb(244, 245, 246); border: 1px solid rgb(232, 232, 232); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">def pocket(): t.begin_fill() t.penup() t.goto(52, -120) t.pendown() t.fillcolor("#BFC5AD") t.seth(-15) t.circle(200, 25) t.seth(-88) t.circle(-200, 18) t.seth(-150) t.circle(-90, 5) t.right(10) t.circle(-90, 45) t.right(20) t.circle(-50, 50) t.goto(52, -120) t.end_fill() t.begin_fill() t.penup() t.goto(70, -155) t.pendown() t.fillcolor("#0045D9") t.circle(-25) t.end_fill() t.penup() t.goto(120, -160) t.pencolor("#5C7F58") t.pendown() t.seth(180) t.fd(20) t.right(60) t.circle(6, 340) t.pencolor("black")
5. ミニオンのボタンを描画
<pre style="-webkit-tap-highlight-color: transparent; box-sizing: border-box; font-family: Consolas, Menlo, Courier, monospace; font-size: 16px; white-space: pre-wrap; position: relative; line-height: 1.5; color: rgb(153, 153, 153); margin: 1em 0px; padding: 12px 10px; background: rgb(244, 245, 246); border: 1px solid rgb(232, 232, 232); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">def button(): t.begin_fill() t.penup() t.fillcolor("#FFFFFF") t.goto(-40, -80) t.pendown() t.seth(0) t.circle(-9, 360) t.end_fill()
6. ミニオンの左手を描画
<pre style="-webkit-tap-highlight-color: transparent; box-sizing: border-box; font-family: Consolas, Menlo, Courier, monospace; font-size: 16px; white-space: pre-wrap; position: relative; line-height: 1.5; color: rgb(153, 153, 153); margin: 1em 0px; padding: 12px 10px; background: rgb(244, 245, 246); border: 1px solid rgb(232, 232, 232); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">def lefthand(): t.begin_fill() t.penup() t.fillcolor("#FFEE26") t.goto(195, -56) t.pendown() t.seth(-8) t.circle(150, 15) t.circle(25, 40) t.left(2) t.fd(60) t.right(85) t.fd(28) t.right(92) t.fd(45) t.circle(-100, 20) t.circle(-80, 40) t.circle(80, 13) t.goto(195, -56) t.end_fill()
7. 関数
呼び出しの効果<pre style="-webkit-tap-highlight-color: transparent; box-sizing: border-box; font-family: Consolas, Menlo, Courier, monospace; font-size: 16px; white-space: pre-wrap; position: relative; line-height: 1.5; color: rgb(153, 153, 153); margin: 1em 0px; padding: 12px 10px; background: rgb(244, 245, 246); border: 1px solid rgb(232, 232, 232); font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: 2; text-align: start; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration-style: initial; text-decoration-color: initial;">head() mouth() righhand() glasses() goggles() forefoot() hindleg() cloths() pocket() foreleg() foreleg() ground() shoes() collar() button() lefthand() leftpalm() leftcollar()
は次のとおりです:
以上がPythonを使ってミニオンを描く方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。