うつ病WEBデザイナーがうつ病を克服するため独学で学んだことをアウトプットして共有するためのブログ

MDBloG

iPhone アイデア スクリプト 健康

友達がいないから一人で100メートル走のタイムをざっくりと測れるスクリプトを作ってみた!ぴえん。

2020年9月18日

学校に通っている頃は体育の授業や体力測定とかで100メートル走のタイムを測る機会があったりしますが、大人になってからはそんな機会も無く、「今100メートル何秒くらいで走れるのかしら?」と思いまして。

余談ですが、通ってた高校が海の近くにあって、外で体育の時間に強烈な浜風が吹いていたときがあって、その日先生が気まぐれで「100mタイムはかるど!(追い風で)」ってなりまして、クラス全員11秒台以上のとんでもない記録を出して盛り上がったことがありました。どうでもいいですけど。

 

んで現在、そんな強烈な浜風が吹いているようなところにも住んでおらず、なおかつストップウォッチを持ってタイムを測ってくれるような暇なお友達がいないので、スマホの加速度センサーとかGPS機能とか使って100メートルのタイムをセルフで測れるようなアプリとか無いかなーなんて探したんですけど、それらしきものも見つからず。

であれば自作してみようかなーってことで作ってみました。泣きながら自作してみることにしました。

孤独は人生の肥やしである。ぴえん。

 

やりたいこと

  1. スタートボタンを押すとカウントダウン開始
  2. 3秒前から音を鳴らし、銃声でスタート
  3. 100メートル走ったらそのタイムを計測

html+javascriptで制作することにした

ハイブリッドアプリ制作のmonacaで作ってみようかともおもったのですが、monacaの使い方もすっかり忘れてしまっていた(汗)

とりあえずiPhone の加速度センサーで移動距離を測定できないかと調べてみたのですが、どうも難しそう。

正確な100メートルタイムを測りたいわけではなく、ざっくりと100mくらいを何秒くらいで走れるかって程度でよかったので(学校とかでストップウォッチで測るのも多少誤差ありますし)、GPSの機能使ってざっくり100メートル測れればいいやってことで調べたところ、なんとなくできそう。

こちらのページを参考にさせていただきましてGPSの2点間の距離を計測っていうのを応用することにしました。
https://qiita.com/s-yoshiki/items/b0a6f2143db0e1a191e8

大体の流れはこんな感じ

  1. スタート地点の位置情報取得(https://kkblab.com/make/javascript/gps.htmlを参考にさせていただきました)
  2. タイマーを動かしながら移動した地点とスタート地点の間の距離を取得
  3. 前回計測地点とさらに移動した地点の距離を計測して加算
  4. 距離が100メートルを超えたらタイマーストップ
  5. 一応30秒経過時点でもタイマーストップ

というわけで作りました


ざっくり100m走

仕様に「スタート押したら10秒前からカウントダウン」というのを追加しまして。
あと、スタート押した瞬間に1回ビープ音が鳴りますが、スクリプト内からの呼び出しだけではiPhoneでは音がならず、clickイベントとかで一発鳴らせば、setIntervalとかでも音がなるようになるということで仕方なくこうしました。

テストで走ってみた結果

やっぱ距離測定の誤差がとんでもないときがありました。

ありえないタイムが出たり、100m走ってないのに終了しちゃったりと、いろいろ不具合あります。

ただ、テストのたびに100メートル何本も走るので、しんどいです。修正はぼちぼちということで。

script的には、setIntervalとかがずっと回りっぱなしっていうのもどうにかしたいんだけどなあ・・・あといろいろブサイクなコードになっているのもどうにかしたいんだけどなあ。。。

 

ふつうにストップウォッチで測ってくれるともだちを作ったほうが早いのかなあ・・・

-iPhone, アイデア, スクリプト, 健康

Copyright© MDBloG , 2021 All Rights Reserved Powered by AFFINGER5.