ログイン
検索
メインメニュー
フォーラム一覧   -   トピック一覧
   astah*の使い方
     APIを利用した複合フラグメントの位置調節について
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 トピック
yura
投稿日時: 2020-11-17 15:32
新米
登録日: 2020-10-29
居住地:
投稿: 9
APIを利用した複合フラグメントの位置調節について
APIを利用して、シーケンス図の複合フラグメントの枠の
位置や大きさを調節したいのですが、
INodePresentation の setHeight() や setWidth()、 setLocation()ではエラーが出力され、シーケンス図では利用できないようでした。

APIで複合フラグメントの幅や高さや位置を後から変更させる方法があれば、お教えいただけないでしょうか。

お手数をおかけするかと存じますが、
ご回答の程、よろしくお願いいたします。
tiwa___
投稿日時: 2020-11-17 17:25
開発者
登録日: 2019-7-29
居住地:
投稿: 8
Re: APIを利用した複合フラグメントの位置調節について
申し訳ありませんが、APIから複合フラグメントの幅や位置を変更する事は出来ません。

下記サンプルスクリプトの様にオペランドの高さを変更する事で
複合フラグメントの高さを変更する事は可能です。

var infNamespace = 'com.change_vision.jude.api.inf'
var PresentationPropertyUtil = Java.type(infNamespace + '.presentation.PresentationPropertyUtil')

getSelectedPresentations().forEach(
    function (presentation) {
        try {
            astah.getTransactionManager().beginTransaction()
            presentation.setProperty(PresentationPropertyUtil.createOperandLengthKey(1), 500)
            astah.getTransactionManager().endTransaction()
        } catch (e) {
            astah.getTransactionManager().abortTransaction()
            throw e
        }    
    }
)

function getSelectedPresentations() {
    var viewManager = astah.getViewManager()
    var diagramViewManager = viewManager.getDiagramViewManager()
    var selectedPresentations = diagramViewManager.getSelectedPresentations()
    return Java.from(selectedPresentations)
}
yura
投稿日時: 2020-11-17 18:11
新米
登録日: 2020-10-29
居住地:
投稿: 9
Re: APIを利用した複合フラグメントの位置調節について
ご回答いただきありがとうございます。

APIで複数の複合フラグメントを出力した際に、
重ねて描画しているので、
後から調節して解消したかったのですが、
やはり、出来ないでしょうか。
イメージとしては、図1から図2のように重なりを解消したいと思っています。

(図1)


(図2)
tiwa___
投稿日時: 2020-11-19 11:11
開発者
登録日: 2019-7-29
居住地:
投稿: 8
Re: APIを利用した複合フラグメントの位置調節について
申し訳ございませんが、一度作成された複合フラグメントの位置を
APIから変更する事は出来ません。
APIから位置の調整を行う場合は複合フラグメントを一度削除し再度作成して下さい。
yura
投稿日時: 2020-11-19 12:11
新米
登録日: 2020-10-29
居住地:
投稿: 9
Re: APIを利用した複合フラグメントの位置調節について
後から位置を変更したい場合は複合フラグメントを作成し直す必要があるとのこと、承知いたしました。
一旦、その方法で検討したいと思います。
ご対応いただきありがとうございました。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を