WIL説明書(C++)  3.0.0
モジュール | クラス | 関数
座標系変換行列生成

詳解

モジュール

 定数
 

クラス

class  FVCL::Caliper::CFvAlignParam
 キャリパーアライメント係数クラス [詳解]
 
struct  FVCL::Caliper::tagALIGNPARAM
 アライメント係数構造体 [詳解]
 

関数

FVCL_API INT FVCL::Caliper::Align2PointA (CFvAlignParam *param, const FVCL::Data::CFvPoint &xpoint1, const FVCL::Data::CFvPoint &xpoint2, DOUBLE scale_x, DOUBLE scale_y, bool reverse_y)
 2点からのアライメント座標の生成 [詳解]
 
FVCL_API INT FVCL::Caliper::Align2PointB (CFvAlignParam *param, const FVCL::Data::CFvPoint &ypoint1, const FVCL::Data::CFvPoint &ypoint2, DOUBLE scale_x, DOUBLE scale_y, bool reverse_y)
 2点からのアライメント座標の生成 [詳解]
 
FVCL_API INT FVCL::Caliper::Align2PointC (CFvAlignParam *param, const FVCL::Data::CFvPoint &xpoint1, const FVCL::Data::CFvPoint &xpoint2, DOUBLE scale_x, DOUBLE scale_y, bool reverse_y)
 2点からのアライメント座標の生成 [詳解]
 
FVCL_API INT FVCL::Caliper::Align3PointA (CFvAlignParam *param, const FVCL::Data::CFvPoint &xpoint1, const FVCL::Data::CFvPoint &xpoint2, const FVCL::Data::CFvPoint &ypoint, DOUBLE scale_x, DOUBLE scale_y, bool reverse_y)
 3点からのアライメント座標の生成 [詳解]
 
FVCL_API INT FVCL::Caliper::Align3PointB (CFvAlignParam *param, const FVCL::Data::CFvPoint &xpoint1, const FVCL::Data::CFvPoint &xpoint2, const FVCL::Data::CFvPoint &ypoint, DOUBLE scale_x, DOUBLE scale_y, bool reverse_y)
 3点からのアライメント座標の生成 [詳解]
 
FVCL_API INT FVCL::Caliper::AlignNPointA (CFvAlignParam *param, const FVCL::CFvMultiData< FVCL::Data::CFvPoint > &xpoints, const FVCL::Data::CFvPoint &ypoint, DOUBLE scale_x, DOUBLE scale_y, bool reverse_y, INT lsm_calc_mode, INT lsm_param)
 点群と1点からのアライメント座標の生成 [詳解]
 
FVCL_API INT FVCL::Caliper::AlignNPointB (CFvAlignParam *param, const FVCL::CFvMultiData< FVCL::Data::CFvPoint > &xpoints, const FVCL::Data::CFvPoint &ypoint, DOUBLE scale_x, DOUBLE scale_y, bool reverse_y, INT lsm_calc_mode, INT lsm_param)
 点群と1点からのアライメント座標の生成 [詳解]
 
FVCL_API INT FVCL::Caliper::AlignParallel (CFvAlignParam *param, const FVCL::Data::CFvPoint &origin, DOUBLE scale_x, DOUBLE scale_y, bool reverse_y)
 アライメント座標の平行移動 [詳解]
 
FVCL_API INT FVCL::Caliper::AlignSetPoints (CFvAlignParam *param, const FVCL::CFvMultiData< FVCL::Data::CFvPoint > &screen_points, const FVCL::CFvMultiData< FVCL::Data::CFvPoint > &world_points, bool reverse_y)
 アライメント座標の生成 [詳解]
 

関数詳解

FVCL::Caliper::Align2PointA ( CFvAlignParam param,
const FVCL::Data::CFvPoint xpoint1,
const FVCL::Data::CFvPoint xpoint2,
DOUBLE  scale_x,
DOUBLE  scale_y,
bool  reverse_y 
)

2点からのアライメント座標の生成

namespace FVCL::Caliper

座標変換係数を設定する関数です。

