カテゴリー
お知らせ メンター雑記 小技

アナログ時計を作ってみた

時計と言っても秒針のみです。悪しからず。

何かアナログっぽいものを作ってみようと思い作品を探してみたところ、時計は割と簡単にできることがわかりました。

スプライトで秒針を描いて回転させれば良さそうです。

⚑ が押されたとき [秒 v] を (90) にする ずっと (秒) 度に向ける (1) 秒待つ [秒 v] を (1) ずつ変える end

もう少し何かできないかと考えて、文字盤をペンで描いてみました。最初はフリーハンドの感じで座標を決めていけば、とペンの操作を確認しながら線を適当に描いてみたところ、電卓の7セグで表現すれば多少スマートにできるのでは、と思いついて実装してみました。

例えば文字盤の1時の位置に「1」を描く場合は、時計の中心を原点としてY軸から右方向に回転するイメージでペンの座標(penX, penY)を計算します。そして描き始めの位置が決まったら、時刻に合わせて文字を描きます。

もし <(文字盤) = (1)> なら ペンを上げる x座標を((penX) + (5))、y座標を(penY)にする ペンを下ろす x座標を((penX) + (5))、y座標を((penY) + (-20))にする ペンを上げる end

これを1から12まで繰り返せば良いのですが、7セグメントなので7個の描画パターンを用意すればもう少し簡略化できそうです。今日はひとまずここまで。

(追記:2月16日)

昨日教えてもらったのですが、メンターのkamoya86さんが約1年前に時計を作っていました。
ScratchWatch by kamoya86

現在の日付や時刻が使えるんですね。勉強不足で失礼しました。🙇

スクラッチスタジオ CoderDojo IYO に伊予のニンジャやメンターの作品を公開していますのでこちらもご覧ください。