Pythonで ヘビのアニメ – 2

前作「ヘビのアニメ」を改良して、カエルを登場させました。この次は、ヘビが近づいたらカエルが跳んで逃げるようにしたいです。アニメとソースコードを載せます。Python 開発環境でご試用ください。

# hebi230307R.py
# へびのアニメ-2
# 2023.03.07 by Kero

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation

fig = plt.figure(figsize=(10, 2))
plt.xlim(10,40)
film = []
frog = np.array([[0, 1, 1.5, 0],[0, 0, 0.4, 0]]) # カエルの胴体。
feye = np.array([[1.],[0.32]])# カエルの目。


for i in range(200):
    j = i / 5
    x = np.linspace(j, j+3.5*np.pi,100)
    y = np.sin(x) # ヘビはサインカーブが元。
    for k in range(100):
        y[k] = (y[k] + 1) * (0.5 + 0.005 * k) # 頭大尾小。
    hebi = plt.plot(x, y, c='darkorchid', lw=10) # ヘビを描く。
    frogx = frog[0] + 25
    feyex = feye[0] + 25
    frog2 = plt.plot(frogx, frog[1], c='g',lw=3)
    feye2 = plt.plot(feyex, feye[1], 'o', c='k', markersize=6)
    zenbu = hebi + frog2 + feye2
    film.append(zenbu) # 1コマ焼付。

anim = animation.ArtistAnimation(fig, film, interval=100)
anim.save('hebi-0307R.gif', writer='pillow')
plt.show()

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です