引数
[out]param座標変換係数
[in]xpoint1X軸を決定する点1
[in]xpoint2X軸を決定する点2
[in]scale_xXスケーリング
[in]scale_yYスケーリング
[in]reverse_yY軸方向反転
  • true : 反転する(Y軸正方向が上向き)
  • false: 反転しない(Y軸正方向が下向き)

戻り値
正常に終了した場合は、 0 (FVCL_ErrorCode::_SUCCESS) を返します。 処理を実行できなかった場合は、以下のエラーコードを返します。
エラーコード:
定数 内容
51 FVCL_ErrorCode::LICENSE_ERROR ライセンスがありません。
1 FVCL_ErrorCode::FAILED_TO_ALLOCATE メモリが不足しています。
11 FVCL_ErrorCode::INVALID_PARAMETER パラメータに誤りがあります。
29 FVCL_ErrorCode::NOT_CALCULABLE 計算不可能です。
必要条件:
ヘッダー: FVCLbasic.h
解説:
xpoint1xpoint2 で決定されるx軸をもち、その2点の中点を原点とする 直交座標系の座標変換係数を決定します。 X軸の正の方向は必ず画面向かって右側になります。
palcalip_clp_align_2pointa.png
scale_x 及び scale_y パラメータに指定するスケール値は、 スクリーン座標系における1をワールド座標系でいくつとするかを決める倍率です。 つまり、スケール値として設定された値でアライメント座標の各軸の単位を決定します。
reverse_y パラメータには、ワールド座標のY軸の方向を指定します。 reverse_y パラメータが true の時には、X軸の正の向きを画面向かって右側としたときに、 Y軸の正方向が画面上向きになるように設定されます。 reverse_y パラメータが false の時には、X軸の正の向きを画面向かって右側としたときに、 Y軸の正方向が画面下向きになるように設定されます。
FVCL::Caliper::Align2PointB ( CFvAlignParam param,
const FVCL::Data::CFvPoint ypoint1,
const FVCL::Data::CFvPoint ypoint2,
DOUBLE  scale_x,
DOUBLE  scale_y,
bool  reverse_y 
)

2点からのアライメント座標の生成

namespace FVCL::Caliper

座標変換係数を設定する関数です。

引数
[out]param座標変換係数
[in]ypoint1Y軸を決定する点1
[in]ypoint2Y軸を決定する点2
[in]scale_xXスケーリング
[in]scale_yYスケーリング
[in]reverse_yY軸方向反転
  • true : 反転する(Y軸正方向が上向き)
  • false: 反転しない(Y軸正方向が下向き)

戻り値
正常に終了した場合は、 0 (FVCL_ErrorCode::_SUCCESS) を返します。 処理を実行できなかった場合は、以下のエラーコードを返します。
エラーコード:
定数 内容
51 FVCL_ErrorCode::LICENSE_ERROR ライセンスがありません。
1 FVCL_ErrorCode::FAILED_TO_ALLOCATE メモリが不足しています。
11 FVCL_ErrorCode::INVALID_PARAMETER パラメータに誤りがあります。
29 FVCL_ErrorCode::NOT_CALCULABLE 計算不可能です。
必要条件:
ヘッダー: FVCLbasic.h
解説:
ypoint1ypoint2 で決定されるY軸をもち、その2点の中点を原点とする直交座標系の座標変換係数を決定します。 X軸の正の方向は必ず画面向かって右側になります。
palcalip_clp_align_2pointb.png
scale_x 及び scale_y パラメータに指定するスケール値は、 スクリーン座標系における1をワールド座標系でいくつとするかを決める倍率です。 つまり、スケール値として設定された値でアライメント座標の各軸の単位を決定します。
reverse_y パラメータには、ワールド座標のY軸の方向を指定します。 reverse_y パラメータが true の時には、X軸の正の向きを画面向かって右側としたときに、 Y軸の正方向が画面上向きになるように設定されます。 reverse_y パラメータが false の時には、X軸の正の向きを画面向かって右側としたときに、 Y軸の正方向が画面下向きになるように設定されます。
FVCL::Caliper::Align2PointC ( CFvAlignParam param,
const FVCL::Data::CFvPoint xpoint1,
const FVCL::Data::CFvPoint xpoint2,
DOUBLE  scale_x,
DOUBLE  scale_y,
bool  reverse_y 
)

