このクラスは典型的な Dalog を提供します。これには1行以上のテキストを格納でき、それぞれに1つ以上のボタンを付けられます。ボタンのどれかをクリックすると、ダイアログを終了します。その後 getChoice() を呼び出して、押されたボタンを判断できます。ユーザに単純なメッセージを表示したり、複数の選択ができる質問を提供したりするのに便利です。
このクラスは典型的な Dalog を提供します。これには1行以上のテキストを格納でき、それぞれに1つ以上の TextFields を付けらます。それぞれの横には Label を付けられます。また "OK" ボタンと "Cancel" のボタンも格納しています。どれか1つをクリックするとダイアログを終了します。getEntries() を呼び出すと、TextFields に入力されたテキストを取得できます。ユーザが情報を入力するプロンプトとして便利です。
EntriesDialog と似ていますが、より一般的です。TextFields を使う代わりに、ダイアログに表示される Component のリストを、それぞれの隣にラベルを付けて指定できます。また "OK" ボタンと "Cancel" のボタンも、その下に表示します。ダイアログの終了後、ダイアログ終了にどのボタンが使われたかを、clickedOk() を呼び出して調べられます。さまざまな用途に使える、とても柔軟性のあるクラスです。
ComponentsDialog に似ていますが、さらに一般的です。 "OK" ボタンと "Cancel" のボタンで渡せる、任意の Panel を格納する Dialog を表示します。
RGBColor オブジェクトを編集する Dialog です。RGB, HSV, HLS カラーモデルをサポートしています。
Texture と Material の編集機能を作成するとき重要な Component です。これに Texture か Material または両方を渡すと、その Texture や Material を割り当てた状態の、レンダーした球の画像を表示します。ユーザはマウス操作でその球を回転でき、視点の角度を変えて見ることができます。Texture や Material が変わると、render() メソッドを呼び出して画像を再計算します。
数値の選択に使う Component です。Scrollbar と TextField が1つずつの構成で、それぞれが値の編集に使えます。テキストフィールドに無効な入力(数値ではない、または範囲外の数値)がタイプされるとテキストが赤くなり、ユーザに警告します。このクラスは addActionListener() と addAdjustmentListener() メソッドを持ちます。これらは、ユーザが TextField 内で Return を押したときや値を変えたとき、通知を受けたい場合に使えます。
ValueSlider と似ていますが、格納しているのは TextField のみです。値が固定された範囲内でなくていいときに便利です。許可された値について、さまざまな制限(マイナスの値ではない、ゼロではない、整数のみ)を指定できます。
ImagesDialog を作成することで、ImageMap を取得できます。これはシーン内の ImageMaps すべてのプレビューと一緒に Dialog を表示します。ユーザは、新規のものを読み込む、現在読み込まれているものの削除、その後 getSelection() メソッドで返された ImageMap を1つ選択、ができます。しかしほとんどの場合、ImageMaps を直接使うことはありません。その代わり、もっと便利な ImageOrColor クラスと ImageOrValue クラスを使います。
ImageMap クラスを直接使う場合、付録をよくお読みください。重要な情報があります。
このクラスは ImageMap に従って変わる(または特に変わらない)色を表現します。getColor() を呼び出し、特定の点での色を取得します。このクラスはそれ自身のユーザインターフェイスを提供します(getEditingPanel() メソッドが、編集に使える Panel を返します)。ユーザは色と画像を指定します(画像の指定はオプション)。画像が指定されると、getColor() は色と画像の生成物を返します。そうでない場合、単に色を返します。
ImageOrColor と似ていますが、こちらは色ではなく浮動小数点の値を表現します。getValue() メソッドが、ユーザが指定した数値と画像の要素(画像の要素はオプション)の生成物として0〜1の間の数値を返します。
このクラスは、Ken Perlin の勾配ノイズ関数の実装を提供します。これは、長さスケールおよそ1で起きるすべての変動での、-1.0〜1.0 で滑らかに変化する関数です。通常は、この関数のオクターブをいくつも重ね合わせて、フラクタルなノイズ関数を作成します。value() メソッドが空間内の任意の点での関数の値を返し、calcGradient() メソッドがこの関数の勾配(ノイズを凹凸マップとして使うとき必要です)を計算します。さらに calcVector() は、親密に関係する、ベクトル値でのノイズ関数を実装します。
このクラスは、Steven Worley の細胞状テクスチャベース関数の実装を提供します。この関数は「特徴点」(feature point) を、3D 空間内全体でランダムな位置に分散させます。任意の点 (x, y, z) で、最も近い特徴点への距離となるよう関数 f1(x, y, z) を定義します。同じように、2番目に近い特徴点への距離として f2(x, y, z)、3番目に近い距離として f3(x, y, z) ... と定義していきます。calcFunctions() メソッドは空間内の与えられた点について、これらの関数の任意の数値を計算します。また、最も近いもの、2番目に近いなどの特徴点に対し、「ユニーク ID」(固有番号識別子)を返します。例えば、細胞それぞれの色が違うテクスチャを作りたいときに便利です。