

#include <nitro/prc.h>
typedef enum PRCResampleMethod
{
PRC_RESAMPLE_METHOD_NONE = 0,
PRC_RESAMPLE_METHOD_DISTANCE,
PRC_RESAMPLE_METHOD_ANGLE,
PRC_RESAMPLE_METHOD_RECURSIVE,
} PRCResampleMethod;
| PRC_RESAMPLE_METHOD_NONE | リサンプルしない |
| PRC_RESAMPLE_METHOD_DISTANCE | シティブロック距離が threshold を超えたら次の点を採用 |
| PRC_RESAMPLE_METHOD_ANGLE | 角度が直前に採用した辺より threshold 以上離れていたら次の点を採用(角度は2π/65536ラジアン単位) |
| PRC_RESAMPLE_METHOD_RECURSIVE | 再帰的処理により、リサンプル前の全ての点がリサンプル後の各辺より threshold 以下しか離れていないようになる点を採用 |
PRC_InitInputPatternEx() の引数の PRCInputPatternParam に含まれる列挙型です。
生の入力点列はそのまま用いると点の数が多すぎ、また手の震えによるノイズも多く乗っているため、特徴的な点だけを残すリサンプリング処理が必要となります。この列挙型はリサンプリングに用いるアルゴリズムを指定するためのものです。
FX_Atan2Idx() を用います。そのため、threshold には1周をu16の範囲で表したときの値を用います(例:直角=16384)。処理速度は中程度です。リサンプルアルゴリズムの詳細は、docs/TechnicalNotes/AboutPatternRecognition.pdf を参照してください。
PRCInputPatternParam, PRC_InitInputPattern*, PRC_ResampleStrokes*
2005/02/18 解説ドキュメントのファイル名を修正
2004/06/23 初版