2024-11-05
GPUを活用すると計算量が多いシミュレーションがサクサク動いてくれて気持ち良いですね。憧れの水面のシミュレーションもブラウザでサクサク!ThreeJS Waterを元に、ESモジュール化し、雨粒を足してみました。


「raindrop powered by ThreeJS Water」
src on GitHub
マウスでぐるぐるかき回すこともできます!メインのJavaScriptのコードは、すっきりシンプル、101行。雨粒コードはこれだけです setInterval(() => { const radius = 0.03; const strength = 0.02; const ndrops = 3; for (let i = 0; i < ndrops; i++) { watersim.addDrop( renderer, Math.random() * 2 - 1, Math.random() * 2 - 1, radius, strength ); } }, 100);


「threejs-water src on GitHub」

実装されているクラス毎に別ファイルとしました。
Caustics.js - 屈折
Pool.js - プール
Water.js - 水
WaterSimulation.js - 水シミュレーション(分解能256x256)
WaterSim.js - 全体をまとめたもの

Three.jsの使用バージョンがちょっと古い113。最新のESモジュール版にするといろいろと動かない点を直して、VRで遊べるようにししてみたい!

2024-11-04
星空を見るなら月齢カレンダーを見て、新月を狙いましょう。定期的にチェックしたくなるレゴのテクニックシリーズに「地球と月の周回軌道(42179)」を発見!


2時間半かかって、組み立てて完了。別途手元にあったモーターを使って電動化しました!


思った以上にたっぷり部品、4袋!レゴの組み立ては、プログラミングでいう写経。いろんな構造の作り方が勉強になって楽しい。


