HG-5010:環境のカスタマイズ

本チュートリアルでは、プリファレンスファイルを用いたプログラムのカスタマイズについて学習します。

プリファレンスファイル

プリファレンスファイルは、プログラムが起動される度に読み出されるスクリプトファイルです。適用された色の番号、デフォルトのプリンター、デフォルトのページレイアウト、自動保存の時間間隔などのユーザー設定を定義することができます。プログラムのインストレーションディレクトリに存在する標準のプリファレンスファイルは、ライセンスがアクティブとなる度に読み出されます。追加のプリファレンスファイルは、ユーザーの作業ディレクトリ内に作成することができ、標準プリファレンスファイルを上書きする、もしくは標準プリファレンスファイル内の既存の設定に追加されるユーザー独自の設定を含みます。

製品のインストレーションは、<インストールディレクトリ>/hwの下に置かれた2つのプリファレンスファイルを含んでいます。
  • HyperStudy以外のすべてのHyperWorks Desktop製品: preferences.mvw
  • HyperStudyのみ: preferences_hst.mvw

インストレーションには、7つのインクルードプリファレンスファイルが含まれています。これらのインクルードプリファレンスファイルは、独立したプリファレンスファイルとして使用することができず、メインのプリファレンスファイルに含まれます。インクルードプリファレンスファイルは、<インストールディレクトリ>/hw/prefincに置かれています。

プリファレンスファイルの構成

以下に、5つのメインブロックを含んだプリファレンスファイルの標準的な構造を示します。
*BeginDefaults()
*EndDefefaults()
*BeginDefinitions()
*EndDefinitions()
*BeginStatsTemplates()
*EndStatsTemplates()
*BeginPlotMacros()
*EndPlotMacros()
*BeginTemplexFunctions()
*EndTemplexFunctions() 

*BeginDefaults()ブロックはプリファレンスファイルに固有なもので、一方、*BeginDefintions()*BeginStatsTemplates()*BeginPlotMacros()*BeginTemplexFunctions()ブロックは、スクリプトファイルにあるものと同じです。

これらの各セクションについての一般的なコンセプトは以下のとおりです:
*Idステートメント
*Idステートメントのシンタックスは、*Id("Release")です。ここで、Releaseは、プログラム名とバージョンを示します。
例: *Id("HyperGraph v8.0").
*BeginDefaults - *EndDefaultsブロック
*BeginDefaults()ブロックは、一般デフォルトおよび7つの従属ステートメントブロックで構成されています。一般デフォルトがまず宣言され、必要とされる数のサブブロックが続きます。各サブブロックは、メインブロックと同じ構造を有しています。すなわち、*Beginステートメントには必要なステートメントが続き、*Endステートメントでブロックが閉じられます。
一般デフォルト
一般デフォルトには、自動保存の間隔とデフォルトのプリンター設定が含まれます。ブロックは、以下のステートメントで区切られます:
*BeginDefaults()
*EndDefaults()
モデルデフォルト
モデルデフォルトは、モデルツールバーのカスタマイズ、および機構システムモデルをソルバーにサブミットするためのMDLデフォルトの追加に使用されます。ブロックは、以下のステートメントで区切られます:
*BeginModelDefaults()
*EndModelDefaults()
グラフィックデフォルト
モデルの方向やパートの属性といったグラフィックプリファレンスは、グラフィックデフォルトブロックで指定されます。ブロックは、以下のステートメントで区切られます:
*BeginGraphicDefaults()
*EndGraphicDefaults()
プロットデフォルト
色、フォント、注釈デフォルト等を含むカーブについてのプロッティングプリファレンスは、プロットデフォルトブロックで指定されます。ブロックは、以下のステートメントで区切られます:
*BeginPlotDefaults()
*EndPlotDefaults()
テキストエディタデフォルト
テキストおよび背景色やフォントの設定等を含むテキストエディタのプリファレンスは、テキストエディタデフォルトブロックで指定されます。ブロックは、以下のステートメントで区切られます:
*BeginTextEditorDefaults()
*EndTextEditorDefaults()
ページヘッダーデフォルト
ページヘッダーは、ページヘッダーブロックで指定されます。ブロックは、以下のステートメントで区切られます:
*BeginHeader()
*EndHeader()
ページフッターデフォルト
ページフッターは、ページフッターブロックで指定されます。ブロックは、以下のステートメントで区切られます:
*BeginFooter()
*EndFooter()

