addDistanceFix
This commit is contained in:
parent
2d2b823592
commit
9199977b89
@ -76,14 +76,14 @@ let accChart = new Chart(ctx1, {
|
|||||||
*/
|
*/
|
||||||
function addDistances(data){
|
function addDistances(data){
|
||||||
//collect all horizontal accuracies from serial source and tcp source.
|
//collect all horizontal accuracies from serial source and tcp source.
|
||||||
let serialHAccs = data.map(el => {
|
let serialHAccs = data.filter(el => el.ser != null).map(el => {
|
||||||
return el.ser.HAcc
|
return el.ser.HAcc
|
||||||
})
|
})
|
||||||
let tcpHAccs = data.map(el => {
|
let tcpHAccs = data.filter(el => el.tcp != null).map(el => {
|
||||||
return el.tcp.HAcc
|
return el.tcp.HAcc
|
||||||
})
|
})
|
||||||
//apply vincenty algorithm on coordinates from serial and tcp source.
|
//apply vincenty algorithm on coordinates from serial and tcp source.
|
||||||
let distances = data.map((el, i, arr) => {
|
let distances = data.filter(el => el.ser != null && el.tcp != null).map((el, i, arr) => {
|
||||||
// return distVincenty(el.ser.Position, el.tcp.Position)
|
// return distVincenty(el.ser.Position, el.tcp.Position)
|
||||||
const plaindist = distVincenty(el.ser.Position, el.tcp.Position)
|
const plaindist = distVincenty(el.ser.Position, el.tcp.Position)
|
||||||
arr[i]['distance'] = plaindist
|
arr[i]['distance'] = plaindist
|
||||||
@ -96,12 +96,17 @@ function addDistances(data){
|
|||||||
return arr[i].distanceCleanAbs // plaindist - Math.abs(el.ser.Speed / 1000 * el.differenceMs)
|
return arr[i].distanceCleanAbs // plaindist - Math.abs(el.ser.Speed / 1000 * el.differenceMs)
|
||||||
})
|
})
|
||||||
|
|
||||||
let tcpTimes = data.map(el => {
|
let timelabels = data.filter(el => el.tcp != null).map(el => {
|
||||||
return el.tcp.Timestamp
|
return el.tcp.Timestamp
|
||||||
})
|
})
|
||||||
|
if (timelabels.length === 0) {
|
||||||
|
timelabels = data.filter(el => el.ser != null).map(el => {
|
||||||
|
return el.ser.Timestamp
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
//add the data to the chart and update the hart
|
//add the data to the chart and update the hart
|
||||||
accChart.data.labels = tcpTimes
|
accChart.data.labels = timelabels
|
||||||
accChart.data.datasets[0].data = serialHAccs
|
accChart.data.datasets[0].data = serialHAccs
|
||||||
accChart.data.datasets[1].data = tcpHAccs
|
accChart.data.datasets[1].data = tcpHAccs
|
||||||
accChart.data.datasets[2].data = distances
|
accChart.data.datasets[2].data = distances
|
||||||
|
|||||||
@ -115,7 +115,7 @@ window.addEventListener("load", function(evt) {
|
|||||||
});
|
});
|
||||||
|
|
||||||
function prepareForDistanceCalc(data) {
|
function prepareForDistanceCalc(data) {
|
||||||
if('SOURCE_TCP' in data && data.SOURCE_TCP.length > 0 && 'SOURCE_SERIAL' in data && data.SOURCE_SERIAL.length > 0) {
|
if('SOURCE_TCP' in data && data.SOURCE_TCP.length > 0 && 'SOURCE_SERIAL' in data) {
|
||||||
let sensorPoints = [];
|
let sensorPoints = [];
|
||||||
data.SOURCE_TCP.forEach(element => {
|
data.SOURCE_TCP.forEach(element => {
|
||||||
if (element.Position[0] !== 0 && element.Position[1] !== 0) {
|
if (element.Position[0] !== 0 && element.Position[1] !== 0) {
|
||||||
@ -143,6 +143,19 @@ function prepareForDistanceCalc(data) {
|
|||||||
})
|
})
|
||||||
console.log("SENSORPOINTs", newSensorPoints)
|
console.log("SENSORPOINTs", newSensorPoints)
|
||||||
return newSensorPoints
|
return newSensorPoints
|
||||||
|
} else if ('SOURCE_SERIAL' in data && data.SOURCE_SERIAL.length > 0) {
|
||||||
|
let sensorPoints = [];
|
||||||
|
data.SOURCE_SERIAL.forEach(element => {
|
||||||
|
if (element.Position[0] !== 0 && element.Position[1] !== 0) {
|
||||||
|
sensorPoints.push({
|
||||||
|
differenceMs: Number.MAX_VALUE,
|
||||||
|
tcp: null,
|
||||||
|
ser: element,
|
||||||
|
speed: null
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
return sensorPoints
|
||||||
}
|
}
|
||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user