Igor Pro® 10 ハイライト

Igor Pro® 10 には、新しいコマンドや関数、Python の組み込みサポートを含む数百の改良点が含まれています。これらの変更点の一部を以下に示します。Igor Pro 10 の変更点に関する詳細な説明は こちらをクリック(またはインストール後にヘルプの What's New を参照)してください。

2025 年 1 月 1 日以降に販売されたすべての Igor Pro 9 ライセンス(新規およびアップグレード)は、Igor Pro 10 への無料アップグレードの対象です。

多言語対応

オペレーティングシステムの言語が日本語の場合、Igor のインターフェイスの言語は自動的に日本語に切り替わります。ユーザーはこの動作を「その他設定」ダイアログで変更できます。Igor の日本語版については、別のライセンスを購入する必要がなくなりました。ほとんどのドキュメントは、現状、英語であることに注意してください。

Python

Igor Pro® 10 では組み込みの Python 統合機能が導入され、Python コードを直接実行したり、Igor と Python 間でデータを交換したりすることが可能になりました。ユーザーは、Igor の数値解析、データ可視化、データ管理ツールの機能を、Python プログラマーが利用できる豊富なサードパーティ製ライブラリ群と組み合わせて活用できます。

igorpro Python モジュールは、ウェーブ、データフォルダー、変数、文字列などの Igor データへのアクセスと操作のための API を提供します。構文ハイライトとコード補完機能を備えている組み込みの Python コンソールで Python コードを直接実行できます。

Execute Python code from the Python Console

Python コンソールに加え、Igor Pro® 10 では、Igor プロシージャコードおよびコマンドラインから使用できる Python および PythonFile コマンドを提供します。Python コマンドは1つの Python コマンドを実行するために使用できますが、PythonFile は Igor から Python スクリプト全体を起動するために使用されます。もちろん、どちらのコマンドも NumPy 配列などの Python オブジェクトを Igor に戻し、ネイティブの Igor 型に変換することができます。

Execute a Python script using the PythonFile operation

カメラとハードウェアのコントロール

新しい MMI XOP は、広く使われている Micro-Manager プロジェクトを利用しており、科学用カメラ、光源、シャッター、フィルターホイール、XY 軸および Z 軸ステージなど、幅広いハードウェアをコントロールすることができます。

デバイスアダプターの一覧と使用方法の概要は、micro-manager.org で見ることができます。

例えば、MMI を設定すると、わずか7つの命令で、Igor は Micro-Manager でサポートされているカメラから画像を取得し、その画像をウェーブに読み込み、表示させることができます。

MMC_LoadDevice "myDemoCam", "DemoCamera", "DCam"
MMC_InitializeDevice "myDemoCam"
MMC_SetCameraDevice "myDemoCam"
make/O myImageWave
MMI_BindImageWave myImageWave
MMC_SnapImage
NewImage myImageWave

image acquired from camera by MMI displayed in Igor image plot

個々の画像の撮影に加え、Micro-Manager と MMI は「イメージストリーミング」をサポートしています。これは、MMI_OpenH5file コマンドを使用して、HDF5 ファイルへの画像の連続的な取得、表示、および(オプションでの)保存を可能にする機能です。

プロシージャウィンドウの向上

Igor Pro 10 は、以下の新機能によりプログラミングの生産性を向上させます:

  • 構文ハイライトを改善しました
  • コード補完を改善しましたimproved code completion
  • 呼び出し関数内でその名前をクリックすることで、呼び出されるユーザー定義関数にジャンプしますjump to called function with Ctrl+click
  • 行継続は「ほぼどこでも」使用可能です。行末にバックスラッシュ行継続文字を含めることで、任意の長さの式を使用できます:
    Function/S LineContinuationDemo(String prefix, \
                                    String separator, \
                                    String suffix)
        String combined = prefix \
            + separator // a comment before line continuation \
            + suffix
        return combined
    End
  • コードの折り畳み

Igor code editor showing where to click to fold a code block

Code editor with one end-if code block and two entire functions folded

マルチピークフィッティングパッケージの改良

  • エラー処理の改善により、特に範囲外データ、空のウェーブ、NaN に関して、多くの領域で堅牢性が向上しました
  • ホールドストリングウェーブへの対応を追加しました
  • 100% と 200% の表示スケーリングの両方をサポートするようになりました
  • コピー/貼り付けのショートカットがテーブル UI 内で直接使用可能になりました
  • Auto-locate は、ゼロ幅のピークを返さなくなりました
  • 複数のアラートおよびエラーメッセージを改善しました

描画ツールの向上

  • ポリゴンとベジエ曲線の編集が強化され、制約条件の改善、頂点スナップ機能、コンテキストメニューの拡充、操作をガイドするヒントシステムが追加されました
  • グラフに追加された描画レイヤー ProgTop と UserTop により、注釈の上から描画が可能になりました

graph showing a drawing object that appears on top of an annotation

ページレイアウトの向上

  • 新たに組み込まれたマージンガイド ML、MT、MR、MB(左マージン、上マージン、右マージン、下マージン)により、オブジェクトをページの印刷可能領域に整列させることが容易になりました。マージンガイドは、ページサイズダイアログで設定されたマージンに合わせて調整されます
  • ページレイアウト内でガイドをドラッグすると、ウィンドウ下部のステータス表示にその位置が表示されるようになりました。印刷可能なページ幅または高さの端数が表示されます。Shift キーを押しながらドラッグすると、ガイドが印刷可能ページ幅または高さの有利分数に制限されます
  • Ctrl キーを押しながらスクロールホイールを使用すると、レイアウトの拡大率が変更されるようになりました
  • Shift キーを押しながら矢印キーでレイアウトオブジェクトを移動すると、移動速度が10倍になります

コントロールパネルレイアウト

コントロールパネル内のコントロールは「ガイド」に固定できるため、サイズ変更に優れたコントロールパネルの作成が格段に容易になります。これを行うために Igor のコードを記述する必要はありません。これらは以前サブウィンドウのみに対応していたのと同じガイドです。

このコントロールパネルでは、リストボックスコントロールの右端は常にパネルの中央に位置し、下端は常に下端から一定の距離を保ちます。右側のコントロールは、ウィンドウの右端からパネル幅の4分の1の位置に中央揃えで配置されます。タイトルは常に中央揃えになります。

Control panel resizes sanely

 

 

新しいコマンド

  • Interp4D
  • Interp4DPath
  • MMC_* and MMI_* (MMI64.xop によって 82 のコマンドが追加されました)
  • Python
  • PythonEnv
  • PythonFile
  • Say

新しい関数

  • graphemeLength
  • MMC_* and MMI_* (MMI64.xop によって 47 の関数が追加されました)
  • stringIsNull
  • UTF8CharLength

新しい MatrixOp 関数

  • subtractMin()
  • indexMatch()
  • removeCol()
  • removeCols()
  • scaleLayers()
  • scaleChunks()
  • subtractRows()
  • subtractCols()
  • quatFromSpherical()
  • quatInverse()
  • median()
  • zapZeros()
  • replaceInfs()
  • enoise()
  • setType()
  • rowDiff()
  • binMean()
  • binVar()
  • imit()
  • not()

パフォーマンスの向上

  • Igor のコンパイラは、ユーザープロシージャのコンパイル時間を改善しました
  • NewPath および IndexedFile コマンドのパフォーマンスが向上しました。特に、IndexedDir ヘルプトピックの PrintFoldersAndFiles サンプル関数に類似したコードにおいて顕著です
  • Windows 11 上で実行する場合、MultiThread および ThreadGroupCreate コマンドは、ハードウェアがサポートする限り、論理プロセッサ(スレッド)を最大限に活用できるようになりました。以前は、利用可能な論理プロセッサが 100 個以上あっても、Igor は最大 100 個までしか使いませんでした。オペレーティングシステムの制限により、Windows 10 上で実行する場合は、64 個の論理プロセッサしか使用できません

Forum

Support

Gallery

Igor Pro 9

Learn More

Igor XOP Toolkit

Learn More

Igor NIDAQ Tools MX

Learn More