12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- #include "GlobalInfo.h"
- EyeDataMatrix g_eyeDataMatrix;
- void EyeDataMatrix::addData(int x, int y)
- {
- if(dataMatrix[x][y].Cnt < 79999.0)
- {
- dataMatrix[x][y].fCnt += eyenWeightCoefficient;
- }
- }
- void EyeDataMatrix::eyeStatisticalWeight()
- {
- eyeIsLessenTheBurden = true;
- if (eyenWeightCoefficient <= eyenWeightCoefficientMIN)
- {
- return;
- }
- int num = 0;
- int num2 = 0;
- double num3 = 0.0;
- int num4 = 79999;
- for (int i = 0; i < 1000; i++)
- {
- for (int j = 0; j < 256; j++)
- {
- if (dataMatrix[i][j].fCnt > 0.0)
- {
- num++;
- if (dataMatrix[i][j].fCnt >= (double)num4)
- {
- num2++;
- }
- }
- }
- }
- if (num2 > 0)
- {
- num3 = (double)num2 / (double)num;
- }
- if (num3 >= 0.25)
- {
- eyeIsLessenTheBurden = false;
- }
- }
- void EyeDataMatrix::eyeLessenTheBurden()
- {
- if (eyeIsLessenTheBurden)
- {
- return;
- }
- int num = 0;
- for (int i = 0; i < 1000; i++)
- {
- for (int j = 0; j < 256; j++)
- {
- if (dataMatrix[i][j].fCnt > 0.0)
- {
- num = (int)(dataMatrix[i][j].fCnt * 0.05);
- dataMatrix[i][j].fCnt -= num;
- }
- }
- }
- eyenWeightCoefficient *= eyenWeightCoefficient;
- }
- EyeDataSample** EyeDataMatrix::eyeZoomOut()
- {
- EyeDataSample (*array)[256] = new EyeDataSample[1000][256];
- for (int i = 0; i < 1000; i++)
- {
- for (int j = 0; j < 256; j++)
- {
- EyeDataSample pEyeData2;
- pEyeData2.x = dataMatrix[i][j].x;
- pEyeData2.y = dataMatrix[i][j].y;
- pEyeData2.fCnt = dataMatrix[i][j].fCnt;
- pEyeData2.data = dataMatrix[i][j].data;
- if (dataMatrix[i][j].fCnt > 0.0) {
- pEyeData2.fCnt /= 100.0;
- pEyeData2.Cnt = (int)pEyeData2.fCnt;
- }
- array[i][j] = pEyeData2;
- }
- }
- return array;
- }
|