Code:
//Array of X-Coordinate values
double xLCMs[NUMBER_OF_LCMS] = {9, 9, 9, 7, 20, 20, 20, 20, 31, 31, 31, 31, 42, 42, 42, 53.5, 53.5, 53.5,32.5, 34, 34, 34, 34, 43.5, 43.5, 43.5, 43.5, 43.5, 43.5, 54.5, 54.5, 54.5, 54.5, 54.5, 54.5};
//Array of Y-Coordinate values
double yLCMs[NUMBER_OF_LCMS] = {12, 26, 40, 56, 12, 26, 40, 54, 12, 26, 40, 54, 12, 26, 40, 12, 26, 40,101, 115, 122, 132, 142.5, 73, 87, 101, 115, 129, 142, 73, 87, 101, 115, 129, 142};
double dA=0;
double dN=4.0;
double sumXNumerator;
double sumYNumerator;
double sumDenominator;
double LessdRSSI[NUMBER_OF_LCMS];
double dDistance[NUMBER_OF_LCMS];
double dXSumNumerator[NUMBER_OF_LCMS];
double dYSumNumerator[NUMBER_OF_LCMS];
double dSumDenominator[NUMBER_OF_LCMS];
int i;
for( i=0; i+1<=NUMBER_OF_LCMS; i++ )
{
GetTableCellVal ( tabHandle, TABPANEL_TABLE_VALUES, MakePoint( 2, i+1 ), &dRSSI[i] );
dDistance[i] = pow ( 10, ((dRSSI[i]-dA)/(dN*10.00)) );
dXSumNumerator[i] = xLCMs[i]/dDistance[i];
dYSumNumerator[i] = yLCMs[i]/dDistance[i];
dSumDenominator[i] = 1.00/dDistance[i];
}
//Calculate the sum of each array
Sum1D( dXSumNumerator, 20, &sumXNumerator );
Sum1D( dYSumNumerator, 20, &sumYNumerator );
Sum1D( dSumDenominator, 20, &sumDenominator );
//Use the sum's calculated for XNum,YNum, and Denom and determine (x,y) position.
*XPuckValue = ( sumXNumerator/sumDenominator );
*YPuckValue = ( sumYNumerator/sumDenominator );
PlotPoint ( panelHandle, PANEL_SYSTEM, *XPuckValue, *YPuckValue, VAL_X,
VAL_BLUE );