Как рассчитать значение слайдера от отрицательного до положительного
У меня есть ползунок кривой, который принимает значение от высоты кадра, значение которого составляет от -100 до 300, и мне нужно рассчитать его, чтобы оно равнялось значению от 0 до 10.
Как я могу рассчитать отрицательное значение, так как то, что я получил, было отрицательным значением?
моя математика плохая:(
-(NSUInteger)calculatePoints:(float)pointY
{
NSLog(@"maxOffsetValue %f minOffsetValue %fand pointY %f",maxOffsetValue,minOffsetValue, pointY);
float value = maxOffsetValue + minOffsetValue;
NSLog(@"value %f",value);
float normalValue = (pointY * 1.5) / value ;
NSLog(@"normalValue %f",normalValue);
return normalValue;
}
//set value from point
-(void) setValueFromPoint:(CGPoint) point
{
[animationTimer invalidate];
NSInteger value = [self calculatePoints:point.y];
value = ((value / self.frame.size.height) * self.max);
NSLog(@"raw value %d",value);
value < 0 ? value = 0 : value;
value > self.max ? value = self.max : value;
self->_value = value;
NSLog(@"Value %d",value);
}
2 ответа
Решение
Вы можете получить свое значение в масштабе между 0
а также 10
используя
(x + 100) / 40
где x
это значение между -100
а также 300
,