日期:2014-05-20 浏览次数:20801 次
private int getRealValue( int scaledValue, int zoomRate )
{
if( zoomRate == 0 )
return 0;
if( zoomRate == 1 )
{
return scaledValue;
}
/*
* For example:
* if the scaledValue is 8, zoomRate is 8, then the real value is ( 8 - 1 )/8 + 1 = 1
* if the scaledValue is 9, zoomRate is 8, then the real value is ( 9 - 1 )/8 + 1 = 2
* if the scaledValue is 4, zoomRate is -4, then the real value is -( 4 * (-4) = 16
*/
int realValue = ( zoomRate > 0 ) ? ( ( scaledValue - 1 ) / zoomRate + 1 ) : ( -( scaledValue * zoomRate ) );
return realValue;
}