ノードの形状の制御

一般ノードの基本形状は、shapeType プロパティーによって制御されます。 使用可能な値を以下の表にリストします。
ノードの使用可能な形状タイプ
shapeType : “Rectangle”;
矩形の形状。
shapeType : “RoundRectangle”;
角を丸めた矩形の形状。
shapeType : “Ellipse”;
楕円形の形状。
shapeType : “Diamond”;
菱形の形状。
shapeType : “TriangleUp”;
上向き三角形。
shapeType : “TriangleDown”;
下向き三角形。
shapeType : “TriangleLeft”;
左向き三角形。
shapeType : “TriangleRight”;
右向き三角形。
shapeType : “Marker”;
正符号の形状をしたマーカー。
必要に応じて、setShape メソッドで直接、ノードの形状を設定できます。 これにより、任意のカスタム形状を使用できます。カスタム形状は、以下のいずれかの方法で指定できます。
  • スタイル・シートで SVG ファイルを参照する:
    node {
       shape : "url(myCustomShape.svg)";
    }
    
  • Java コード内:
    IlvGeneralPath myShape = new IlvGeneralPath(...);
    generalNode.setShape(myShape);
    
形状の水平および垂直のサイズは、プロパティー shapeWidthshapeHeight、 および shapeAspectRatio によって制御されます。
形状の幅および高さを設定するには、基本的に以下の 2 つのポリシーがあります。
  • プロパティー shapeWidth および shapeHeight を設定できます。 この場合、形状のアスペクト比は保持されません。 次に例を示します。
    node {
        class       : "ilog.views.sdm.graphic.IlvGeneralNode";
        shapeType   : "RoundRectangle";
        shapeWidth  : "100";
        shapeHeight : "50";
    }
    
  • プロパティー shapeWidth を必要な幅に、 プロパティー shapeAspectRatio を必要な幅/高さ比に設定できます。次に例を示します。
    node {
        class            : "ilog.views.sdm.graphic.IlvGeneralNode";
        shapeType        : "RoundRectangle";
        shapeWidth       : "100";
        shapeAspectRatio : "2";
    }
    
    別のルールで形状の幅を変更した場合でも、アスペクト比は保持されます。