lundi 28 septembre 2015

Convert from one range to another

I have two sets of ranges that I need to be translated from one to the other.

The first range is -100 ↔ 100 with 0 being default.

The second range is 0.0 ↔ 10.0 with 1 being default.

I am working in AS3 with the first range and the second range is a python class and I need these numbers to line up.

I am adjusting brightness of a video in realtime with a slider. The video filter accepts values between -100 ↔ 100. I need to then take that value and pass it to a python script but it only accepts values from 0.0 ↔ 10.0

I tried this function I found on the net, but it doesn't translate the values correctly in this particular case.

private function convertRange(originalStart:Number,originalEnd:Number,newStart:Number,newEnd:Number,value:Number):Number
{
    var originalRange:Number = originalEnd - originalStart;
    var newRange:Number = newEnd - newStart;
    var ratio:Number = newRange / originalRange;
    var newValue:Number = value * ratio;
    var finalValue:Number = newValue + newStart;
    return finalValue;
}       

Is this even possible? Hopefully my question is clear, please let me know if it needs clarification.

This is the python class I am referring to: http://ift.tt/1KGjWyZ It uses the second range whereas AS3 uses the first range.

Aucun commentaire:

Enregistrer un commentaire