【お知らせ】この部分は英語原文のみでの提供となります。何卒ご了承ください。
2.1.17.8.13 ocmath_linear_transform
Contents
Description
Map data array slope [min, max] to [nMin, nMax] linearly
Syntax
int ocmath_linear_transform( double * pData, uint i1, uint i2, int nMin, int nMax, double dMin = __NANUM, double dMax = __NANUM, DWORD dwCntrl = 0 )
Parameters
- pData
- [modify] pointer to data array
- i1
- [input] start data index
- i2
- [input] end data index (inclusive)
- nMin
- [input] result min
- nMax
- [input] result max
- dMin
- [input] input data min to be mapped to nMin, use NANUM to get actual data min
- dMax
- [input] input data max to be mapped to nMax, use NANUM to get actual data max
- dwCntrl
- [input] bits of LNTR_NO_ROUND_NEAREST_INT etc
Return
0 if success, -1 if dMin and dMax equal
Examples
EX1
void ocmath_linear_transform_ex1() { vector vx2 = {100,200,300,400,500}; vector vx; vx = vx2; int nErr = ocmath_linear_transform(vx, 0, vx.GetSize(), 0, 255, NANUM, NANUM); for(int ii = 0; ii < vx.GetSize(); ii++) { int nn = vx[ii]; printf("%d ", nn); } out_str(""); //output should be "0 64 127 191 255" }
Remark
See Also
Header to Include
origin.h