コンパイルの問題を回避するには、各ブロックを最初は*Beginおよび*Endブロックステートメントで開始し、続いて残りのステートメントをブロックの区切り間に挿入します。

自動保存のデフォルトの設定

  1. TextViewウィンドウモードを選択します。
  2. メニューバーからFile > Open > Documentを選択し、プリファレンスフォルダーにあるautosave_bubble_help.mvwファイルを開きます。
  3. *BeginDefaults()行の後ろに、次のプリファレンスステートメントを追加します: *SetAutoSaveInterval(2)
    This sets the autosave interval to two minutes.このステートメントがpreferences.mvwファイルに存在しない場合、プログラムは、自動保存の間隔を10分に設定します。
  4. メニューバーからFile > Save As > Documentを選択し、新しいプリファレンスファイルを new_autosave_bubble_help.mvwという名称でホームディレクトリに保存します。

更新した自動保存のデフォルト設定を確認

  1. HWDプログラム(HyperView、HyperGraph、HyperGraph3D、MotionView)のいずれかを起動します。
  2. File > Load > Preference Fileを選択し、プリファレンスファイルをセットします。
    これで、登録されているすべてのプリファレンスファイルがリストされたウィンドウが開きます。
    Figure 1.
  3. Registerをクリックし、ファイルnew_autosave_bubble_help.mvwをブラウズします。
  4. Registered Preferencesのリストからnew_autosave_bubble_help.mvwを選択し、Loadをクリックしてプリファレンスファイルを読み込みます。
    1. 上部右側角にある赤いXをクリックして、ウィンドウを閉じます。
  5. 2分ほど待ち、作業ディレクトリのコンテンツをリストします。
    新しいファイルautosave.mvwが存在し、現在のセッションのバックアップが含まれています。

カーブのデフォルトの設定

  1. クライアントセレクターからTextViewを開きます。
  2. メニューバーからFile > Open > Documentを選択し、プリファレンスフォルダーにあるcurve_defaults.mvwファイルを開きます。
  3. *BeginPlotDefaults()行の後ろに、それ以前の全ての*SetCurveDefaults()ステートメントを無視するよう、*ResetCurveDefaults()ステートメントを追加します。
  4. *ResetCurveDefaults()行の後ろに、下記のプリファレンスステートメントを追加し、カーブのデフォルトを設定します:
    *SetCurveDefaults(1, 7, 0, 0, 0)	
    *SetCurveDefaults(3, 16, 1, 0, 0)
    *SetCurveDefaults(5, 24, 2, 0, 0)
    *SetCurveDefaults(2, 32, 3, 0, 0)
    *SetCurveDefaults(4, 40, 0, 0, 0)
    *SetCurveDefaults(5, 48, 1, 0, 0)

    プロッティングプリファレンスブロックには、いくつかの *SetCurveDefaults()ステートメントを含めることができます。プログラムは、カーブの属性を逐次割り当てます。

  5. メニューバーからFile > Save As > Documentを選択し、新しいプリファレンスファイルを new_curve_defaults.mvwという名称でホームディレクトリに保存します。

更新されたカーブのデフォルト設定の確認

  1. ツールバー上のAdd Page をクリックし、現在のセッションに新規ページを追加します。
  2. アプリケーション選択メニューからHyperGraph 2Dを選択します。
  3. Page Window Layoutを1ページに2ウィンドウ に変更します。
  4. プロッティングツールバー上のBuild Plotsをクリックします。
  5. プロットファイルを開きます:
    1. ファイルブラウザをクリックします。
    2. plottingフォルダーにあるファイルANGACCを選択します。
    3. Openをクリックします。
  6. データコンポーネントとプロットへのチャンネルを選択します:
    1. Y TypeリストからAngular Accelerationを選択します。
    2. Y Componentリストに50th% Hybrid3 – LOWER TORSOを選択します。
    3. Y ChannelリストからAllボタンを選択します。
  7. Applyをクリックします。
  8. File > Load > Preference Fileを選択し、new_curve_defaults.mvwをプリファレンスファイルとして設定します。
  9. Registerを選択し、ファイルnew_curve_defaults.mvwをブラウズします。
    これは、 new_curve_defaults.mvwをプリファレンスファイルとして自動的に読み込みます。
  10. リストからnew_curve_defaults.mvwを選択し、Loadをクリックします。
    1. 上部右側角にある赤いXをクリックして、ウィンドウを閉じます。
  11. “Update all plots current default colors”という確認のプロンプトが出たら、Noを選択します。
  12. このページの2番目のプロットウィンドウをクリックします。
  13. プロッティングツールバー上のBuild Plotsをクリックします。
  14. Applyをクリックします。
    色とラインスタイルは、プログラムのシステムデフォルトではなく、 new_curve_defaults.mvwファイル内で定義されたデフォルトに従います。
    Figure 2.

