最も単純なインターフェースは、入力欄を設けることです。今の場合、2×2変換行列を自由に変更したいので、4つの入力欄を用意すれば良いことになります。しかし、4つの入力欄を用意するにしても、色々な方法があります。
エディタ部品
部品は位置を指定しないと、左の方に配置されます。左の方だと原点に近くて、一次変換による点の移動を調べるのには不便そうですよね。そこで、エディタ部品を右の方に配置してみます。
- エディタ.nako
!『matrix.nako』を取り込む
Aとは行列
基本X=母艦の幅-200
A00とはエディタ
その変更した時は〜0,0をA00に成分変更
A01とはエディタ
その変更した時は〜0,1をA01に成分変更
A10とはエディタ
その変更した時は〜1,0をA10に成分変更
A11とはエディタ
その変更した時は〜1,1をA11に成分変更
●成分変更({整数}I,{整数}Jを{数値}Nに)
Aの要素[I][J]=N
システム変数の基本X,基本Yを設定すると、生成されるGUI部品は自動的にその位置に配置されます。さらに、GUI部品が生成されるときに、基本Yの値がその部品の高さ+部品間隔の分だけ増えるようになっているので、続けて部品を作成すれば自動的に縦に並びます。
フォーム部品・スピンエディタ部品
しかし上の例だと、ちょうどエディタのある当たりに調べたい点が来た場合に見づらそうですね。それに、どこが何行何列の成分なのか非常に分かりにくいです。
そこで別のウィンドウに表示させてみましょう。なでしこで最初に表示されるウィンドウ(メインフォーム)のことを母艦を呼びますが、二つ以上のウィンドウを出したい場合はフォーム部品を使用します。また、数値を入力するのに適したGUI部品として、スピンエディタがあります。スピンエディタは、三角形状のボタンやキーボードの上下キーを押すことで、現在入力されている整数値を1ずつ増減させることができます。そして、何行何列の値を設定しているか分かりやすいように、スピンエディタを行列と同じように配置します。複数の部品を配置するには、部品の位置
と、部品の右側
・下側
を利用するのが便利です。
- エディタ.nako
!『matrix.nako』を取り込む
Aとは行列
A=「1,0{~}0,1」
行列窓とはフォーム
これについて
テキストは『変換行列』
Wは265。Hは85
A00とはスピンエディタ
これについて
変更した時は〜0,0をA00に成分変更
親部品は行列窓。位置は『5,5』
A01とはスピンエディタ
これについて
変更した時は〜0,1をA01に成分変更
親部品は行列窓。位置はA00の右側
A10とはスピンエディタ
これについて
変更した時は〜1,0をA10に成分変更
親部品は行列窓。位置はA00の下側
A11とはスピンエディタ
これについて
変更した時は〜1,1をA11に成分変更
親部品は行列窓。位置はA10の右側
行列窓を表示
●成分変更({整数}I,{整数}Jを{数値}Nに)
Aの要素[I][J]=N