2点からのアライメント座標の生成

namespace FVCL::Caliper

座標変換係数を設定する関数です。

引数
[out]param座標変換係数
[in]xpoint1X軸を決定する点1
[in]xpoint2X軸を決定する点2
[in]scale_xXスケーリング
[in]scale_yYスケーリング
[in]reverse_yY軸方向反転
  • true : 反転する(Y軸正方向が上向き)
  • false: 反転しない(Y軸正方向が下向き)

戻り値
正常に終了した場合は、 0 (FVCL_ErrorCode::_SUCCESS) を返します。 処理を実行できなかった場合は、以下のエラーコードを返します。
エラーコード:
定数 内容
51 FVCL_ErrorCode::LICENSE_ERROR ライセンスがありません。
1 FVCL_ErrorCode::FAILED_TO_ALLOCATE メモリが不足しています。
11 FVCL_ErrorCode::INVALID_PARAMETER パラメータに誤りがあります。
29 FVCL_ErrorCode::NOT_CALCULABLE 計算不可能です。
必要条件:
ヘッダー: FVCLbasic.h
解説:
xpoint1xpoint2 で決定されるX軸をもち、xpoint1 を原点とする直交座標系の座標変換係数を決定します。 X軸の正の方向は必ず画面向かって右側になります。
palcalip_clp_align_2pointc.png
scale_x 及び scale_y パラメータに指定するスケール値は、 スクリーン座標系における1をワールド座標系でいくつとするかを決める倍率です。 つまり、スケール値として設定された値でアライメント座標の各軸の単位を決定します。
reverse_y パラメータには、ワールド座標のY軸の方向を指定します。 reverse_y パラメータが true の時には、X軸の正の向きを画面向かって右側としたときに、 Y軸の正方向が画面上向きになるように設定されます。 reverse_y パラメータが false の時には、X軸の正の向きを画面向かって右側としたときに、 Y軸の正方向が画面下向きになるように設定されます。
FVCL::Caliper::Align3PointA ( CFvAlignParam param,
const FVCL::Data::CFvPoint xpoint1,
const FVCL::Data::CFvPoint xpoint2,
const FVCL::Data::CFvPoint ypoint,
DOUBLE  scale_x,
DOUBLE  scale_y,
bool  reverse_y 
)

3点からのアライメント座標の生成

namespace FVCL::Caliper

座標変換係数を設定する関数です。

引数
[out]param座標変換係数
[in]xpoint1X軸を決定する点1
[in]xpoint2X軸を決定する点2
[in]ypointY軸を決定する点
[in]scale_xXスケーリング
[in]scale_yYスケーリング
[in]reverse_yY軸方向反転
  • true : 反転する(Y軸正方向が上向き)
  • false: 反転しない(Y軸正方向が下向き)

戻り値
正常に終了した場合は、 0 (FVCL_ErrorCode::_SUCCESS) を返します。 処理を実行できなかった場合は、以下のエラーコードを返します。
エラーコード:
定数 内容
51 FVCL_ErrorCode::LICENSE_ERROR ライセンスがありません。
1 FVCL_ErrorCode::FAILED_TO_ALLOCATE メモリが不足しています。
11 FVCL_ErrorCode::INVALID_PARAMETER パラメータに誤りがあります。
29 FVCL_ErrorCode::NOT_CALCULABLE 計算不可能です。
必要条件:
ヘッダー: FVCLbasic.h
解説:
xpoint1xpoint2 で決定されるX軸と、ypoint を通りX軸に垂直な直線で決定されるY軸の直交座標系の座標変換係数を決定します。 X軸の正の方向は必ず画面向かって右側になります。
palcalip_clp_align_3pointa.png
scale_x 及び scale_y パラメータに指定するスケール値は、 スクリーン座標系における1をワールド座標系でいくつとするかを決める倍率です。 つまり、スケール値として設定された値でアライメント座標の各軸の単位を決定します。
reverse_y パラメータには、ワールド座標のY軸の方向を指定します。 reverse_y パラメータが true の時には、X軸の正の向きを画面向かって右側としたときに、 Y軸の正方向が画面上向きになるように設定されます。 reverse_y パラメータが false の時には、X軸の正の向きを画面向かって右側としたときに、 Y軸の正方向が画面下向きになるように設定されます。
FVCL::Caliper::Align3PointB ( CFvAlignParam param,
const FVCL::Data::CFvPoint xpoint1,
const FVCL::Data::CFvPoint xpoint2,
const FVCL::Data::CFvPoint ypoint,
DOUBLE  scale_x,
DOUBLE  scale_y,
bool  reverse_y 
)

