忍者ブログ

Memeplexes

プログラミング、3DCGとその他いろいろについて

最短時間で救助に向かうライフガード

海で溺れている人を助けに行く時、どのような経路で行くのが最短時間なのかを表示するプログラムです。


最速で助けろ!

泳ぐ速度:

操作方法

泳ぐ速度:ライフガードの泳ぐ速度を調節します。左に行くほど速いです。

マウスで溺れた人をドラッグ:溺れた人の位置を調節します。溺れた人は海の外に出すことができません。

マウスでライフガードをドラッグ:ライフガードの位置を調節します。ライフガードは砂浜にいなければいけません。

解説

これは、海で溺れた人を助けに行くときの最も早いルートを表示するプログラムです。水色は海を表し、茶色は砂浜、泣いている人は溺れた人、笑顔の人はそれを救助するライフガードです。

ライフガードは溺れた人まで一直線に移動してはいけません。泳ぐより走るほうが速いからです。海に入る前、陸にいる間にある程度溺れた人に近づかねばならないのです。つまり、砂浜と海の境界線で折れ曲がるルートで救助に向かうことになります。

光の屈折

これは光の屈折する仕組みと同じです。光は、あたかも自分が未来に当たる場所をあらかじめ知っており、そこへ最短時間で到達しようとしているかのようなルートを通ります。水中は空中より光の速度が遅いので、最短で到達するには空気と水の境界線で折れ曲がるようなルートを通らなくてはならないのです。

拍手[0回]

PR