かれいどすこーぷ
かれいどすこーぷ (Kaleidoscope) は、万華鏡をシュミレートするプログラムです。
これは、私にとって初めてのパームウェアで、
第2回「クリエ」プログラムコンテストへの出品作でもあります(残念ながら入選はなりませんでした)。
まだ、一度もパームウェアを作ったことがないのに「応募宣言します!」に採用されてしまい、
冷や汗をかきながらなんとか出品に至った物です。
もっとも、そういう追い込まれた状況にでもならなければ、
このように実用性の乏しいプログラムが完成にいたることはなかったと思います。
[ 履歴 ]
- V1.0 (2001/08/11) - 最初のリリース
- V1.1 (2001/09/11) - 時計機能追加。Visor Prism で ScreenLock が働かない事に対する対応。メニューから各パネルを表示する API を FrmGotoForm から FrmPopupForm に変更。
[ 既知の問題 ]
- 160x160 画面で鏡の大きさ (Mirror Setting - Size) を 11% 以下にすると Fatal Exception になる。
- Visor Prism 等、一部の機種で ScreenLock という API が働かないため「具」の表示が逐次行われます。
また時計も表示できません。
[ 対象パームデバイス ]
PalmOS 3.5 以上を搭載したカラー・パームデバイスです。
白黒デバイスでも稼働は可能と思いますが、カラーで使用することしか考慮していません。
実機によるテストは CLIE PEG-N700C で行いました。
POSE によるテストは CLIE PEG-S300, CLIE PEG-S500C, CLIE PEG-N600C, CLIE PEG-N710C で行いました。
[ インストール ]
Kaleido.prc をホットシンク等でインストールするだけです。
必要に応じて、日本語ローカライズ・モジュール Kaleido_jpJP.prc もインストールします。
このローカライズ・モジュールは PalmOS 3.5 の機能を使用していますので、
ローカライズ・ハック等のプログラムは必要ありません。
[ ジョグによる操作 ]
ジョグダイヤルの回転、およびプッシュ操作により万華鏡の回転を制御出来ます。
- ジョグダイヤルを押す度に万華鏡が回転したり停止したりします。
- 停止中にジョグダイヤルを回すと、それに応じて万華鏡が回転します。
また、万華鏡が自動的に回転している時にジョグダイヤルを回転させると、
回転方向を変更することが出来ます。
[ メニューによる操作 ]
|
- Stop - 万華鏡の回転を停止します。
- Left Turn - 万華鏡を左に回転させます。
- Right Turn - 万華鏡を右に回転させます。
|
[ 時計の表示 ]
|
- 日付および時刻の表示をすることが出来ます。
- 細かい設定は「設定」の項をご覧ください。
- 時計の更新は万華鏡が回転しているときのみ行われます。
- 時計の表示部分をタップしてドラッグすることにより表示位置の変更できます。
- 日付および時刻の表示形式は「環境設定」の「書式」ページの設定により変わります。
|
[ 設定 ]
|
Option メニュー下に各種設定パネルがあります。
設定によっては、画面の処理に時間がかかることがありますので注意してください。 |
|
- Speed - 万華鏡の回転速度のパラメーターです。実際には一つの画面を処理するのに相当する数値より大きな数値を指定したときに次の画面の処理をする時間を遅らせる物です。
- Rotation Angle - 万華鏡の回転角度です。
- JOG Rotation - ジョグを回したときの回転角度です。
- Gravity - 重力の影響により「具」が動く距離を画素数で指定します。
- Random - 「具」を乱数により移動させる距離を画素数で指定します。
- Random Object Placement - 万華鏡が回転する度に乱数による「具」の再配置を行います。Gravity と Random の指定は無効になります。
- Force Low Resolution - 強制的に 160x160 の画面にします。
|
|
- Fore - 枠の色の設定です。
- Back - 背景色の設定です。
|
|
好きな色をタップして選択します。 |
|
- Sound Enable - サウンド機能を有効にします。
- Interval - サウンド機能を働かせる間隔を指定します。実際には一画面の処理時間より短い時間を指定した場合は、この数字をいくつにしても替わりはりません。
- Duration - 一つの音を鳴らしている時間です。
- Volume - 音の大きさを調節します。
実際の所、このサウンド機能は”おまけ”です。
システム・ビープなので貧弱な音しかでず、加えて画面の処理が重いので途切れ途切れにしか音が出ないのです。
サウンドを楽しむためには、「具」の数を小さくしたり、鏡の大きさを 40% から 50% 位にして、画面を処理する時間を小さくしたほうが良いです。
ローレゾにするのも良い方法です。
曲目は J.S.バッハの「主よ、人の望みの喜びよ」("Joy", Choral der Kantate Nr.147) の一節です。 |
|
各「具」の横の数字を設定すると、その数だけ「具」が生成されます。
一番小さい「具」は色も変更できます。
160x160 の画面では、大きい「具」は全て 0 にした方が良いでしょう。 |
|
- mirrors - 鏡の数を、2枚もしくは3枚に設定します。
鏡を2枚にすると正六角形が6個の画像、3枚にすると無限に広がる画像になります。
- Draw Mirror Frames - 鏡によって作られる枠を表示します。
- Size - 鏡の大きさを画面の幅に対する割合で指定します。
|
|
- Text Color - 時計の文字色の設定です。
- Background Color - 時計の背景色の設定です。
- Font Selection - 時計の文字フォントの設定です。
- Default Position - 時計の表示位置をリセットします。
- DATE/TIME - 日付、時計部分を、それぞれ表示するかどうかを設定します。
- Date Format - 日付の表示形式をロングもしくはショートに設定します。
下の時計表示のサンプルは万華鏡が停止状態の時には表示されません。
|
|
現在の設定はプログラムを停止すると自動的に保管され、
次にプログラムを開始したときに復元されます。
それとは別に3種類の設定を保管することが出来ます。 |
|
- Description - 設定の説明を自由に付けられます。
- LOAD - 指定された設定を復元します。
- SAVE - 現在の設定を保管します。
|
[ 謝辞 ]
私に初めての palmware を作成するきっかけを与えてくれ、
しかも開発用に CLIE PEG-N700C を提供してくださった「ソニー株式会社」に感謝します。
「クリエ」アイコンコンテストに応募してくださった多くのみなさん、
すてきなアイコンをありがとうございました。
どれか一つだけを選ばなければならなかったのが、辛いほど素晴らしいアイコンの数々でした。
寺見龍樹さま、素敵なアイコンをありがとうございました。
万華鏡の本質を知り抜いた作品に感銘いたしました。
せっかく美しいアイコンを頂いたのに、プログラムの内容がアイコンに負けているのが申し訳ないです。
muchy.com の RUF さん、四つ星を頂き、ありがとうございました。
また、RUF さんのアイデアにより時計を表示する機能を付加いたしました。
にて三つ星付きで紹介頂きました。
主宰の中村さんに感謝いたします。
万華鏡の事を知るにはお勧めのサイトです。
私も、このプログラムを作るにあたってこのサイトで勉強させて頂きました。
「具」という表現も、こちらのサイトがオリジナルです。
N's LAB - Nobumichi Kozawa