Sikuliでは、場所を特定するオブジェクトが5種類あります。
頭文字をとって「PSRML」と表示されます。
- Patternオブジェクト
画像ファイル名に加え、類似度やターゲットオフセットを設定できるオブジェクトです。
findメソッドをコールすると、見つかった場所がMatchオブジェクトとして取得できます。 - Stringオブジェクト
画像ファイル名を指定する文字列のことです。
類似度は0.7、ターゲットオフセットは画像の中心固定です。
findメソッドをコールすると、見つかった場所がMatchオブジェクトとして得られます。 - Regionオブジェクト
左上のX座標、Y座標、幅、高さで指定されたオブジェクトです。
画像マッチではなく、座標で指定するときに使用します。 - Matchオブジェクト
画像や文字列を指定し、それが見つかった場所を示すオブジェクトです。 - Locationオブジェクト
位置を指定するオブジェクトです。
幅と高さはなく、座標だけの指定です。
クリックする場所や入力する場所など、対象位置だけを指定するときに使用します。
clickメソッドやtypeメソッドなど、クリックやキー入力する機能の引数には、上記5種類のPSRMLオブジェクトのいずれでも指定できます。
しかし最終的に、クリックしたりキー入力するときは「座標」として扱われます。
この座標は、Locationオブジェクトとして管理されるのでLocationオブジェクト以外のオブジェクトが指定された場合は、Locationオブジェクトに変換されます。