3点からのアライメント座標の生成

namespace FVCL::Caliper

座標変換係数を設定する関数です。

引数
[out]param座標変換係数
[in]xpoint1X軸を決定する点1
[in]xpoint2X軸を決定する点2
[in]ypointY軸を決定する点
[in]scale_xXスケーリング
[in]scale_yYスケーリング
[in]reverse_yY軸方向反転
  • true : 反転する(Y軸正方向が上向き)
  • false: 反転しない(Y軸正方向が下向き)

戻り値
正常に終了した場合は、 0 (FVCL_ErrorCode::_SUCCESS) を返します。 処理を実行できなかった場合は、以下のエラーコードを返します。
エラーコード:
定数 内容
51 FVCL_ErrorCode::LICENSE_ERROR ライセンスがありません。
1 FVCL_ErrorCode::FAILED_TO_ALLOCATE メモリが不足しています。
11 FVCL_ErrorCode::INVALID_PARAMETER パラメータに誤りがあります。
29 FVCL_ErrorCode::NOT_CALCULABLE 計算不可能です。
必要条件:
ヘッダー: FVCLbasic.h
解説:
ypoint を原点とし、xpoint1xpoint2 で決定される直線に平行なX軸の直交座標系の座標変換係数を決定します。 X軸を決定する2点(xpoint1, xpoint2)は、同じ座標ではいけません。同一で有った場合の結果は不定です。 X軸の正の方向は必ず画面向かって右側になります。
palcalip_clp_align_3pointb.png
scale_x 及び scale_y パラメータに指定するスケール値は、 スクリーン座標系における1をワールド座標系でいくつとするかを決める倍率です。 つまり、スケール値として設定された値でアライメント座標の各軸の単位を決定します。
reverse_y パラメータには、ワールド座標のY軸の方向を指定します。 reverse_y パラメータが true の時には、X軸の正の向きを画面向かって右側としたときに、 Y軸の正方向が画面上向きになるように設定されます。 reverse_y パラメータが false の時には、X軸の正の向きを画面向かって右側としたときに、 Y軸の正方向が画面下向きになるように設定されます。
FVCL::Caliper::AlignNPointA ( CFvAlignParam param,
const FVCL::CFvMultiData< FVCL::Data::CFvPoint > &  xpoints,
const FVCL::Data::CFvPoint ypoint,
DOUBLE  scale_x,
DOUBLE  scale_y,
bool  reverse_y,
INT  lsm_calc_mode,
INT  lsm_param 
)

点群と1点からのアライメント座標の生成

namespace FVCL::Caliper

座標変換係数を設定する関数です。

引数
[out]param座標変換係数
[in]xpointsX軸を決定する点配列 (2~1000個)
[in]ypointY軸を決定する点
[in]scale_xXスケーリング
[in]scale_yYスケーリング
[in]reverse_yY軸方向反転
  • true : 反転する(Y軸正方向が上向き)
  • false: 反転しない(Y軸正方向が下向き)

[in]lsm_calc_mode直線係数決定モード
  • FVCL::LSM::CalcMode::NormalMode
  • FVCL::LSM::CalcMode::DistModeA
  • FVCL::LSM::CalcMode::NumMode
  • FVCL::LSM::CalcMode::DistModeB

