WIL説明書(C++)
3.0.0
|
パタンオブジェクト [詳解]
パタンオブジェクト
namespace FVCL::Data
サーチ/マッチング機能等で使用するパタン画像情報を保有するクラスです。
パタン画像と登録位置の矩形情報と基準点を保持します。
登録位置の矩形情報は、登録時に使用した画像の左上を 0,0 とする絶対値です。 基準点(center_mark)は、登録位置の左上からの相対値を表します。
下記コードは、元画像(下図左)の中央付近のクリップをパタン画像として生成する例です。
パタン画像を生成するには、このクラスの MakePattern メソッドを使用します。 指定する座標は、矩形と基準点です。これらは共に元画像の左上を原点(0,0)とする絶対位置を指定します。 登録位置の矩形は、このクラスの m_RegistRect に保存されます。 基準点は、登録位置の矩形の左上からの相対位置に変換され m_CenterMark に保存されます。
生成したパタン画像をファイルに保存するには、このクラスの Save メソッドを使用します。 この例では、生成したパタンを『 Basic.MakePattern.pat 』と言う名前でカレントディレクトリに保存しています。 ディレクトリパスを含めて指定する事に注意してください。
保存したファイルをパタンオブジェクトに読み込みには、このクラスの Load メソッドを使用します。 保存の時と同様にディレクトリパスを含めて指定する必要があります。
元画像 | パタン画像 |
![]() | ![]() |
ソースコード:
公開型 | |
enum | { DataID = 101 } |
![]() | |
enum | { DataID = 100 } |
公開メンバ関数 | |
CFvPattern () | |
コンストラクタ [詳解] | |
CFvPattern (UINT horz, UINT vert, UINT type=FVCL::ImageType::UC8, UINT ch=1, UINT alloc_option=(UINT)-1) | |
コンストラクタ (画像サイズ指定) [詳解] | |
CFvPattern (const FVCL::ImageSize &image_size, UINT alloc_option=(UINT)-1) | |
コンストラクタ (画像サイズ指定) [詳解] | |
CFvPattern (LPCTSTR szFileName) | |
コンストラクタ (ファイル読み込み) [詳解] | |
CFvPattern (const FVCL::Data::CFvImage &image, const FVCL::Data::CFvRectangle &rect, const FVCL::Data::CFvPoint ¢er_mark) | |
コンストラクタ (パタン生成) [詳解] | |
virtual | ~CFvPattern () |
デストラクタ [詳解] | |
virtual INT | GetDataID () const |
データIDの取得 [詳解] | |
virtual bool | GetPointer (INT id, void **val) const |
インスタンスのポインタの取得 [詳解] | |
virtual bool | Load (LPCTSTR szFileName) |
パタンファイルの読み込み [詳解] | |
virtual bool | Load (LPCTSTR szFileName, INT pixelmode) |
パタンファイルの読み込み [詳解] | |
virtual bool | Save (LPCTSTR szFileName) |
パタンのファイル保存 [詳解] | |
virtual void | Free () |
パタン領域の解放 [詳解] | |
virtual bool | SetSize (UINT horz, UINT vert, UINT type, UINT ch, UINT alloc_option=(UINT)-1) |
パタン領域の確保 [詳解] | |
virtual bool | SetSize (const FVCL::ImageSize &image_size, UINT alloc_option=(UINT)-1) |
パタン領域の確保 [詳解] | |
virtual bool | MakePattern (const FVCL::Data::CFvImage &image, const FVCL::Data::CFvRectangle &rect, const FVCL::Data::CFvPoint ¢er_mark) |
パタンの生成 [詳解] | |
bool | SetRegistRect (const FVCL::Data::CFvRectangle &rect) |
登録座標の設定 [詳解] | |
bool | GetRegistRect (CFvRectangle *rect) const |
登録座標の取得 [詳解] | |
const FVCL::Data::CFvRectangle & | GetRegistRect () const |
登録座標の取得 [詳解] | |
FVCL::Data::CFvRectangle & | GetRegistRect () |
登録座標の取得 [詳解] | |
bool | SetCenterMark (const FVCL::Data::CFvPoint ¢er_mark) |
パタン基準点の設定 [詳解] | |
bool | GetCenterMark (CFvPoint *center_mark) const |
パタン基準点の取得 [詳解] | |
const FVCL::Data::CFvPoint & | GetCenterMark () const |
パタン基準点の取得 [詳解] | |
FVCL::Data::CFvPoint & | GetCenterMark () |
パタン基準点の取得 [詳解] | |
bool | SetOption (INT option) |
オプションの設定 [詳解] | |
INT | GetOption () const |
オプションの取得 [詳解] | |
bool | GetAttachedMask (CFvImage *image) const |
マスク領域にアタッチされた画像オブジェクトの取得 [詳解] | |
bool | MaskCopyFrom (const FVCL::Data::CFvImage &image) |
画像オブジェクトからマスク領域への複写 [詳解] | |
bool | MaskCopyFrom (const FVCL::Data::CFvImage &image, INT maskbit) |
画像オブジェクトからマスク領域への複写 (ビット指定) [詳解] | |
bool | MaskCopyTo (CFvImage *image) const |
マスク領域から画像オブジェクトへの複写 [詳解] | |
bool | MaskCopyTo (CFvImage *image, INT maskbit) const |
マスク領域から画像オブジェクトへの複写 (ビット指定) [詳解] | |
void * | GetMaskAdrs (UINT x=0, UINT y=0) const |
マスクアドレスの取得 [詳解] | |
bool | SetMaskPixelUC8 (UINT x, UINT y, UCHAR value) |
マスク情報の設定 [詳解] | |
UCHAR | GetMaskPixelUC8 (UINT x, UINT y) const |
マスク情報の取得 [詳解] | |
bool | SetMaskPixelI32 (UINT x, UINT y, INT value) |
マスク情報の設定 [詳解] | |
INT | GetMaskPixelI32 (UINT x, UINT y) const |
マスク情報の取得 [詳解] | |
bool | SetMaskPixelI64 (UINT x, UINT y, INT64 value) |
マスク情報の設定 [詳解] | |
INT64 | GetMaskPixelI64 (UINT x, UINT y) const |
マスク情報の取得 [詳解] | |
UINT | GetMaskMemSize () const |
マスクのメモリ容量の取得 (非推奨) [詳解] | |
ULONG_PTR | GetMaskMemSize64 () const |
マスクのメモリ容量の取得 [詳解] | |
UINT | GetMaskHorzByte () const |
マスクの水平方向サイズの取得 [詳解] | |
UINT | GetMaskImageType () const |
マスクの画像種別の取得 [詳解] | |
virtual CFvPattern & | operator= (const CFvPattern &src) |
代入オペレータ (=) [詳解] | |
virtual bool | operator== (const CFvPattern &src) const |
比較オペレータ (==) [詳解] | |
virtual bool | operator!= (const CFvPattern &src) const |
比較オペレータ (!=) [詳解] | |
![]() | |
CFvImage () | |
コンストラクタ [詳解] | |
CFvImage (UINT horz, UINT vert, UINT type=ImageType::UC8, UINT ch=1, UINT alloc_option=(UINT)-1) | |
コンストラクタ(内部メモリ確保) [詳解] | |
CFvImage (const FVCL::ImageSize &image_size, UINT alloc_option=(UINT)-1) | |
コンストラクタ(内部メモリ確保) [詳解] | |
CFvImage (FHANDLE hImage, INT channel, FVCL::Rectangle region) | |
コンストラクタ (FIE ハンドル 指定) [詳解] | |
CFvImage (const FVCL::Data::CFvImage &src, UINT attach_option=0) | |
コンストラクタ (コピー または アタッチ) [詳解] | |
CFvImage (void *adrs, UINT horz, UINT vert, UINT type, void *handle) | |
コンストラクタ(1ch専用アタッチ) [詳解] | |
CFvImage (void **adrs, UINT horz, UINT vert, UINT type, UINT ch, void **handles) | |
コンストラクタ(複数チャネル対応アタッチ) [詳解] | |
CFvImage (LPCTSTR szFileName) | |
コンストラクタ (ファイル読み込み) [詳解] | |
virtual | ~CFvImage () |
デストラクタ [詳解] | |
FVCL::Data::CFvImage & | operator= (const FVCL::Data::CFvImage &src) |
代入オペレータ(=) [詳解] | |
bool | operator== (const FVCL::Data::CFvImage &src) const |
比較オペレータ(==) [詳解] | |
bool | operator!= (const FVCL::Data::CFvImage &src) const |
比較オペレータ(!=) [詳解] | |
virtual bool | SetFIE (FHANDLE hImage, bool is_attach) |
FIE ハンドルの設定 [詳解] | |
virtual bool | AttachFIE (FHANDLE hImage, INT channel, FVCL::Rectangle region) |
FIE 画像オブジェクトへのアタッチ [詳解] | |
virtual bool | Attach (const FVCL::Data::CFvImage &src) |
画像オブジェクトへのアタッチ [詳解] | |
virtual bool | Attach (UINT channel, const FVCL::Data::CFvImage &src) |
画像オブジェクトへのアタッチ (チャネル指定) [詳解] | |
virtual bool | Attach (CFvImage *src[], UINT channels) |
画像オブジェクトへのアタッチ (複数チャネル) [詳解] | |
virtual bool | Attach (const FVCL::Data::CFvImage *src[], UINT channels) |
画像オブジェクトへのアタッチ (複数チャネル) [詳解] | |
virtual bool | Attach (void *adrs, UINT horz, UINT vert, UINT type, void *handle=NULL) |
外部メモリのアタッチ(1ch専用) [詳解] | |
virtual bool | Attach (void **adrs, UINT horz, UINT vert, UINT type, UINT ch, void **handles=NULL) |
外部メモリのアタッチ(複数チャネル対応) [詳解] | |
bool | Detach () |
デタッチ [詳解] | |
UINT | IsAttach () const |
アタッチフラグの取得 [詳解] | |
FHANDLE | GetFIE () const |
FIE ハンドルの取得 [詳解] | |
FHANDLE | GetFIEChild () const |
FIE ハンドルの取得 (チャイルド画像) [詳解] | |
FHANDLE | GetFIERoot () const |
FIE ハンドルの取得 (ルート画像) [詳解] | |
void * | GetHandle (UINT ch=0) const |
画像ハンドルの取得 [詳解] | |
void * | GetRootAdrs (UINT ch=0) const |
画像メモリの先頭アドレスの取得 (Offset を無視する) [詳解] | |
void * | GetImageAdrs (UINT ch=0, UINT x=0, UINT y=0) const |
画像メモリの先頭アドレスの取得 (Offset を考慮する) [詳解] | |
UINT | GetMemSize () const |
画像メモリサイズを取得 (非推奨) [詳解] | |
ULONG_PTR | GetMemSize64 () const |
画像メモリサイズを取得 [詳解] | |
UINT | GetHorzByte () const |
横方向メモリサイズの取得 [詳解] | |
bool | GetSize (UINT *horz, UINT *vert, UINT *type, UINT *ch) const |
サイズの取得 [詳解] | |
FVCL::ImageSize | GetImageSize () const |
サイズの取得 [詳解] | |
INT | GetBitPosition (UINT x) const |
ビット位置の取得 [詳解] | |
PNT_T | GetOffset () const |
画像の先頭アドレスからのオフセット座標の取得 [詳解] | |
UINT | GetHorzSize () const |
横方向画素数の取得 [詳解] | |
UINT | GetVertSize () const |
縦方向画素数の取得 [詳解] | |
UINT | GetImageType () const |
画像種別の取得 [詳解] | |
UINT | GetChannel () const |
チャネル数の取得 [詳解] | |
bool | SetDepth (UINT depth) |
ビット深度の設定 [詳解] | |
UINT | GetDepth () const |
ビット深度の取得 [詳解] | |
bool | SetImageInfo (UINT image_info) |
画像情報の設定 [詳解] | |
UINT | GetImageInfo () const |
画像情報の取得 [詳解] | |
bool | SetWindow (INT xs, INT ys, INT x_size, INT y_size) |
処理ウィンドウの設定 [詳解] | |
bool | SetWindow (const CFvRectangle &rect, bool contain_ed=true) |
処理ウィンドウの設定 [詳解] | |
bool | GetWindow (INT *xs, INT *ys, INT *x_size, INT *y_size) const |
処理ウィンドウの取得 [詳解] | |
CFvRectangle | GetWindow (bool contain_ed=true) const |
処理ウィンドウの取得 [詳解] | |
UINT | GetImageTypeToBpp (UINT type) const |
ピクセルサイズの取得 [詳解] | |
INT | CalcDepth () const |
ビット深度の計算 [詳解] | |
INT | CalcDepthForChannel (UINT channel) const |
ビット深度の計算 (チャネル毎) [詳解] | |
bool | SetPixelI32 (UINT ch, UINT x, UINT y, INT value) |
画素値の設定 (整数) [詳解] | |
INT | GetPixelI32 (UINT ch, UINT x, UINT y) const |
画素値の取得 (整数) [詳解] | |
bool | SetPixelI64 (UINT ch, UINT x, UINT y, INT64 value) |
画素値の設定 (整数) [詳解] | |
INT64 | GetPixelI64 (UINT ch, UINT x, UINT y) const |
画素値の取得 (整数) [詳解] | |
bool | SetPixelD64 (UINT ch, UINT x, UINT y, DOUBLE value) |
画素値の設定 (実数) [詳解] | |
DOUBLE | GetPixelD64 (UINT ch, UINT x, UINT y) const |
画素値の取得 (実数) [詳解] | |
bool | SetPixelRGB (UINT ch, UINT x, UINT y, FVCL::tagRGB32 value) |
画素値の設定 (カラー) [詳解] | |
FVCL::tagRGB32 | GetPixelRGB (UINT ch, UINT x, UINT y) const |
画素値の取得 (カラー) [詳解] | |
bool | Clear (DOUBLE value=0, UINT option=0) |
画像メモリのクリア [詳解] | |
bool | ClearForChannel (UINT channel, DOUBLE value, UINT option=0) |
画像メモリのクリア (チャネル指定) [詳解] | |
bool | ClearRGB (FVCL::tagRGB32 value, UINT option=0) |
画像メモリのクリア [詳解] | |
bool | ClearRGBForChannel (UINT channel, FVCL::tagRGB32 value, UINT option=0) |
画像メモリのクリア (チャネル指定) [詳解] | |
bool | Copy (const FVCL::Data::CFvImage &src, UINT option=0) |
画像コピー [詳解] | |
bool | Copy (const FVCL::Data::CFvImage &src, const CFvObject ®ion, INT origin_mode=FVCL::OriginMode::Window) |
画像コピー (リージョン指定) [詳解] | |
bool | Compare (const FVCL::Data::CFvImage &src, DOUBLE ErrRange=0.0, UINT option=0) |
画像データの比較 [詳解] | |
FVCL::Data::CFvPoint | Find (UINT channel, DOUBLE value, DOUBLE ErrRange=0.0, UINT option=0) const |
画像データの検索 (実数指定) [詳解] | |
FVCL::Data::CFvPoint | FindRGB (UINT channel, FVCL::tagRGB32 value, DOUBLE ErrRange=0.0, UINT option=0) const |
画像データの検索 (カラー指定) [詳解] | |
FVCL::Data::CFvPoint | FindMaxValue (UINT channel, UINT option=0) const |
最大値の検索 [詳解] | |
FVCL::Data::CFvPoint | FindMinValue (UINT channel, UINT option=0) const |
最小値の検索 [詳解] | |
bool | GetPointsGray (UINT channel, DOUBLE low, DOUBLE high, INT max_num, FVCL::CFvBuffer<::PNT_T > *points) const |
濃淡画像からの点列取得 [詳解] | |
bool | GetPointsBIN (UINT channel, INT color, INT max_num, FVCL::CFvBuffer<::PNT_T > *points) const |
2値画像からの点列取得 [詳解] | |
bool | Saturate (UINT option=0) |
画像データの飽和処理 [詳解] | |
bool | SaturateWithRange (UINT channel, DOUBLE minval, DOUBLE maxval, UINT option=0) |
画像データの飽和処理 (範囲指定) [詳解] | |
bool | Abs (UINT option=0) |
画像データの絶対値演算 [詳解] | |
bool | Invert (UINT option=0) |
画像データの濃度値反転 [詳解] | |
bool | SignedToRGB (UINT channel, CFvImage *dst, INT option=0) const |
符号付き画像からカラー画像への変換 [詳解] | |
bool | ConvertToGray (INT mode, INT depth, CFvImage *dst) const |
濃淡画像への変換 [詳解] | |
bool | ConvertToColor (INT mode, INT depth, CFvImage *dst) const |
カラー画像への変換 [詳解] | |
bool | ConvertToAny (INT mode, INT depth, CFvImage *dst) const |
任意の型の画像への変換 [詳解] | |
bool | GetRotatedImage (INT num, CFvImage *dst) const |
回転画像の取得 [詳解] | |
bool | GetScaledImage (DOUBLE mag_x, DOUBLE mag_y, INT sampling_mode, CFvImage *dst) const |
サイズ変更画像の取得 [詳解] | |
![]() | |
CFvDataObject () | |
標準のコンストラクタ [詳解] | |
virtual | ~CFvDataObject () |
デストラクタ [詳解] | |
![]() | |
CFvObject () | |
標準のコンストラクタ [詳解] | |
virtual | ~CFvObject () |
デストラクタ [詳解] | |
INT | SetErrorCode (INT err) |
エラーコードの設定 [詳解] | |
INT | SetErrorCode (INT err) const |
エラーコードの設定 [詳解] | |
INT | GetErrorCode () const |
エラーコードの取得 [詳解] | |
bool | SetAllocateOption (INT value) |
画像領域確保時のオプションの設定 [詳解] | |
INT | GetAllocateOption () const |
画像領域確保時のオプションの取得 [詳解] | |
void * | operator new (size_t uiSize) |
new オペレータ [詳解] | |
void * | operator new[] (size_t uiSize) |
new[] オペレータ [詳解] | |
void | operator delete (void *pvObject) |
delete オペレータ [詳解] | |
void | operator delete[] (void *pvObject) |
delete[] オペレータ [詳解] | |
void * | operator new (size_t uiSize, LPCSTR szFileName, INT iLine) |
new オペレータ [詳解] | |
void * | operator new[] (size_t uiSize, LPCSTR szFileName, INT iLine) |
new[] オペレータ [詳解] | |
void | operator delete (void *pvObject, LPCSTR szFileName, INT iLine) |
delete オペレータ [詳解] | |
void | operator delete[] (void *pvObject, LPCSTR szFileName, INT iLine) |
delete[] オペレータ [詳解] | |
virtual CFvObject & | operator= (const CFvObject &src) |
代入オペレータ [詳解] | |
virtual bool | operator== (const CFvObject &src) const |
比較オペレータ (==) [詳解] | |
virtual bool | operator!= (const CFvObject &src) const |
比較オペレータ (!=) [詳解] | |
静的公開メンバ関数 | |
static void | MakePatternRevision (int value) |
MakePattern メソッドのリビジョンの設定 [詳解] | |
static int | MakePatternRevision () |
MakePattern メソッドのリビジョンの取得 [詳解] | |
![]() | |
static UINT | CalcBppOfImageType (UINT type) |
ピクセルサイズの計算 [詳解] | |
static UINT | CalcDepthOfImageType (UINT type) |
ビット深度の計算 [詳解] | |
static UINT | CalcAllocBpp (UINT bpp) |
ピクセルサイズ計算 [詳解] | |
static UINT | CalcHorzByte (UINT horz, UINT bpp) |
横方向バイト数の計算 [詳解] | |
![]() | |
static bool | SetDefaultAllocateOption (INT value) |
既定の画像領域確保時のオプションの設定 [詳解] | |
static INT | GetDefaultAllocateOption () |
既定の画像領域確保時のオプションの取得 [詳解] | |
限定公開メンバ関数 | |
virtual INT | fnImportFIE (FHANDLE hImage, bool is_ref) |
FIE ハンドルのインポート [詳解] | |
virtual INT | fnAllocate (UINT horz, UINT vert, UINT type, UINT ch, UINT option=0) |
内部メモリのアロケーション [詳解] | |
virtual INT | fnAttach (void **adrs, UINT horz, UINT vert, UINT type, UINT ch, void **handles) |
画像メモリのアタッチ [詳解] | |
virtual bool | MaskAllocate (UINT horz, UINT vert, UINT type) |
マスク領域の確保 [詳解] | |
virtual bool | MaskFree () |
マスク領域の解放 [詳解] | |
![]() | |
FHANDLE | CreateFIERoot (void **adrs, UINT horz, UINT vert, UINT type, UINT ch) const |
FIE ルートオブジェクトの生成 [詳解] | |
FHANDLE | CreateFIEChild (FHANDLE hRoot) const |
FIE チャイルドオブジェクトの生成 [詳解] | |
INT | fnParamCheck (UINT horz, UINT vert, UINT type, UINT ch) const |
画像パラメータチェック [詳解] | |
bool | fnCreateDIB (UINT horz, UINT vert, UINT bpp, UINT ch) |
画像メモリの確保 (DIB版) [詳解] | |
bool | fnCreateNew (UINT horz, UINT vert, UINT bpp, UINT ch) |
画像メモリの確保 (calloc版) [詳解] | |
UINT | fnCopy (const FVCL::Data::CFvImage &src, CFvImage &dst, UINT option) |
コピー [詳解] | |
INT | fnClear (UINT xs, UINT ys, UINT xe, UINT ye, UINT ch, DOUBLE value) |
画像データのクリア [詳解] | |
![]() | |
INT | fnCPUCheck () |
CPU情報の取得 [詳解] | |
限定公開変数類 | |
FVCL::Data::CFvRectangle | m_RegistRect |
登録座標 [詳解] | |
FVCL::Data::CFvPoint | m_CenterMark |
パタン基準点 [詳解] | |
INT | m_Option |
オプション [詳解] | |
FVCL::Data::CFvImage | m_MaskImage |
パタンマスク [詳解] | |
![]() | |
INT | m_ErrorCode |
エラーコード [詳解] | |
INT | m_AllocateOption |
画像領域確保時のオプション [詳解] | |
FVCL::Data::CFvPattern::CFvPattern | ( | ) |
FVCL::Data::CFvPattern::CFvPattern | ( | UINT | horz, |
UINT | vert, | ||
UINT | type = FVCL::ImageType::UC8 , |
||
UINT | ch = 1 , |
||
UINT | alloc_option = (UINT)-1 |
||
) |
コンストラクタ (画像サイズ指定)
初期値を指定してインスタンスを生成します。
[in] | horz | 横方向サイズ (1~) |
[in] | vert | 縦方向サイズ (1~) |
[in] | type | メモリ確保情報(画像種別)
|
[in] | ch | チャネル数 (1~16) |
[in] | alloc_option | オプション
|
FVCL::Data::CFvPattern::CFvPattern | ( | const FVCL::ImageSize & | image_size, |
UINT | alloc_option = (UINT)-1 |
||
) |
コンストラクタ (画像サイズ指定)
初期値を指定してインスタンスを生成します。
[in] | image_size | 画像サイズ情報 |
[in] | alloc_option | オプション
|
FVCL::CFveBadAllocException | メモリの確保に失敗しました。 |
FVCL::Data::CFvPattern::CFvPattern | ( | LPCTSTR | szFileName | ) |
コンストラクタ (ファイル読み込み)
指定されたファイルからデータを復元します。
このコンストラクタは、内部で Load メソッドを実行しています。
[in] | szFileName | ファイル名称 |
FVCL::CFveException | 処理に失敗した場合は例外を発行します。 発行された例外インスタンスの GetErrorCode からエラーコードを取得できます。 |
値 | 定数 | 内容 |
51 | FVCL_ErrorCode::LICENSE_ERROR | ライセンスがありません。 |
1 | FVCL_ErrorCode::FAILED_TO_ALLOCATE | メモリの確保に失敗しました。メモリが不足しています。 |
11 | FVCL_ErrorCode::INVALID_PARAMETER | パラメータが無効です。ファイル名に null や空白は指定できません。 |
21 | FVCL_ErrorCode::NOT_SUPPORTED | 指定されたファイル形式はサポートされていません。 |
23 | FVCL_ErrorCode::NOT_ALLOCATED | メモリが確保されていません。 |
FVCL::Data::CFvPattern::CFvPattern | ( | const FVCL::Data::CFvImage & | image, |
const FVCL::Data::CFvRectangle & | rect, | ||
const FVCL::Data::CFvPoint & | center_mark | ||
) |
コンストラクタ (パタン生成)
画像オブジェクト上の任意の領域からパタンを生成します。 詳しくは、 MakePattern の説明をご参照ください。
[in] | image | 元画像 |
[in] | rect | 登録位置の矩形 (元画像の左上を(0,0)とする絶対座標) |
[in] | center_mark | 基準点 (元画像の左上を(0,0)とする絶対座標) |
FVCL::CFveException | 処理に失敗した場合は例外を発行します。 発行された例外インスタンスの GetErrorCode からエラーコードを取得できます。 |
値 | 定数 | 内容 |
11 | FVCL_ErrorCode::INVALID_PARAMETER | 引数に指定された画像オブジェクトが不正です。 |
13162 | FVCL_ErrorCode::CFvPattern::INVALID_REGIST_RECT | 登録範囲が無効です。 |
|
virtual |
デストラクタ
このオブジェクトを破棄します。
|
static |
MakePattern メソッドのリビジョンの設定
[in] | value | リビジョン番号
|
FVCL::CFveException | 処理に失敗した場合は例外を発行します。 発行された例外インスタンスの GetErrorCode からエラーコードを取得できます。 |
値 | 定数 | 内容 |
11 | FVCL_ErrorCode::INVALID_PARAMETER | 引数に誤りがあります。 |
User::SampleCode::Basic::MakePatternRevision MakePatternRevision=0 rect=134.4,74.5,181.1,169.8 mark=33.2,65.0 MakePatternRevision=1 rect=134.0,75.0,181.0,170.0 mark=33.6,64.5 MakePatternRevision=0 rect=134.4,74.5,181.1,169.8 mark=33.2,65.0
|
static |
MakePattern メソッドのリビジョンの取得
|
virtual |
|
virtual |
インスタンスのポインタの取得
[in] | id | データID |
[in] | val | インスタンスのポインタを格納する変数のポインタ |
true | 正常 |
fasle | 異常 |
FVCL::Data::CFvImageを再実装しています。
|
virtual |
パタンファイルの読み込み
パタンファイルを読み込みます。
引数には、.pat の拡張子が付いたファイル名を指定してください。 それ以外の場合は FVCL::Data::CFvImage::Load を実行し、画像データ部分のみを復元します。 その他のプロパティは初期値のままになります。
[in] | szFileName | パタンファイル名称 ※ディレクトリと拡張子も含めて指定してください。(解説参照) |
true | 正常 |
false | 異常 GetErrorCodeメソッドによりエラーコードを取得できます。 |
値 | 定数 | 内容 |
6 | FVCL_ErrorCode::FAILED_TO_LOAD | パタンファイル(.pat)が見つかりません。または不正です。 マスクファイル(.pat_MSK)が見つかりません。または不正です。 |
13 | FVCL_ErrorCode::INVALID_DATA | パタンとマスクのサイズが一致しません。 座標に異常があります。 |
FVCL::Data::CFvImageを再実装しています。
パタンファイルの読み込み
ファイル読み込み
パタンファイルを読み込みます。
引数には、.pat の拡張子が付いたファイル名を指定してください。 それ以外の場合は FVCL::Data::CFvImage::Load を実行し、画像データ部分のみを復元します。 その他のプロパティは初期値のままになります。
[in] | szFileName | ファイル名称 |
[in] | pixelmode | ピクセルモード
|
true | 正常 |
false | 異常 GetErrorCodeメソッドによりエラーコードを取得できます。 |
値 | 定数 | 内容 |
51 | FVCL_ErrorCode::LICENSE_ERROR | ライセンスがありません。 |
1 | FVCL_ErrorCode::FAILED_TO_ALLOCATE | メモリの確保に失敗しました。メモリが不足しています。 |
11 | FVCL_ErrorCode::INVALID_PARAMETER | パラメータが無効です。ファイル名に null や空白は指定できません。 |
21 | FVCL_ErrorCode::NOT_SUPPORTED | 指定されたファイル形式はサポートされていません。 |
23 | FVCL_ErrorCode::NOT_ALLOCATED | メモリが確保されていません。 |
FVCL::Data::CFvImageを再実装しています。
|
virtual |
パタンのファイル保存
パタンをファイルに保存します。
引数には、.pat の拡張子が付いたファイル名を指定してください。 それ以外の場合は FVCL::Data::CFvImage::Save を実行し、画像データ部分のみを保存します。
[in] | szFileName | パタンファイル名称 ※ディレクトリと拡張子も含めて指定してください。(解説参照) |
true | 正常 |
false | 異常 GetErrorCodeメソッドによりエラーコードを取得できます。 |
値 | 定数 | 内容 |
7 | FVCL_ErrorCode::FAILED_TO_SAVE | パタンファイル(.pat)を保存する際にエラーが発生しました。 マスクファイル(.pat_MSK)を保存する際にエラーが発生しました。 |
FVCL::Data::CFvImageを再実装しています。
|
virtual |
パタン領域の解放
FVCL::Data::CFvImageを再実装しています。
|
virtual |
パタン領域の確保
パタンとマスク領域を確保します。
使用可能なパタンの種類については、サーチ機能の説明をご参照ください。
[in] | horz | 横方向サイズ (1~) |
[in] | vert | 縦方向サイズ (1~) |
[in] | type | メモリ確保情報(画像種別)
|
[in] | ch | チャネル数 (1~16) |
[in] | alloc_option | オプション
|
true | 正常 |
fasle | 異常 GetErrorCodeメソッドによりエラーコードを取得できます。 |
値 | 定数 | 内容 |
1 | FVCL_ErrorCode::FAILED_TO_ALLOCATE | メモリが不足しています。 |
FVCL::Data::CFvImageを再実装しています。
|
virtual |
パタン領域の確保
パタンとマスク領域を確保します。
使用可能なパタンの種類については、サーチ機能の説明をご参照ください。
[in] | image_size | 画像サイズ |
[in] | alloc_option | オプション
|
true | 正常 |
fasle | 異常 GetErrorCodeメソッドによりエラーコードを取得できます。 |
値 | 定数 | 内容 |
1 | FVCL_ErrorCode::FAILED_TO_ALLOCATE | メモリが不足しています。 |
FVCL::Data::CFvImageを再実装しています。
|
virtual |
パタンの生成
画像オブジェクト上の任意の領域からパタンを生成します。
[in] | image | 元画像 |
[in] | rect | 登録位置の矩形 (元画像の左上を(0,0)とする絶対座標) (単位:画素) |
[in] | center_mark | 基準点 (元画像の左上を(0,0)とする絶対座標) (単位:画素(サブピクセル指定可)) |
true | 正常 |
false | 異常 |
値 | 定数 | 内容 |
1 | FVCL_ErrorCode::FAILED_TO_ALLOCATE | メモリが不足しています。 |
11 | FVCL_ErrorCode::INVALID_PARAMETER | 引数に指定された画像オブジェクトが不正です。 |
13162 | FVCL_ErrorCode::CFvPattern::INVALID_REGIST_RECT | 登録範囲が無効です。 |
FVCL::Data::CFvPattern::SetRegistRect | ( | const FVCL::Data::CFvRectangle & | rect | ) |
FVCL::Data::CFvPattern::GetRegistRect | ( | CFvRectangle * | rect | ) | const |
FVCL::Data::CFvPattern::GetRegistRect | ( | ) | const |
登録座標の取得
FVCL::Data::CFvPattern::GetRegistRect | ( | ) |
登録座標の取得
FVCL::Data::CFvPattern::SetCenterMark | ( | const FVCL::Data::CFvPoint & | center_mark | ) |
パタン基準点の設定
パタン基準点を設定します。
基準点は登録座標の左上からの相対座標です。
[in] | center_mark | パタン基準点が格納された CFvPoint オブジェクトへの参照 |
true | 正常 |
fasle | 異常 |
FVCL::Data::CFvPattern::GetCenterMark | ( | CFvPoint * | center_mark | ) | const |
パタン基準点の取得
パタン基準点を取得します。
基準点は登録座標の左上からの相対座標です。
[out] | center_mark | パタン基準点を格納する CFvPoint オブジェクトへのポインタ |
true | 正常 |
false | 異常 |
FVCL::Data::CFvPattern::GetCenterMark | ( | ) | const |
パタン基準点の取得
FVCL::Data::CFvPattern::GetCenterMark | ( | ) |
パタン基準点の取得
FVCL::Data::CFvPattern::SetOption | ( | INT | option | ) |
FVCL::Data::CFvPattern::GetOption | ( | ) | const |
FVCL::Data::CFvPattern::GetAttachedMask | ( | CFvImage * | image | ) | const |
マスク領域にアタッチされた画像オブジェクトの取得
引数に指定された画像オブジェクトに このオブジェクトが持つマスク領域アドレスをアタッチして返します。
[out] | image | アタッチ用の画像オブジェクト |
true | 正常 |
false | 異常 GetErrorCode メソッドでエラーコードを取得できます。 |
値 | 定数 | 内容 |
23 | FVCL_ErrorCode::NOT_ALLOCATED | マスク領域が確保されていません。 |
11 | FVCL_ErrorCode::INVALID_PARAMETER | 引数が不正です。 |
FVCL::Data::CFvPattern::MaskCopyFrom | ( | const FVCL::Data::CFvImage & | image | ) |
画像オブジェクトからマスク領域への複写
画像オブジェクトからマスク領域へデータを複写します。
[in] | image | 複写元画像 |
true | 正常 |
false | 異常 GetErrorCode メソッドでエラーコードを取得できます。 |
値 | 定数 | 内容 |
23 | FVCL_ErrorCode::NOT_ALLOCATED | マスク領域が確保されていません。 |
12 | FVCL_ErrorCode::INVALID_OBJECT | 引数に指定された画像オブジェクトの領域が確保されていません。 |
16 | FVCL_ErrorCode::INVALID_IMAGETYPE | 引数に指定された画像オブジェクトの画像種別が処理対象外です。 |
99 | FVCL_ErrorCode::NOMATCH_CHANNEL | 引数に指定された画像オブジェクトのチャネル数が処理対象外です。 |
19 | FVCL_ErrorCode::INVALID_PROCAREA | 処理範囲のサイズが一致していません。 |
FVCL::Data::CFvPattern::MaskCopyFrom | ( | const FVCL::Data::CFvImage & | image, |
INT | maskbit | ||
) |
画像オブジェクトからマスク領域への複写 (ビット指定)
画像オブジェクトからマスク領域へデータを複写します。
[in] | image | 複写元画像 |
[in] | maskbit | 対象マスクの指示 以下の定数を指定してください。
|
true | 正常 |
false | 異常 GetErrorCode メソッドでエラーコードを取得できます。 |
値 | 定数 | 内容 |
23 | FVCL_ErrorCode::NOT_ALLOCATED | マスク領域が確保されていません。 |
12 | FVCL_ErrorCode::INVALID_OBJECT | 引数に指定された画像オブジェクトの領域が確保されていません。 |
16 | FVCL_ErrorCode::INVALID_IMAGETYPE | 引数に指定された画像オブジェクトの画像種別が処理対象外です。 |
99 | FVCL_ErrorCode::NOMATCH_CHANNEL | 引数に指定された画像オブジェクトのチャネル数が処理対象外です。 |
19 | FVCL_ErrorCode::INVALID_PROCAREA | 処理範囲のサイズが一致していません。 |
FVCL::Data::CFvPattern::MaskCopyTo | ( | CFvImage * | image | ) | const |
マスク領域から画像オブジェクトへの複写
マスク領域から画像オブジェクトへデータを複写します。
[out] | image | 複写先画像 |
true | 正常 |
false | 異常 GetErrorCode メソッドでエラーコードを取得できます。 |
値 | 定数 | 内容 |
23 | FVCL_ErrorCode::NOT_ALLOCATED | マスク領域が確保されていません。 |
11 | FVCL_ErrorCode::INVALID_PARAMETER | 引数が不正です。 |
12 | FVCL_ErrorCode::INVALID_OBJECT | 引数に指定された画像オブジェクトの領域が確保されていません。 |
16 | FVCL_ErrorCode::INVALID_IMAGETYPE | 引数に指定された画像オブジェクトの画像種別が処理対象外です。 |
99 | FVCL_ErrorCode::NOMATCH_CHANNEL | 引数に指定された画像オブジェクトのチャネル数が処理対象外です。 |
19 | FVCL_ErrorCode::INVALID_PROCAREA | 処理範囲のサイズが一致していません。 |
マスク領域から画像オブジェクトへの複写 (ビット指定)
マスク領域から画像オブジェクトへデータを複写します。
[out] | image | 複写先画像 |
[in] | maskbit | 対象マスクの指示 以下の定数を指定してください。
|
true | 正常 |
false | 異常 GetErrorCode メソッドでエラーコードを取得できます。 |
値 | 定数 | 内容 |
23 | FVCL_ErrorCode::NOT_ALLOCATED | マスク領域が確保されていません。 |
11 | FVCL_ErrorCode::INVALID_PARAMETER | 引数が不正です。 |
12 | FVCL_ErrorCode::INVALID_OBJECT | 引数に指定された画像オブジェクトの領域が確保されていません。 |
16 | FVCL_ErrorCode::INVALID_IMAGETYPE | 引数に指定された画像オブジェクトの画像種別が処理対象外です。 |
99 | FVCL_ErrorCode::NOMATCH_CHANNEL | 引数に指定された画像オブジェクトのチャネル数が処理対象外です。 |
19 | FVCL_ErrorCode::INVALID_PROCAREA | 処理範囲のサイズが一致していません。 |
マスクアドレスの取得
パタンマスクデータが格納された領域の任意のアドレスを取得します。
[in] | x | 水平方向の座標(pixel) |
[in] | y | 垂直方向の座標(pixel) |
FVCL::CFveBadAccessException |
マスク情報の設定
指定位置のマスク情報を設定します。
FVCL::Pattern::MaskBit に定義された定数の論理和を指定してください。
[in] | x | 水平座標 (0~) |
[in] | y | 垂直座標 (0~) |
[in] | value | 設定するマスク情報 |
true | 正常 |
false | 異常 |
FVCL::CFveBadAccessException | 座標が領域外を示しています。 または、マスク領域が確保されていません。 |
マスク情報の取得
指定位置のマスク情報を取得します。
取得した値と FVCL::Pattern::MaskBit に定義された定数を論理演算して、 情報を取得してください。
[in] | x | 水平座標 (0~) |
[in] | y | 垂直座標 (0~) |
FVCL::CFveBadAccessException | 座標が領域外を示しています。 または、マスク領域が確保されていません。 |
マスク情報の設定
指定位置のマスク情報を設定します。
FVCL::Pattern::MaskBit に定義された定数の論理和を指定してください。
[in] | x | 水平座標 (0~) |
[in] | y | 垂直座標 (0~) |
[in] | value | 設定するマスク情報 |
true | 正常 |
false | 異常 |
FVCL::CFveBadAccessException | 座標が領域外を示しています。 または、マスク領域が確保されていません。 |
マスク情報の取得
指定位置のマスク情報を取得します。
取得した値と FVCL::Pattern::MaskBit に定義された定数を論理演算して、 情報を取得してください。
[in] | x | 水平座標 (0~) |
[in] | y | 垂直座標 (0~) |
FVCL::CFveBadAccessException | 座標が領域外を示しています。 または、マスク領域が確保されていません。 |
マスク情報の設定
指定位置のマスク情報を設定します。
FVCL::Pattern::MaskBit に定義された定数の論理和を指定してください。
[in] | x | 水平座標 (0~) |
[in] | y | 垂直座標 (0~) |
[in] | value | 設定するマスク情報 |
true | 正常 |
false | 異常 |
FVCL::CFveBadAccessException | 座標が領域外を示しています。 または、マスク領域が確保されていません。 |
マスク情報の取得
指定位置のマスク情報を取得します。
取得した値と FVCL::Pattern::MaskBit に定義された定数を論理演算して、 情報を取得してください。
[in] | x | 水平座標 (0~) |
[in] | y | 垂直座標 (0~) |
FVCL::CFveBadAccessException | 座標が領域外を示しています。 または、マスク領域が確保されていません。 |
FVCL::Data::CFvPattern::GetMaskMemSize | ( | ) | const |
マスクのメモリ容量の取得 (非推奨)
マスクのメモリ容量(バイト数)を取得します。
FVCL::Data::CFvPattern::GetMaskMemSize64 | ( | ) | const |
マスクのメモリ容量の取得
マスクのメモリ容量(バイト数)を取得します。
FVCL::Data::CFvPattern::GetMaskHorzByte | ( | ) | const |
マスクの水平方向サイズの取得
マスクの水平方向のサイズ(バイト数)を取得します。
FVCL::Data::CFvPattern::GetMaskImageType | ( | ) | const |
|
virtual |
代入オペレータ (=)
[in] | src | コピー元のブジェクト |
|
virtual |
比較オペレータ (==)
[in] | src | 比較対象のオブジェクト |
true | 一致 |
false | 不一致 |
|
virtual |
比較オペレータ (!=)
[in] | src | 比較対象のオブジェクト |
true | 不一致 |
false | 一致 |
|
protectedvirtual |
FIE ハンドルのインポート
※ 派生元のクラスが画像メモリの確保を行う際にマスク領域の確保(MaskAllocate)が 実行されることを目的としてオーバーライドしたものです。
指定された FIE ハンドルから画像アドレスを取得して、このクラスのフィールドに保管します。
この関数は、外部で確保された FIE ハンドルをこのクラスに設定する際に使用します。
fnAllocate や fnAttach を使用すると内部で FIE ハンドルを生成しますので、 このメソッドとは併用できません。
[in] | hImage | FIE 画像オブジェクト 以下のタイプのオブジェクトを指定できます。
オブジェクトタイプ は、FIE ライブラリの fnFIE_get_objtype で取得することが可能です。 |
[in] | is_ref | FIE ハンドル の参照フラグ
|
FVCL_ErrorCode::_SUCCESS | 正常終了 |
FVCL_ErrorCode::INVALID_OBJECT | オブジェクトが無効です。 |
FVCL::Data::CFvImageを再実装しています。
|
protectedvirtual |
内部メモリのアロケーション
※ 派生元のクラスが画像メモリの確保を行う際にマスク領域の確保(MaskAllocate)が 実行されることを目的としてオーバーライドしたものです。
画像種別にあわせて、メモリアロケーションを行います。
[in] | horz | 横方向サイズ (1~) |
[in] | vert | 縦方向サイズ (1~) |
[in] | type | 画像種別 FVCL::ImageType をご参照ください。 |
[in] | ch | チャネル (1~16) |
[in] | option | オプション
|
FVCL_ErrorCode::_SUCCESS | 正常終了 |
FVCL_ErrorCode::FAILED_TO_ALLOCATE | メモリが確保できません。 |
FVCL_ErrorCode::INVALID_IMAGESIZE | 画像サイズに0が指定されています。 |
FVCL_ErrorCode::INVALID_IMAGETYPE | 画像種別が無効です。 |
FVCL_ErrorCode::INVALID_CHANNEL | チャネル数が無効です。 |
FVCL::Data::CFvImageを再実装しています。
|
protectedvirtual |
画像メモリのアタッチ
※ 派生元のクラスが画像メモリの確保を行う際にマスク領域の確保(MaskAllocate)が 実行されることを目的としてオーバーライドしたものです。
画像メモリをアタッチします。
[in] | adrs | 先頭アドレス配列 |
[in] | horz | 横方向サイズ |
[in] | vert | 縦方向サイズ |
[in] | type | 画像種別 |
[in] | ch | チャネル数 (1~16) |
[in] | handles | ハンドル配列 |
FVCL_ErrorCode::_SUCCESS | 正常 |
FVCL_ErrorCode::INVALID_PARAMETER | パラメータが不正 |
FVCL::Data::CFvImageを再実装しています。
マスク領域の確保
マスク領域を確保します。
[in] | horz | 横方向サイズ |
[in] | vert | 縦方向サイズ |
[in] | type | 画像種別 |
true | 正常 |
false | 異常 |
値 | 定数 | 内容 |
23 | FVCL_ErrorCode::FAILED_TO_ALLOCATE | メモリの確保に失敗しました。 |
|
protectedvirtual |
マスク領域の解放
マスク領域を開放します。
true | 正常 |
false | 既に開放済み |
|
protected |
|
protected |
|
protected |
パタンマスク
パタン画像の画素毎のマスク部分・不可欠部分を示す情報です。