デフォルトのプロット色の設定

  1. 新しいページを追加し、TextViewウィンドウモードを選択します。
  2. メニューバーからFile > Open > Sessionを選択し、プリファレンスフォルダーにあるplot_colors.mvwファイルを開きます。
  3. *BeginPlotDefaults()行の後ろに、下記のプリファレンスステートメントを追加し、デフォルトのプロット色を設定します:
    *SetBackgroundColor(9) 	
    *SetGridlineColor(6) 	
    *SetZerolineColor(2) 
    *SetFrameColor(7) 	 
    *SetAxisColor(4) 	
    *SetHeaderColor(0) 	
    *SetFooterColor(3)
  4. 新しいプリファレンスファイルをnew_plot_colors.mvw として作業ディレクトリに保存します。ファイルをデフォルトディレクトリに保存し直すことはできません。

更新されたデフォルトプロットカラーの確認

  1. ツールバー上のAdd Pageをクリックし、現在のセッションに新規ページを追加します。新しいページはPlotウィンドウモードに設定します。
  2. アプリケーション選択メニューからHyperGraph 2Dを選択します。
  3. ヘッダーおよびフッターテキストを作成します。
  4. プリファレンスファイルnew_plot_colors.mvwをRegisterで登録し、Loadで読み込みます。“Update all plots current default colors”という確認のプロンプトが出たら、Noをクリックします。
  5. 新しい設定がアクティブな、新しいページを追加します。
  6. ヘッダーおよびフッターテキストを作成します。
    Note: プロットウィンドウの各領域の色が、プログラムのシステムデフォルトではなく、new_plot_color.mvwファイル内で定義されたデフォルトを反映します。

プロットエリアのデフォルトフォントの設定

  1. 新しいページを追加し、TextViewウィンドウモードを選択します。
  2. ツールバーのファイルブラウザから、preferencesフォルダーにあるファイルfont_defaults.mvwを開きます。
  3. *BeginPlotDefaults()行の後ろに、次のプリファレンスステートメントを追加します:
    *SetAxisLabelFont("Times New Roman", 1, 0, 8)
    *SetAxisTicFont("Times New Roman", 0, 1, 18)

    1番目のプレースホルダーは、フォント名を指定します。

    2番目のプレースホルダーは、font weight(フォントの太さ)を指定します。0 =標準(デフォルト)、1 =太字です。

    3番目のプレースホルダーは、slant(斜体)またはfont style(フォントスタイル)を指定します。0 =標準(デフォルト)、1 =斜体です。

    4番目のプレースホルダーは、font sizeを指定します。サイズは、8、10、12、14、18または24です。

    Note: 提案されているフォントがユーザーのシステム上にない場合は、使用可能なフォントの名称を使用してください。
  4. *SetAxisTicFont ()行の後ろに、下記のプリファレンスステートメントを追加し、ヘッダーおよびフッターテキストのフォントデフォルトを設定します:
    *SetLine1HeaderFont("Verdana",0,0,8)
    *SetLine2HeaderFont("Verdana",1,0,10)
    *SetLine3HeaderFont("Verdana",0,1,12)
    *SetLine1FooterFont("Tahoma",0,0,8)
    *SetLine2FooterFont("Tahoma",0,1,10)
    *SetLine3FooterFont("Tahoma",1,0,12)
    Note: 提案されているフォントがユーザーのシステム上にない場合は、使用可能なフォントの名称を使用してください。
  5. 新しいプリファレンスファイルをnew_font_defaults.mvwとして保存します。

