|
直線(polyline)シェイプは、始点と終点の間に頂点を追加して、折れ線にすることができます。
直線のインターフェースは、jp.carabiner.inkpod.pi.shape.PPolylineRelationShapeインターフェースです。このaddPoint()メソッドで、折れ線の頂点を追加することができます。
関連・オブジェクトを作成してマップに追加後、直線シェイプに変更し、折れ線の頂点を追加するサンプルです。背景を右クリックして、メニューから「折れ線の作成」を選ぶと、2回折れ曲がった折れ線をマップに追加します。
importClass(Packages.jp.carabiner.inkpod.model.MapPoint);
importClass(java.awt.Point);
function extendUI(event) {
inkpod.ui.actions.addAction({
id : "SAMPLE_CREATE_POLYLINE",
text : "折れ線の作成",
action : function(frame, event) {
var model = frame.model;
var p = frame.contextMenuClickPoint;
// 関連オブジェクトを作成
var object = model.createRelationObject();
// オブジェクトを追加
object = model.addObject(object);
// オブジェクトの形を'polyine'に変更
object.changeShape("polyline");
// 始点設定
object.shape.lineStartPoint = p;
// 終点設定
object.shape.lineEndPoint = new Point(p.x + 300, p.y);
// 中間の頂点を追加
object.shape.addPoint(0, new Point(p.x + 100, p.y + 100));
object.shape.addPoint(1, new Point(p.x + 200, p.y - 100));
}
});
inkpod.ui.backgroundPopupMenu.addMenuItem("SAMPLE_CREATE_POLYLINE");
}
function init()
{
inkpod.ui.addUIExtensionListener(extendUI);
}
function dispose()
{
}
plugin = {
init : init,
dispose : dispose
}