astah* API 利用ガイド


【図要素の編集】

ここでは図要素(プレゼンテーション)の編集の一例を紹介します。
astah* APIの図情報の編集機能は、astah* UML, professionalでサポートしています。ただし、ER図の編集機能はastah* professionalでのみ利用可能です。

【トランザクション操作】

図要素を作成・編集・削除する場合、トランザクション操作が必要です。
トランザクション操作(モデル/図/プレゼンテーションの作成・編集・削除時)をご覧ください。

INodePresentation(矩形プレゼンテーション:クラス、インスタンス仕様、ユースケース、状態、ERエンティティ、トピックなど)・プレゼンテーションの位置設定

    public void setLocation(INodePresentation ps, Point2D location) {
        try {
            TransactionManager.beginTransaction();
            ps.setLocation(location);
            TransactionManager.endTransaction();
        } catch (InvalidEditingException e) {
            e.printStackTrace();
            TransactionManager.abortTransaction();
        }
    }

ILinkPresentation(線プレゼンテーション:関連、依存、汎化、実現、テンプレートバインディング、包含、拡張、依存型リレーションシップ、非依存型リレーションシップ、サブタイプ、トピック間リンクなど)・プレゼンテーション の点の設定

    public void setPoints(ILinkPresentation ps, Point2D[] points) {
        try {
            TransactionManager.beginTransaction();
            ps.setPoints(points);
            TransactionManager.endTransaction();
        } catch (InvalidEditingException e) {
            e.printStackTrace();
            TransactionManager.abortTransaction();
        }
    }

INodePresentation(矩形プレゼンテーション:クラス、インスタンス仕様、ユースケース、状態、ERエンティティ、トピックなど)・プレゼンテーション の幅設定

    public void setWidth(INodePresentation ps, double width) {
        try {
            TransactionManager.beginTransaction();
            ps.setWidth(width);
            TransactionManager.endTransaction();
        } catch (InvalidEditingException e) {
            e.printStackTrace();
            TransactionManager.abortTransaction();
        }
    }

INodePresentation(矩形プレゼンテーション:クラス、インスタンス仕様、ユースケース、状態、ERエンティティ、トピックなど)・プレゼンテーション の高さ設定

    public void setHeight(INodePresentation ps, double height) {
        try {
            TransactionManager.beginTransaction();
            ps.setHeight(height);
            TransactionManager.endTransaction();
        } catch (InvalidEditingException e) {
            e.printStackTrace();
            TransactionManager.abortTransaction();
        }
    }

INodePresentation(矩形プレゼンテーション:クラス、インスタンス仕様、ユースケース、状態、ERエンティティ、トピックなど)・プレゼンテーション のラベル設定

    public void setLabel(INodePresentation ps, String label) {
        try {
            TransactionManager.beginTransaction();
            ps.setLabel(label);
            TransactionManager.endTransaction();
        } catch (InvalidEditingException e) {
            e.printStackTrace();
            TransactionManager.abortTransaction();
        }
    }

INodePresentation(矩形プレゼンテーション:クラス、インスタンス仕様、ユースケース、状態、ERエンティティ、トピックなど)・プレゼンテーション の背景色設定
*setProperty()メソッドのキーは背景色である"fill.color"キーのみ対応しています。

    //(EX)red:color="#FF0000" green:color="#00FF00" blue:color="#0000FF" 
    public void setColor(INodePresentation ps, String color) {
        try {
            TransactionManager.beginTransaction();
            ps.setProperty("fill.color", color);
            TransactionManager.endTransaction();
        } catch (InvalidEditingException e) {
            e.printStackTrace();
            TransactionManager.abortTransaction();
        }
    }


HOME