更新されたデフォルトプロットフォントの確認

  1. ツールバー上のAdd Pageをクリックし、現在のセッションに新規ページを追加します。新しいページはPlotウィンドウモードに設定します。
  2. アプリケーション選択メニューからHyperGraph 2Dを選択します。
  3. プロット上に、3行のヘッダーとフッターを作成します。
  4. ファイルnew_font_defaults.mvwをRegisterで登録し、Loadで読み込みます。current defaultsに更新するようプロンプトが出されたら、Noを選択します。
  5. ページレイアウトを、1ページに2ウィンドウのものに変更します。
  6. 現在のページの2番目のプロットウィンドウをクリックします。
  7. プロット上に、3行のヘッダーとフッターを作成します。
    ヘッダーおよびフッターエリアの各行を含むプロットウィンドウ内のフォントが、プログラムのシステムデフォルトではなく、new_font_defaults.mvwファイル内で定義されたデフォルトを反映します。
    Figure 3.

注釈のデフォルトの設定

  1. 新しいページを追加し、TextViewウィンドウモードを選択します。
  2. ツールバーのファイルブラウザから、preferencesフォルダーにあるファイルnotes_legends.mvwを選択します。
  3. *BeginPlotDefaults()行の後ろに、下記のプリファレンスステートメントを追加し、注釈のフォントタイプ、スタイルおよびサイズのデフォルトを設定します:
    *SetNoteFont("Tahoma", 1, 1, 10)
  4. *SetNoteFont()行の後ろに、下記のプリファレンスステートメントを追加し、注釈の付加、テキストの行揃えおよび色のデフォルトを設定します:
    *SetNoteAttachment(View) 
    *SetNoteAlignment(Left) 
    *SetNoteColor(5) 
  5. 新しいプリファレンスファイルをnew_notes_legends.mvwとして保存します。

レジェンドのデフォルトの設定

  1. TextViewウィンドウモードで、ファイルブラウザからnew_notes_legends.mvwを選択します。
  2. *SetNoteColor()行の後ろに、下記のプリファレンスステートメントを追加し、レジェンドのフォントと配置のデフォルトを設定します:
    *SetLegendFont("Tahoma",1,1,24)
    *SetLegendPlacement(TopRight)
  3. 新しいプリファレンスファイルをnew_notes_legends.mvwとして保存します。

更新されたデフォルトプロットフォントの確認

  1. ツールバー上のAdd Pageをクリックし、現在のセッションに新規ページを追加します。新しいページはPlotウィンドウモードに設定します。
  2. アプリケーション選択メニューからHyperGraph 2Dを選択します。
  3. ページレイアウトを、1ページに2ウィンドウのものに変更します。
  4. 現在のプロットにカーブを追加します。
  5. 現在のプロットに注釈を追加します。
  6. ファイルnew_notes_legends.mvwをRegisterで登録し、Loadで読み込みます。current defaultsに更新するようプロンプトが出されたら、Noを選択します。
  7. 現在のページの2番目のプロットウィンドウをクリックします。
  8. 現在のプロットにカーブを追加します。
  9. 現在のプロットに注釈を追加します。
    プロット上に表示される注釈およびレジェンドは、new_notes_legends.mvwファイル内で定義されたデフォルトを反映します。注釈付加の更新を確認するには、プログラムウィンドウの左側下部にあるビューコントロールの矢印を使って、カーブを移動させます。

注釈およびレジェンドのデフォルトの更新

  1. Addでページを1つ追加し、アプリケーション選択メニューからTextViewを選択します。
  2. ツールバーのファイルブラウザから、preferencesフォルダーにあるファイルheaders_footers.mvwを開きます。
  3. *BeginDefaults()行の後ろに、下記のプリファレンスステートメントを追加し、*BeginHeader()ブロックを定義します:
    *BeginHeader()
    *EndHeader()
  4. *BeginHeader()行の後ろに、下記のプリファレンスステートメントを追加し、使用できるヘッダー領域の部分を定義します:
    *BeginRegion(400, 0, 600, 300)
    *EndRegion()
  5. 領域を表わすには、座標系を使用します。領域ステートメントの引数は、最小X座標値、最小Y座標値、最大X座標値、最大Y座標値を示します。
    ヘッダー領域全体を示したい場合、*BeginRegionステートメントは、*BeginRegion(0,0,1000,1000)とします。
  6. *BeginRegion()行の後ろに、下記のプリファレンスステートメントを追加し、テキストのフォント、行揃えおよび領域の境界を設定します(パスを更新してインストレーションの位置を反映):
    *Font("Times",0,1,12)
    *Alignment(Center)
    *BorderWidth(1,1,1,1)
  7. *BorderWidth()行の後ろに、下記のプリファレンスステートメントを追加し、ヘッダー領域のテキストを設定します:
    *Text("Project Title")
  8. 新しいプリファレンスファイルをnew_headers_footers.mvwとして保存します。

