メニューカスタマイズ

提供:GizmoLabs - だいたい CAD LISP なサイト
2020年2月28日 (金) 10:06時点におけるGizmon (トーク | 投稿記録)による版

AutoCAD や 互換CAD のメニューカスタマイズメモ

  • AutoCAD :AutoCAD 2006 以降は CUI コマンドでCAD 上でカスタマイズ、それ以前はテキスト形式のメニュー(.mnu)ファイルを直接作成・編集する形態。
  • IJCAD : IJCAD 2013以降は、 CUI コマンドでCAD 上でカスタマイズ、8 以前は テキスト形式のメニュー(.mnu)ファイルを直接作成・編集する形態。
  • BricsCAD : IJCAD V14 以降は、 CUI コマンドでCAD 上でカスタマイズ、V13 以前は テキスト形式のメニュー(.mnu)ファイルを直接作成・編集する形態。(バージョンは間違ってるかも。)


メニューファイルの種類

  • .mnu … メニューの書式に従って記述されたテキストのファイル。AutoCAD は 2005 まで。IJCAD は 8 まで、BricsCAD は V13 まで標準のメニューファイル。
  • .cui … XML形式のテキストファイル。 AutoCAD は 2006 から 2009まで、IJCADは 2013 から 2014まで、BricsCAD は V14以降で標準のメニューファイル。
  • .cuix … 複数の CUI ファイルなどが ZIPアーカイブされたコンテナファイル。AutoCAD は 2010以降、IJCAD は 2015以降で標準のメニューファイル。


メニューのアイコンについて

  • AutoCAD には、アイコンエディタ的な編集ツールが内蔵されているので、とりあえず作成でよければそこで作成できる。
  • 他の互換CAD には、アイコンエディタ的な編集ツールは内蔵されていないので、別のツールで作成する必要がある。


アイコンのリソース DLL

AutoCAD、BricsCAD、IJCAD では、部分メニューのアイコンをリソース DLL にまとめておいてリソース名で指定して利用することができる。 アイコンリソース DLL の名前は、CUIXファイルの名前と同じにしておいてメニューファイルと同じフォルダに置いとけば読んでくれる。 リソース化されたアイコンを使用することで、若干 CAD の立ち上がりが早くなるがよっぽど遅い環境でもなければ体感はできないと思いますが、アイコンを数百追加してるとかいった場合は検討すると良いと思います。ファイルもスッキリするし。

DLLに格納しておくアイコンのイメージは、

  • AutoCAD 2017 以降は RCDATA の PNGファイル
  • AutoCAD 2017 以前は RCDATA の ICO や BMP ファイル
  • BricsCAD V8 以降:RCDATA の ICO や BMP ファイル
  • IJCAD 2013 以降:ICON の ICO (32bit) や BMP ファイル

という形でバージョンなどによって違いがあるので注意が必要。

アイコンリソースのファイル名

  • AutoCAD と IJCAD BricsCAD で <menuname>.dll としておいておくと読んでくれます。(mymenu.cuix なら mymenu.dll となる。)
  • AutoCAD 2017 以降の場合、明暗のインターフェスデザインが追加されましたが、ダークテーマ用は <menuname>.dll ライトテーマ用は <menuname>_light.dll で用意しておくと読んでくれる。
  • BricsCAD では、アイコンの BMP ファイルをZIPで固めた RESZ ファイルも使えます。(拡張子変えるだけ。)