Skip to content

Commit

Permalink
fix scaling bug
Browse files Browse the repository at this point in the history
  • Loading branch information
tblaha committed Oct 3, 2023
1 parent 60eeab7 commit 07b51e5
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 8 deletions.
2 changes: 2 additions & 0 deletions js/flightlog.js
Original file line number Diff line number Diff line change
Expand Up @@ -88,13 +88,15 @@ function FlightLog(logData) {
for (var j = 0; j < rawStats.frame.P.field.length; j++) {
rawStats.field[j].max = Math.max(rawStats.field[j].max, rawStats.frame.P.field[j].max);
rawStats.field[j].min = Math.min(rawStats.field[j].min, rawStats.frame.P.field[j].min);
//console.log(`${fieldNames[j]}: min ${rawStats.field[j].min}, max ${rawStats.field[j].max}`);
}

// Just modify the raw stats variable to add this field, the parser won't mind the extra field appearing:
if (rawStats.frame.S) {
rawStats.field = rawStats.field.concat(rawStats.frame.S.field);
}


return rawStats;
};

Expand Down
2 changes: 2 additions & 0 deletions js/flightlog_fielddefs.js
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,7 @@ let
'RANGEFINDER',
'FAILSAFE',
'GPSRESCUE',
'VELOCITY',
'POSITION',
'ANTIGRAVITY',
'HEADADJ',
Expand Down Expand Up @@ -571,6 +572,7 @@ function adjustFieldDefsList(firmwareType, firmwareVersion) {
}
//if (semver.lt(firmwareVersion, '4.4.2')) {
if (firmwareType !== FIRMWARE_TYPE_INDIFLIGHT) {
FLIGHT_LOG_FLIGHT_MODE_NAME.splice(FLIGHT_LOG_FLIGHT_MODE_NAME.indexOf('VELOCITY'), 1);
FLIGHT_LOG_FLIGHT_MODE_NAME.splice(FLIGHT_LOG_FLIGHT_MODE_NAME.indexOf('POSITION'), 1);
}
FLIGHT_LOG_FLIGHT_MODE_NAME = makeReadOnly(FLIGHT_LOG_FLIGHT_MODE_NAME);
Expand Down
17 changes: 9 additions & 8 deletions js/graph_config.js
Original file line number Diff line number Diff line change
Expand Up @@ -122,14 +122,14 @@ function GraphConfig(graphConfig) {
}

var anyCommonScale = false;
var inMax=+1.;
var inMin=-1.;
var inMax=-Number.MAX_VALUE;
var inMin=+Number.MAX_VALUE;
for (var j = 0; j < newGraph.fields.length; j++) {
var field = newGraph.fields[j];
if (field.commonScale) {
anyCommonScale = true;
inMax = Math.max(inMax,-field.curve.offset + field.curve.inputRange);
inMin = Math.min(inMin,-field.curve.offset - field.curve.inputRange);
inMax = Math.max(inMax,-field.curve.offset + field.curve.inputRange);
}
}

Expand All @@ -142,10 +142,11 @@ function GraphConfig(graphConfig) {
inputRange = (inMax - inMin) / 2 * 1.05; // protection against 0 not necessary
for (var j = 0; j < newGraph.fields.length; j++) {
if (newGraph.fields[j].commonScale) {
//console.log(`Min ${-newGraph.fields[j].curve.offset - newGraph.fields[j].curve.inputRange} to ${-offset - inputRange}`);
//console.log(`Max ${-newGraph.fields[j].curve.offset + newGraph.fields[j].curve.inputRange} to ${-offset + inputRange}`);
console.log(`${newGraph.fields[j].name}`)
console.log(`Min ${-newGraph.fields[j].curve.offset - newGraph.fields[j].curve.inputRange} to ${-offset - inputRange}`);
console.log(`Max ${-newGraph.fields[j].curve.offset + newGraph.fields[j].curve.inputRange} to ${-offset + inputRange}`);
newGraph.fields[j].curve.offset = offset;
newGraph.fields[j].curve.inputRange = inputRange;
newGraph.fields[j].curve.inputRange = Math.max(inputRange, 1.);
}
}
}
Expand Down Expand Up @@ -260,7 +261,7 @@ GraphConfig.load = function(config) {
var
stats = flightLog.getStats(),
min = Number.MAX_VALUE,
max = Number.MIN_VALUE;
max = -Number.MAX_VALUE;

for(var i in arguments) {
var
Expand All @@ -273,7 +274,7 @@ GraphConfig.load = function(config) {
}
}

if (min != Number.MAX_VALUE && max != Number.MIN_VALUE) {
if (min != Number.MAX_VALUE && max != -Number.MAX_VALUE) {
return {min:min, max:max};
}

Expand Down

0 comments on commit 07b51e5

Please sign in to comment.