💭

Draw.ioでのブロック結線図の作成

に公開

draw.ioでhardwareのブロック結線図を書いてみた。初めて使うにあたって戸惑ったことまとめ。

使用ツール

draw.io offile no-installer v27.0.9

ファイルをxmlテキスト形式で保存することができ、外部ツールとの連携がやりやすい。

libraryと配置したshapeの関係

libraryからいろいろなshapeを配置して、結線して図を配置するのが基本。各shapeは元shapeのインスタンスとして保持されているのではなく、各shapeは独立したshapeデータとして保持されてそう。
少なくともxmlファイル上はそうで、libraryは特定の構造をもったshapeデータを作成するショートカットになっている感じ。

Polygonの作成

線で多角形を描いても、線で囲んだ内部を塗りつぶすことはできないよう。Polygonのshapeを作る必要がある。

Basicの8角形をクリックorドラッグして作成する。

選択してオレンジの点を移動させて頂点編集する。

頂点の数の増減

現状では頂点の位置はGUIで編集できるが、頂点数は以下の方法でしか編集できなさそう。

図形を右クリックしてEdit Styleを開く

するとテキスト形式でshapeの定義が出てくる

polyCordsの点の数を変更する

このように頂点数が変わる

polyCordsの座標はShape外形を(0,0),(1,1)とした座標になっている。

外形形状を変えたい場合は、まずshapeの全体サイズを合わせてから頂点位置を編集する必要がある。

頂点編集の禁止

shapeを選択して右側のタブのStyle->Property->Rotatableを外す

Rotateできなくなるだけでなく、頂点編集もできなくなる

Shapeへのテキストの追加

shapeをダブルクリックするとtextを入力できる

文字の配置やスタイルは右側タブのTextで設定する

コネクタ接続点の編集

shaoeを右クリックしてEdit Connection Pointsを開いて編集する。

マウスドラッグで複数点選択できる。

プロパティとの連動

shapeにつけたプロパティをテキストに反映できる機能がある。
右クリック、Edit Dataを選択

shapeにプロパティを追加する。ここでウィンドウの下のPlaceHoldersチェックボックスをいれておく。

テキストを%(プロパティ名)%にする

こんな感じに表示される

プロパティはContainer内のshapeにも引き継がれる。
https://www.drawio.com/blog/placeholder-scope

接続点間の配線

shapeの持っているConnection Point間の結線のやり方。
Connection Point上にマウスオーバーするとConnection Pointがハイライトされる。

マウスの左ボタンを押したまま別のConnection PointまでドラッグするとConnection Point間が配線される。

交差配線の処理

標準では配線を交差させると下記のような表記になる。

交差配線と接続を見分けられるようにするには配線のStyleのLine JumpsをArcとかに設定する。

すると下記のような見た目になる。

子shapeの配置

shapeのStyle->Property->Containerをチェックすると、shapeが子shapeを保持できるようになる。
親shapeを移動した場合、子shapeもついてくる。

左上にexpand/collapseボタンが追加される。
他のshapeをドラッグして中にいれると子shapeとして扱えるようになる。

expand/collapseボタンを消す方法

ShapeのStyle->Property->Collapsibleのチェックを外すとこれを消すことができる。

Discussion