京都工芸繊維大学工芸科学部 生命物質科学域高分子機能工学部門 高分子物性工学研究室

  • JP
  • EN
  • menu

    Macroの作成例:文字列の置き換え

    Macroの作成例:文字列の置き換え

    希望のグラフウインドウを選択した状態で、Graphメニューから”Add Annotation”を呼び出すと、解析結果などを注釈として載せる事ができる。フォントを Times ・サイズを14ポイントにして、a = 1, b = 3と入力すると、ヒストリーには、

    TextBox/C/N=text0/F=0/S=3/A=MC “\\F’Times’\\Z14a = 1, b = 3”

    と表示されるはずだ。TextBoxは、グラフに注釈をつけるための命令で、それぞれの注釈についてIDが割り当てられるため、複数の注釈を好きなだけグラフ中に描くことが可能である。上の場合は、IDは、”text0″だ。/S=3によって枠に影をつけれるが、/F=0によって枠の機能をオフにしているため今回は枠は描かれない。/Aは後に述べるTag命令(矢印付きの注釈)で重要になるが、今回は無視して欲しい。/Cをつけることによって、既存のテキストに上書き変更される。これはマクロを組むときに重宝する。

    ソフトウェアを自作したい場合、ここに結果を自動的に表示させるようにしたいものだ。

    今回は簡単なマクロの書き方を紹介する。

    Macro AppendResults()

    string aTEXT=num2str(w[0])

    string bTEXT=num2str(w[1])

    TextBox/C/N=text0/F=0/S=3/A=MC “\\F’Times’\\Z14a = “+aTEXT+”, b = “+bTEXT

    end

    上のようなプログラムを、Procedure Windowに書いてみよう。
    これによってフィッティングを行った結果を、グラフ中に描画できる。
    このプログラムの実行は、Macroメニューから行う。

    (1)aTEXTとbTEXTという文字列を定義して、それぞれにw[0]とw[1]の結果を入れる。ただし、aTEXTは文字列で、w[0]は変数なので、変数w[0]の中身を、文字列に変換してからaTEXTに送る必要がある。これを実現するのがnum2str関数だ。
    (2)TextBox命令で、文字列を表す部分は、” “で囲まれている。文字列”abcdef”は、”ab”+”cd”+”ef”のように足し合わせることができるので、あらかじめ準備しておいたaTEXT, bTEXTの内容をTextBox命令で一緒に表示させることができるわけだ。