前回に引き続き、今回もシェイプについて紹介していきます。

 今回は、複数の要素から構成されるパスと、シェイプを対象としたトランジションについて紹介します。

パス

 javafx.scene.shape.Pathクラスで表されるパスは、現在の点から次の点までのつなぎを指定していくことで、複雑な形状を記述するシェイプです。

 次の点までのつなぎを表すには、javafx.scene.shape.PathElementクラスのサブクラスを使用します。

 たとえば、LineToクラスは現在の点から指定した点まで直線でつなぎ、ArcToクラスは指定した点まで円弧でつなぎます。また、次の点までつながずに、点を移動させるにはMoveToクラスを使用します。

 ここでは、サンプルとしてパスでDukeを描いてみましょう。

サンプルのプロジェクト (こちらからダウンロードできます)
PathDemo.zip

 Dukeは頭の部分と胴体をパスで描画し、鼻は円で描画することにします。頭と胴体のパスの構成を図1に示しました。

 図の丸で示した点がパスでつなぎ合わせる点を示しています。白抜きの四角で表しているのが、ベジェ曲線の制御点です。

図1●頭と胴体の構成
図1●頭と胴体の構成