yoppa.org


SFC - デザインとプログラミング 2016

ニュートン力学による動き – Processingで動きを極める!

p5example161102

これまでやってきたように、Processingで位置と運動のベクトル(PVector)を操作することで、アニメーションを作成することができました。単純な動きの場合はこうした座標の足し算引き算で対応可能です。しかし、ここからさらに発展させて、よりリアルな動きを実現しようとすると、限界があります。今回は、単なる座標操作ではなく、運動の背後にある物理的な原理を理解して、その本質に迫ります。

アイザック・ニュートンは、運動の法則を基礎として構築した、力学体系を構築しました(ニュートン力学)。物体の運動や力、質量といったものは、ニュートンの運動の法則によって説明できます。

  • 第1法則(慣性の法則): 質点は、力が作用しない限り、静止または等速直線運動する
  • 第2法則(ニュートンの運動方程式): 質点の加速度は、そのとき質点に作用する力に比例し、質点の質量に反比例する
  • 第3法則(作用・反作用の法則): 二つの質点の間に相互に力が働くとき、質点 2 から質点 1 に作用する力と、質点 1 から質点 2 に作用する力は、大きさが等しく、逆向きである

今回は、このニュートンの運動の法則を援用しながら、様々な動きや力についてProcessingで実装しながら、動きに関する理解を深めていきます。

スライド資料

サンプルコード

位置と速度による運動 – 基本

速度と加速度

摩擦力を加える

重力を加える

壁でバウンドさせる

大量の物体を動かす

円形にランダムに拡がるように / マウスクリックでリセット