[in]lsm_param直線係数決定パラメータ
この値は lsm_calc_mode に指定されたモードによって異なります。
詳しくは、FVCL::LSM::CalcMode の各定数の説明をご参照ください。
戻り値
正常に終了した場合は、 0 (FVCL_ErrorCode::_SUCCESS) を返します。 処理を実行できなかった場合は、以下のエラーコードを返します。
エラーコード:
定数 内容
51 FVCL_ErrorCode::LICENSE_ERROR ライセンスがありません。
1 FVCL_ErrorCode::FAILED_TO_ALLOCATE メモリが不足しています。
11 FVCL_ErrorCode::INVALID_PARAMETER パラメータに誤りがあります。
29 FVCL_ErrorCode::NOT_CALCULABLE 計算不可能です。
必要条件:
ヘッダー: FVCLbasic.h
解説:
xpoints の点群で決定されるX軸と、ypoint を通りX軸に垂直な直線で決定されるY軸の直交座標系の座標変換係数を決定します。 X軸の正の方向は必ず画面向かって右側になります。
palcalip_clp_align_npointa.png
scale_x 及び scale_y パラメータに指定するスケール値は、 スクリーン座標系における1をワールド座標系でいくつとするかを決める倍率です。 つまり、スケール値として設定された値でアライメント座標の各軸の単位を決定します。
reverse_y パラメータには、ワールド座標のY軸の方向を指定します。 reverse_y パラメータが true の時には、X軸の正の向きを画面向かって右側としたときに、 Y軸の正方向が画面上向きになるように設定されます。 reverse_y パラメータが false の時には、X軸の正の向きを画面向かって右側としたときに、 Y軸の正方向が画面下向きになるように設定されます。
FVCL::Caliper::AlignNPointB ( CFvAlignParam param,
const FVCL::CFvMultiData< FVCL::Data::CFvPoint > &  xpoints,
const FVCL::Data::CFvPoint ypoint,
DOUBLE  scale_x,
DOUBLE  scale_y,
bool  reverse_y,
INT  lsm_calc_mode,
INT  lsm_param 
)

点群と1点からのアライメント座標の生成

namespace FVCL::Caliper

座標変換係数を設定する関数です。

引数
[out]param座標変換係数
[in]xpointsX軸を決定する点配列 (2~1000個)
[in]ypointY軸を決定する点
[in]scale_xXスケーリング
[in]scale_yYスケーリング
[in]reverse_yY軸方向反転
  • true : 反転する(Y軸正方向が上向き)
  • false: 反転しない(Y軸正方向が下向き)

[in]lsm_calc_mode直線係数決定モード
  • FVCL::LSM::CalcMode::NormalMode
  • FVCL::LSM::CalcMode::DistModeA
  • FVCL::LSM::CalcMode::NumMode
  • FVCL::LSM::CalcMode::DistModeB

[in]lsm_param直線係数決定パラメータ この値は lsm_calc_mode に指定されたモードによって異なります。
詳しくは、FVCL::LSM::CalcMode の各定数の説明をご参照ください。
戻り値
正常に終了した場合は、 0 (FVCL_ErrorCode::_SUCCESS) を返します。 処理を実行できなかった場合は、以下のエラーコードを返します。
エラーコード:
定数 内容
51 FVCL_ErrorCode::LICENSE_ERROR ライセンスがありません。
1 FVCL_ErrorCode::FAILED_TO_ALLOCATE メモリが不足しています。
11 FVCL_ErrorCode::INVALID_PARAMETER パラメータに誤りがあります。
29 FVCL_ErrorCode::NOT_CALCULABLE 計算不可能です。
必要条件:
ヘッダー: FVCLbasic.h
解説:
xpoints の点群で決定される直線に平行で、ypoint を原点とするX軸で決定される直交座標系の座標変換係数を決定します。 X軸の正の方向は必ず画面向かって右側になります。
palcalip_clp_align_npointb.png
scale_x 及び scale_y パラメータに指定するスケール値は、 スクリーン座標系における1をワールド座標系でいくつとするかを決める倍率です。 つまり、スケール値として設定された値でアライメント座標の各軸の単位を決定します。
reverse_y パラメータには、ワールド座標のY軸の方向を指定します。 reverse_y パラメータが true の時には、X軸の正の向きを画面向かって右側としたときに、 Y軸の正方向が画面上向きになるように設定されます。 reverse_y パラメータが false の時には、X軸の正の向きを画面向かって右側としたときに、 Y軸の正方向が画面下向きになるように設定されます。
FVCL::Caliper::AlignParallel ( CFvAlignParam param,
const FVCL::Data::CFvPoint origin,
DOUBLE  scale_x,
DOUBLE  scale_y,
bool  reverse_y 
)