ページのフッターの追加

  1. 現在のファイルはnew_headers_footers.mvwのはずです。そうでない場合、TextViewウィンドウモードからファイルnew_headers_footers.mvwを開きます。
  2. *EndHeader()行の後ろに、下記のプリファレンスステートメントを追加し、*BeginFooter()ブロックを定義します:
    *BeginFooter()
    *EndFooter()
  3. *BeginFooter()行の後ろに、下記のプリファレンスステートメントを追加し、フッター内の1つの領域を定義、設定します:
    *BeginRegion(700, 0, 1000, 1000)
    *Font("Times",0,1,12)
    *Alignment(Center)
    *BorderWidth(1,1,1,1)
    *EndRegion()

    フッター領域の座標系は、ヘッダー領域のものと同様で、最小X座標値は700(フッター領域の左)、最大X座標値は1000(フッター領域の右)です。最小Y座標値は0、最大Y座標値は1000です。

  4. *BorderWidth()行の後ろに、下記のプリファレンスステートメントを追加し、領域にテキストを追加します:
    *Text("Your Name")
    *Text("{time()} on {date()}")
    *Text("Page:  {pagenum}/{numpages}")
  5. *EndRegion()行の後ろに、下記のプリファレンスステートメントを追加し、ページフッター内の2番目の領域を定義、設定します:
    *BeginRegion(700, 0, 1000, 1000)
    *BorderWidth(1,1,1,1)
    *EndRegion()
  6. *BorderWidth()行の後ろに、下記のプリファレンスステートメントを追加し、領域内にイメージを配置します:
    *Image("<install_directory>/tutorials/mv_hv_hg/preferences/Altair_logo.gif")

    会社のロゴなどのイメージは、プロットのヘッダーまたはフッター内の任意の領域に追加することができます。イメージタイプは、GIF(format 87)、JPGまたはBMPのいずれかでなければなりません。イメージは、垂直にフィットされ、水平には中央揃えとなります。

  7. 新しいプリファレンスファイルをnew_headers_footers.mvwとして保存します。

新しいページヘッダーおよびフッターの確認

  1. プリファレンスファイルnew_headers_footers.mvwをRegisterで登録し、Loadで読み込みます。
  2. プリンターがインストールされている場合は、Printを選択し、OKをクリックします。これらのヘッダーとフッターは、セッションまたはページが印刷される際に表示されます。

テキストエディタのデフォルトの設定

  1. Addでページを1つ追加し、アプリケーション選択メニューからTextViewを選択します。
  2. ツールバーのファイルブラウザから、preferencesフォルダーにあるファイルtext_editor.mvwを選択します。
  3. *BeginTextEditorDefaults()行の後ろに、下記のプリファレンスステートメントを追加し、テキストエディタのデフォルトのフォントタイプ、スタイル、サイズを設定します:
    *Font("Times", 0, 1, 12)
  4. *Font()行の後ろに、下記のプリファレンスステートメントを追加し、テキストエディタウィンドウのデフォルトのテキスト色を設定します:
    *TextColor(6) 
  5. *TextColor()行の後ろに、下記のプリファレンスステートメントを追加し、テキストエディタウィンドウのデフォルトの背景色を設定します:
    *BackGroundColor(23)
  6. 新しいプリファレンスファイルをnew_text_editor.mvwとして保存します。

更新されたデフォルトプロットフォントの確認

  1. ファイルnew_text_editor.mvwをRegisterで登録し、Loadで読み込みます。
  2. ツールバー上のAdd Pageをクリックし、現在のセッションに新規ページを追加します。新しいページはPlotウィンドウモードに設定します。
    更新されたデフォルトの背景色が表示されます。
  3. テキストウィンドウ内をクリックしてテキストを入力し、テキストのデフォルトへの変更を確認します。