next up previous contents
: バッチ処理の使用方法 : ユーザインターフェース : RCMorphクラスのビューワにタイルを追加する   目次

モーフに画像を付ける

SerialPortMorphはRectangleMorphのサブクラスであるため、自身の画像を変更する機能は持っていなかったが、SerialPortMorphクラスのクラスメソッド内に、画像をBase64で変換されたテキストとして保持していた。モーフの生成時にクラスメソッドからテキストを受け取り、それをデコードして自身に貼り付けているのである。モーフに画像を付けること自体はSketchMorphというモーフを使うことで容易に行えるが、頻繁にモーフの画像を変更する必要性はないため、SerialPortMorphと同じ実装方法で画像を付けた。

画像データを保持するインスタンス変数はSerialPortMorphクラスが持っているため定義し直す必要はない。また、クラスメソッドに定義された画像データをデコードするメソッドはSketchMorphのメソッドの流用であった。そこでRCMorphではテキスト化された画像ファイルを返すクラスメソッドのimageDataを定義し直し、図8.2のようなマイコン基板の画像を貼り付けた。

図 8.2: モーフへの画像の貼り付け
\includegraphics[scale=1.0]{images/RCMorph.eps}



Deguchi Lab. 平成20年3月5日