Archicad 数式エディタ入力支援(IFS)を作ってみた

2024/04/21に公開

前文

Archicadの数式エディタ、とても便利!
...なんですがめちゃめちゃ入力しづらい!
特にIFSで別のプロパティから情報を持ってきて仕分けをするような場合、どこまで書いたかわかんなくなります。


あたまおかしなるわ

間違える理由は

  1. ()と,がいっぱいあってどこからどこまでが一塊かわからない。
    • 色分けなどもない
    • 改行はできるが開き直すと全てなくなる
    • 自動インデントもない
  2. オプションセットの内容をコピペしてるけどスペースが入ってたりして微妙に間違える

みたいな部分があると思います。

なお、数式の内容はテキストベースなので他のエディタで書いてコピペは可能ですのでExcelで工夫してやられている方もいます。

そこで

数式エディタの入力支援としてコピペのための文字列を生成するアプリをPythonで作ってみました。
https://github.com/gemeg/ACpropGenerator.git
https://youtu.be/GmYkDCrPYtw

使い方

起動方法

  1. ArchicadからプロパティをXML出力する。
  2. ファイル名は「props.xml」として、pyファイルと同じディレクトリに置く。
  3. pyを実行する。

起動OK!実際の数式を作っていきましょう。

数式の生成

  1. 対象のプロパティを選択する。
  2. 「+」ボタンを押して入力行を増やす。
  3. 「演算子」「こうなら」「これ」の三箇所を入力する。
    • 「こうなら」は条件
    • 「これ」は条件に合致した場合の値
  4. 「+」を押していって条件を追加していく。
  5. 不要な行がある場合は「-」ボタンで削除できる。
  6. どの条件にも当てはまらない場合の処理を追加するときは、下記スイッチを押して「これ」に入力する。(生成する式の末尾に追加され、条件式が"TRUE"になる)
  7. 文字列作成ボタンを押すと右のエリアに文字列が生成される。
  8. テキストを選択・コピーしてArchicadの数式エディタに貼り付ける。

これで基本的には動くはずです。

対象のプロパティタイプが「オプションセット」の場合

対象のプロパティがオプションセットの場合は、「こうなら」がテキスト入力からドロップダウンメニューになり、オプションセットの項目が選択できるようになります。

これにより、オプションセットのコピペミスを防げます。

オプションセットまとめて入力

オプションセットの場合、下記のボタンを押すとすべてのオプションセット選択肢が行追加されます。

オプションセット多くて選択めんどくさ!という時にも一発で条件式を作成できます。

すべて削除

「☓」ボタンを押すと全ての行が削除されます。

警告等は表示されないので注意。
また、プロパティを変更した時も強制的に全行削除されますので注意してください。

「こうなら」「これ」のタイプ選択

数値か文字列かで"(ダブルクオーテーション)の入力するかどうかが異なります。
下記のボタンで設定できますので、対象のプロパティと追加するプロパティに合わせて選択してください。

おわりに

使用自由です。
(使用したことによるあらゆる損害について作者は責任を負いません)
良ければ使ってみてください。

Discussion