Chapter Twenty One

第21話



さて、気分を変えてデスクトップクロックを作ってみよう。
コンピュータの前に座っているものの、出てくるものは汗だけという状況を的確に表したような知性のかけら(?)もない企画だ。
〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜
今回のポイントは、カスタムコントロールと属性ノードのPositionを使ってみよう、といったところだ。
カスタムコントロールの例はExample>General>Controls>custom.llbにあるので一度みてみると良いだろう。無味乾燥な工業製品のダミーで埋まりがちなフロントパネルだが、少しの手間で雰囲気を変えることができる。
ごそごそ古い写真をかきまわしたら小型帆船の入った写真がでてきたので、これを加工して時計の文字盤の素材にすることにした。

この絵をフロントパネルに貼り付けて時計の文字盤にすることもできるが、針との位置合わせが難しいので、四角いボタンに貼り付けよう。ボタンなどの位置はPositionでコントロールすることができる。
カスタマイズしたいボタンを選択しておいて編集メニューから「制御器の編集...」を実行すると、画面の左にあるパネルが出てくる。
「画像インポート」は画像の大きさの制御・表示器になるし、「同寸法でインポート」は画像を縮拡して合わせてくれる。(詳しくはオンラインレファレンスに書いてあるので参照のこと。)

できあがったデスクトップクロックを紹介しよう。時計に見えるかな? ブーリアンのボタンを着色して分針と時針にすることにした。時刻のポイントもブーリアンだ。センスのいい人ならもっとかっこいい時計ができるだろう。文字盤にブーリアンを使ったのだから、分針が0になったときにフラッシングするようにしてみた。
始めはメーターをカスタマイズして使おうと思ったのだが、針のかたちをきれいに変えられなかったので、すぐにあきらめた。X-Y Graphは試していないが、面白いものができるかもしれない。

ダイアグラムは初期化と実行部分に分かれている。
初期化は文字盤と時刻のポイントのブーリアンの大きさと位置を設定している。角度を指定すると属性のPositionへのクラスターを計算するサブVIを作って手間を省いた。

Get Date/Time Stringは便利だが、LabVIEWが動作しているMac/PC/Unixの設定に依存するからやっかいではある。あまりやらないことだとは思うが、OSで時分の区切り文字を ":" から変更している場合は、Split Stringの検索文字を変えなくてはいけない。文字列を切り分けた後は数値に変換して、時針、分針の角度を計算してサブVIに渡しているだけだ。
分針が0の場合には下のケース構造で文字盤をON/OFFしてフラッシングをしている。
属性のPositionは制御器の左上の座標を指定するので、今回のVIでは少し使いづらい。このサブVIの中で中心の座標と左上の座標の変換をすることにした。

夏はシンプルなテーマにかぎる!と思ったが、神奈川も昨日から涼しくなってきている。
See you!


Nigel Yamaguchi

戻る