PDA

View Full Version : How to convert user formular into Qt script



lni
31st October 2015, 23:18
Hello,

How can I convert user input formular into Qt script. so it can be evaluated by QtScript engine.

For instance, when user type into

VAR1 / VAR2 * 35.4 * Math.min( Math.power( VAR3 / VAR4, 0.3 ) ) * Math.max( VAR4 )

Where VAR1, VAR2, VAR3, and VAR4 are known arrays with same length, such that VAR[ i ], i = 0, 1, ...., n

I need to convert to:




function calcMin1()
{
var val = Math.power( VAR3[ 0 ] / VAR4[ 0 ], 0.3 );
for ( var idx = 1; idx < VAR3.length; idx++ ) {
val = Math.min( Math.power( VAR3[ idx ] / VAR4[ idx ], 0.3 ), val );
}
return val;
}

function calcMax1()
{
var val = VAR4[ 0 ];
for ( var idx = 1; idx < VAR4.length; idx++ ) {
val = Math.max( VAR4[ idx ], val );
}
return val;
}

var min1 = calcMin1();
var max1 = calcMax1();

var result = new Array;
for ( var idx = 0; idx < VAR1.length; idx++ ) {
result[ idx ] = VAR1[idx] / VAR2[idx] * 35.4 * min1 * max1;
}