ラベル Python の投稿を表示しています。 すべての投稿を表示
ラベル Python の投稿を表示しています。 すべての投稿を表示

2023年10月27日金曜日

バネの伸縮アニメーション

 Tkinterを使用してバネの伸縮アニメーションを実装したサンプルコードを示します。

import tkinter as tk


# ウィンドウの設定

window = tk.Tk()

window.title("バネのアニメーション")


# キャンバスの設定

canvas = tk.Canvas(window, width=400, height=300)

canvas.pack()


# バネの初期位置とパラメータ

x1, y1, x2, y2 = 100, 150, 300, 150

spring_length = 100

spring_constant = 0.05


# アニメーションの更新関数

def update_animation():

    global x1, y1, x2, y2


    # バネの伸縮

    dx = x2 - x1

    dy = y2 - y1

    distance = (dx**2 + dy**2)**0.5

    spring_force = spring_constant * (distance - spring_length)

    dx_norm = dx / distance

    dy_norm = dy / distance

    x1 += spring_force * dx_norm

    y1 += spring_force * dy_norm


    # キャンバスの更新

    canvas.delete("spring")

    canvas.create_line(x1, y1, x2, y2, fill="blue", width=5, tags="spring")

    canvas.after(10, update_animation)


# 初期表示

canvas.create_line(x1, y1, x2, y2, fill="blue", width=5, tags="spring")


# アニメーション開始

update_animation()


window.mainloop()

このコードでは、Tkinterを使用してウィンドウを作成し、バネのアニメーションをキャンバス上に描画します。update_animation関数内で、バネの伸縮を計算し、キャンバス上の線をアニメーションとして更新します。アニメーションは10ミリ秒ごとに更新されます。

このコードを実行すると、ウィンドウ上にバネが伸び縮みするアニメーションが表示されます。バネの振る舞いをカスタマイズするために、spring_lengthやspring_constantなどのパラメータを調整できます。




2023年6月6日火曜日

Pythonで何歩歩けば何カロリー消費して何グラム痩せるかの計算コンソールを作るためのコードは次のとおりです。


Pythonで何歩歩けば何カロリー消費して何グラム痩せるかの計算コンソールを作るためのコードは次のとおりです。

 def calorie_consumption(steps, weight):

  """歩数と体重から消費カロリーを計算します。


  Args:

    steps: 歩数

    weight: 体重(kg)


  Returns:

    消費カロリー(kcal)

  """


  mets = 3.0  # 一般的な散歩の運動強度

  calories = steps * mets * weight * 0.004184


  return calories


def weight_loss(calories, time):

  """消費カロリーと時間から体重減少量を計算します。


  Args:

    calories: 消費カロリー(kcal)

    time: 時間(時間)


  Returns:

    体重減少量(g)

  """


  calories_per_gram = 4.184  # 1kcalで減少する体重(g)

  weight_loss = calories / calories_per_gram / time


  return weight_loss


def main():

  """メイン関数。

  """


  # 歩数を入力してください。

  steps = int(input("歩数を入力してください: "))


  # 体重を入力してください。

  weight = float(input("体重を入力してください(kg): "))


  # 消費カロリーを計算します。

  calories = calorie_consumption(steps, weight)


  # 体重減少量を計算します。

  weight_loss = weight_loss(calories, 1)


  # 結果を出力します。

  print("消費カロリー: {}kcal".format(calories))

  print("体重減少量: {}g".format(weight_loss))


if __name__ == "__main__":

  main()


このコードを実行すると、次のようになります。


```

歩数を入力してください: 10000

体重を入力してください(kg): 60

消費カロリー: 1800kcal

体重減少量: 40g

```