応用範囲が広そうな新パーツがうれしい!レゴテクニックシリーズの組み立て方は公開されているので、持っていなくてもある程度部品があれば作れますが、こういう特殊パーツがあると代替の実装方法を考えなくてはいけません。(42179の組み立て方PDF


土台ができました。一番大きな外周歯車も何かに使うと楽しそう!


完成!手で回すと太陽の周りを、月が地球の周りを回りながら、ついでに太陽も回ります!


手回しのハンドルを・・・


モーターを使って電動化!そのままだとトルクが足りず速すぎると思って、ピニオンギアで減速する作戦。壊れてしまわないような構造づくりが難しくて楽しい!


裏面。地味な苦労の跡。


固定するために部品追加。


合体させて電動化できた!


実は減速しなくても回っちゃうのでは!?


見事、高速回転にも成功!
実際の日付に合わせて自動的に回す飾りにしてもいいかも。

太陽や月の動き。地球からの月の見え方は太陽次第。地球の地軸の傾きによる季節変動。実際にぐるぐる回しながら検証する体験を通じた学びは忘れませんね!

links
- 地球と月の周回軌道 42179 | テクニック |レゴ®ストア公式オンラインショップJPで購入

2024-11-03
#js 
約30年前、大流行したポケベル。公衆電話からものすごいスピードでメッセージを打ち込む女子高生達に、睨まれつつ表を見ながらもたもた打ち込んだ高専生時代。その後PHsが登場、ポケベル入力によるメッセージが意外と楽なことに気が付き、iPhoneのフリック入力に出会うまで使っていました。

フリック入力が物理テンキーのポケベル入力に叶わない点は、走りながらのブライドタッチ。走っているとぶれてしまい思うようにフリック入力できません。ガラケー型のテンキーがあればいいのに・・・。


ひとまず手元のテンキーを使ってポケベル入力の再現してみました。


「pokeuchi for tenkey」
src on GitHub
PCのテンキーとガラケーのテンキーは上下が逆なので、テンキーの場合は789と123を入れ替える処理を入れてあります。なので、「77」で「あ」が出ます!

こちら、ポケベルの表を調べて発見した記事。
ポケベルを見たことのない世代が、調べてみたポケベルの驚きの世界 | そうがわパソコンサポート


なんと、14年前に公開した動画を使ってくれていました!

ポケベル入力 vs フリック、走りながら部門ならきっとポケベル入力の勝ち!

2024-11-02

福井県知事杯ハッカソン 2024」のDay2、最終発表会!会場は、jig.jp本店、2Fセミナールーム。


コメンテーターとして、平本健二さん、下山紗代子さんにお越しいただきました!


動画での声もどうぞ!


テーマは2市2つ、市内に推定1200ある空き家を活用すべく、空き家情報バンクへの登録を勧めたい敦賀市と、市民の声を政策に反映させるプラットフォームを整備したい鯖江市。チームごとにテーマを選んでもらって、開発期間1ヶ月を経て、いよいよ発表!


まずは敦賀市課題から、つるががつながるまちオセロ!位置情報付き写真を投稿したものがシロ、空き家情報がクロとしてマップ場に表示される様子がまるでオセロ!?


本ハッカソンを誰よりも楽しんでいた、チームAkasaka!


コメンテーター公共視点賞を獲得!


がらがらハウスチェッカー?〜あなたの空き家は何ポイント?〜
コンビニが近くにあるか?公園が近くにあるか?など、独自のポイントで空き家を評価して、自分にぴったりな空き家を探せるサービス。チームメンバーで、Code for FUKUI ロゴ制作者、波多野翼さんは先日の衆議院議員選挙で当選!


行政サービスではしづらい価値の見える化は、オープンデータ化と民間サービスであれば可能!


「つるが空き家インフォ - 敦賀市空き家情報サイト 敦賀空き家バンク」

こちらが敦賀市の課題!


「敦賀空き家一覧」
src on GitHub / CSVデータ
コメンテーターからも質問あった、スクレイピング技術の紹介。JavaScriptのランタイム、Denoと、スクレイピング用のライブラリ scrapeutil.js を使って、敦賀空き家の全データをCSVデータにするコードを作ってみました。csv-mapcsv-viewer拡張タグを使って表示しています。


続いて鯖江市課題。市内さまざまな取り組みを見て「応援ボタン」を押す、シンプルなプラットフォーム。


開発経験0からスタートしてプロトタイプ実装まで到達したのはすごい!


手を挙げるくらいの手軽さで、様々なまちの課題に意思表明するプラットフォーム「レッパンダ」


ナッジの活用、毎日4つの質問に答えるだけの手軽さがステキ!


LINEで友達登録するだけで始められ、回答内容はオープンデータとしてダウンロードすることもできて良い!


先行事例の調査レポートと差別化もスゴイ!


コメンテーター技術視点賞を獲得!


最後の作品「ことひろ」は、投票されたコメントをベクトル化して次元圧縮、クラスタリングし、ベルヌーイ分布を使ってマッピング、抽出された代表意見を見た、客観的な判断を目指します。


Remix、Go、Python、CloudFlare R2、PostgreSQL、Koyeb、OpenAI によって構成されたシステム。


ことひろで実現する未来
市民が市の課題などを自ら発見し、解決策を見つける力が育つ!


ことひろにゃんこかわいい!


最優秀賞、福井県知事賞を獲得!


主催の福井県庁、角さんより、大変よかったとコメント!


どんどん拡大、Code for FUKUI!


ハッカソン初参加の個人参加メンバーでのチーム、楽しかったと嬉しいコメント!


審査員、ありがとうございました!

次は、北陸の観光をテーマにしたハッカソン in 金沢!
「Hack!Hokuriku 北陸観光をハックせよ!ハッカソン - データで拓く未来の観光」参加者募集

links
- 福井県知事杯ハッカソン 2024
- ITで地域課題解決策競う 2面  | 社会 | 福井のニュース | 福井新聞D刊

Tweet
クリエイティブ・コモンズ・ライセンス
本ブログの記事や写真は「Creative Commons — CC BY 4.0」の下に提供します。記事内で紹介するプログラムや作品は、それぞれに記載されたライセンスを参照ください。
CC BY / @taisukef / アイコン画像 / プロフィール画像 / 「一日一創」画像 / RSS