直接テンプレートファイルを操作する方法では、既存の内容を上書きすることしかできません。
今回は、設定ファイルから自分専用のタブを作ってみたいと思います。
まとめ
いつものことですが、暇に任せて書いている→これ...忙しい人には怒られるだろ...というくらい長くなってしまったので、まずまとめを書いておきます。それぞれの詳細は、読み進めていただくとどこかにあります。
目標
NX新規作成ダイアログに俺仕様テンプレートタブを作る。こんな↓感じになりました。
サマリー
- テンプレートにしたいパートファイルを作る
- 既存のpaxファイルをコピーする
- コピーしたpaxファイルを俺仕様に修正する
ファイル&設定
作成したファイルをzipにまとめました(※macroやjournalも含まれています)。
https://sites.google.com/site/nxgate/nxgate20100525.zipzipを解凍してできるnxgateフォルダをCドライブの直下に保存します(C:\nxgateとなるようにする)。
NXインストールフォルダ\UGII\menus\custom_dirs.datにパス書き込み
詳細→http://nxgatetbr.blogspot.com/2010/05/blog-post.htmlこれで新規作成ダイアログに、新規タブが現れるはずです。詳細は以下読み進めてください。
新規作成ダイアログの設定ファイルを調べる
わかりにくいとか文字化けするとか参考画像をWindows版にしろよなど、いろいろ文句を言ってしまいますが、やっぱり最初に頼るのはヘルプです。新規作成で検索するとテンプレートの作成やタブの作り方がでてきました。
きっとわざと難しく書いてあるのだと思いますが、要するに.paxというXMLファイルが新規作成タブの定義ファイルのようです。とりあえず、今の定義ファイルを探して中身を見てみることにします。フェイクにひっかかったり英語版を修正したりして時間がかかりましたが、定義ファイルは、NXインストールフォルダ¥LOCALIZATIONフォルダにありました。LOCALIZATIONフォルダは、各言語版のpaxファイルが保存されているようです。テンプレートファイルの保存先NXインストールフォルダ¥UGII¥templatesフォルダにある.paxファイルが定義ファイルだと思って、説明を変えるなどしてみたのですが一向に変化せず、モデルタブの定義ファイルであろうugs_model_templates_japanese.paxをメモ帳で開いてみます。フェイク英語版だと気付くまでに随分時間がかかりました...orz
<?xml version="1.0" encoding="UTF-8"?>id="d1"はinch用(またひっかかった...orz)なので、id="d2"のdescriptionを以下のように変えてみます。<Palette xmlns="http://www.ugsolutions.com/Schemas/2001/UGPalettes" schemaVersion="1.0">
<Presentation name="Master Model Templates (Inch)" bitmap="sheet_and_block.bmp" FileNewTab="モデル" application="All" UsesMasterModel="No"/>
<PaletteEntry id="d1">
………
<References/>
<Presentation name="モデル" description="データム座標系でのNXの例">
<PreviewImage type="UGPart" location="model_template.jpg"/>
</Presentation>
<ObjectData class="ModelTemplate">
<Filename>model-plain-1-inch-template.prt</Filename>
<Units>English</Units>
</ObjectData>
</PaletteEntry><PaletteEntry id="d2">
<References/>
<Presentation name="モデル" description="データム座標系でのNXの例"> ↓
<PaletteEntry id="d2">
<References/>
<Presentation name="モデル" description="変わるかな?">そしてNXを起動すると...
か、変わってるよ(((( ;゚Д゚)))
ということで、新規作成ダイアログの定義ファイルは以下にありました。NXインストールフォルダ¥LOCALIZATIONフォルダ
例:モデルタブの定義ファイル
NXインストールフォルダ¥LOCALIZATION¥ugs_model_templates_japanese.pax
新規作成タブ用のパートファイルを作る
これをテンプレートにするんだ!と自分で思えば良いだけなのでどんなファイルでも構わないのですが、わかりやすく直方体、円筒、球の3ファイルを以下の保存先、ファイル名として作成しました。
- 直方体
C:\nxgate\templates\nxGateTemp1.prt
- 円筒
C:\nxgate\templates\nxGateTemp2.prt
- 球
C:\nxgate\templates\nxGateTemp3.prt
各テンプレート用のプレビュー画像も作ります。
上のモデル画像でも良いのですが、調子に乗ってmicasukeを入れた画像を作ってみました(*^_^*)
- 直方体のプレビュー画像
C:\nxgate\templates\nxgate_model_block.tif
- 円筒のプレビュー画像
C:\nxgate\templates\nxgate_model_cylinder.tif
- 球のプレビュー画像
C:\nxgate\templates\nxgate_model_sphere.tif
ヘルプには、bmp以外はOKと書いてありましたが、pngも表示されませんでした。
gif、jpg、tifはOKでした。
paxファイルの作成
ヘルプに定義があるので一から作ることもできると思いますが、基本なまけものですから、ugs_model_templates_japanese.pax をコピーして修正していきます。
- コピー元:NXインストールフォルダ¥LOCALIZATION¥ugs_model_templates_japanese.pax
- コピー先:C:\nxgate\startup\nxGate_templates.pax
C:\nxgate\templatesにコピーして、ツールバーの定義の時のようにcustom_dirs.datファイルに追記すれば良いだろう、と思っていたのですが、C:\nxgate\templatesを追記しても反応しませんでした。
いろいろ試してみて、custom_dirs.datに指定したフォルダの中にstartupというフォルダを作らないとダメみたいです。C:\nxgate\templates\startupを作成しても良かったのですが、今回はツールバーの時に作ったC:\nxgate\startupに保存することにしました。定義ファイルの中身はヘルプと実際のファイルを参考に以下のようにしました。
C:\nxgate\startup\nxGate_templates.pax
<?xml version="1.0" encoding="UTF-8"?><Palette xmlns="http://www.ugsolutions.com/Schemas/2001/UGPalettes" schemaVersion="1.0">
<Presentation name="新規作成では不要" bitmap="新規作成では不要.bmp" FileNewTab="NXGate" application="新規作成では不要" UsesMasterModel="No"/>
<PaletteEntry id="d1">
<References/>
<Presentation name="箱" description="直方体を置いてみた">
<PreviewImage type="UGPart" location="C:\nxgate\templates\nxgate_model_block.tif"/>
</Presentation>
<ObjectData class="ModelTemplate">
<Filename>C:\nxgate\templates\nxGateTemp1.prt</Filename>
<Units>Metric</Units>
</ObjectData>
</PaletteEntry><PaletteEntry id="d2">
<References/>
<Presentation name="筒" description="円筒を置いてみた">
<PreviewImage type="UGPart" location="C:\nxgate\templates\nxgate_model_cylinder.tif"/>
</Presentation>
<ObjectData class="ModelTemplate">
<Filename>C:\nxgate\templates\nxGateTemp2.prt</Filename>
<Units>Metric</Units>
</ObjectData>
</PaletteEntry><PaletteEntry id="d3">
</Palette>
<References/>
<Presentation name="球" description="球を置いてみた">
<PreviewImage type="UGPart" location="C:\nxgate\templates\nxgate_model_sphere.tif"/>
</Presentation>
<ObjectData class="ModelTemplate">
<Filename>C:\nxgate\templates\nxGateTemp3.prt</Filename>
<Units>Metric</Units>
</ObjectData>
</PaletteEntry>変更した箇所は
- 最初のPresentationタグの中のFileNewTab=タブの名前
- 各PaletteEntryタグの中のPresentationタグの中の
name=リストに表示される名前
description=説明欄- 各PreviewImageタグの中のlocation=プレビュー画像ファイルパス
- Filenameタグ=テンプレートファイルパス
文字だとさっぱりわからないのでpaxファイルとダイアログの対比を強引な画像にしてみました。
長くなりましたが、これで新規作成ダイアログの俺仕様タブを作ることができました。結果は最初の動画を見てください。
0 件のコメント:
コメントを投稿