アライメント座標の平行移動

namespace FVCL::Caliper

座標変換係数を設定する関数です。

引数
[in,out]param座標変換係数
[in]origin原点を決定する点
[in]scale_xXスケーリング
[in]scale_yYスケーリング
[in]reverse_yY軸方向反転
  • true : 反転する(Y軸正方向が上向き)
  • false: 反転しない(Y軸正方向が下向き)

戻り値
正常に終了した場合は、 0 (FVCL_ErrorCode::_SUCCESS) を返します。 処理を実行できなかった場合は、以下のエラーコードを返します。
エラーコード:
定数 内容
51 FVCL_ErrorCode::LICENSE_ERROR ライセンスがありません。
1 FVCL_ErrorCode::FAILED_TO_ALLOCATE メモリが不足しています。
11 FVCL_ErrorCode::INVALID_PARAMETER パラメータに誤りがあります。
29 FVCL_ErrorCode::NOT_CALCULABLE 計算不可能です。
必要条件:
ヘッダー: FVCLbasic.h
解説:
origin で指定した点を原点にするように、直行座標系を平行移動します。 既に引数(param)で指定されるアライメント係数が設定されていた場合は、その座標に関して平行移動を行います。 X軸の正の方向は必ず画面向かって右側になります。
palcalip_clp_align_parallel.png
scale_x 及び scale_y パラメータに指定するスケール値は、 スクリーン座標系における1をワールド座標系でいくつとするかを決める倍率です。 つまり、スケール値として設定された値でアライメント座標の各軸の単位を決定します。
reverse_y パラメータには、ワールド座標のY軸の方向を指定します。 reverse_y パラメータが true の時には、X軸の正の向きを画面向かって右側としたときに、 Y軸の正方向が画面上向きになるように設定されます。 reverse_y パラメータが false の時には、X軸の正の向きを画面向かって右側としたときに、 Y軸の正方向が画面下向きになるように設定されます。
FVCL::Caliper::AlignSetPoints ( CFvAlignParam param,
const FVCL::CFvMultiData< FVCL::Data::CFvPoint > &  screen_points,
const FVCL::CFvMultiData< FVCL::Data::CFvPoint > &  world_points,
bool  reverse_y 
)

アライメント座標の生成

namespace FVCL::Caliper

screen_pnts の 各点を world_pnts に変換するような座標変換係数を最小二乗法によって設定する関数です。

引数
[out]param座標変換係数
[in]screen_points変換前座標から見た点群 (2~100個)
[in]world_points変換後座標から見た点群 (2~100個)
[in]reverse_yY軸方向反転
  • true : 反転する(Y軸正方向が上向き)
  • false: 反転しない(Y軸正方向が下向き)

戻り値
正常に終了した場合は、 0 (FVCL_ErrorCode::_SUCCESS) を返します。 処理を実行できなかった場合は、以下のエラーコードを返します。
エラーコード:
定数 内容
51 FVCL_ErrorCode::LICENSE_ERROR ライセンスがありません。
1 FVCL_ErrorCode::FAILED_TO_ALLOCATE メモリが不足しています。
11 FVCL_ErrorCode::INVALID_PARAMETER パラメータに誤りがあります。
29 FVCL_ErrorCode::NOT_CALCULABLE 計算不可能です。
必要条件:
ヘッダー: FVCLbasic.h
解説:
screen_pointsworld_points パラメータに設定する点群数は同じでなければなりません。
reverse_y パラメータには、ワールド座標のY軸の方向を指定します。 reverse_y パラメータが true の時には、X軸の正の向きを画面向かって右側としたときに、 Y軸の正方向が画面上向きになるように設定されます。 reverse_y パラメータが false の時には、X軸の正の向きを画面向かって右側としたときに、 Y軸の正方向が画面下向きになるように設定されます。

Documentation copyright © 2007 FAST Corporation. [B-001864]
Generated on 2023年11月02日(木) 10時12分54秒 for WIL説明書(C++) by doxygen 1.8.11