addDistanceFix
This commit is contained in:
parent
2d2b823592
commit
9199977b89
@ -76,14 +76,14 @@ let accChart = new Chart(ctx1, {
|
||||
*/
|
||||
function addDistances(data){
|
||||
//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
|
||||
})
|
||||
let tcpHAccs = data.map(el => {
|
||||
let tcpHAccs = data.filter(el => el.tcp != null).map(el => {
|
||||
return el.tcp.HAcc
|
||||
})
|
||||
//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)
|
||||
const plaindist = distVincenty(el.ser.Position, el.tcp.Position)
|
||||
arr[i]['distance'] = plaindist
|
||||
@ -96,12 +96,17 @@ function addDistances(data){
|
||||
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
|
||||
})
|
||||
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
|
||||
accChart.data.labels = tcpTimes
|
||||
accChart.data.labels = timelabels
|
||||
accChart.data.datasets[0].data = serialHAccs
|
||||
accChart.data.datasets[1].data = tcpHAccs
|
||||
accChart.data.datasets[2].data = distances
|
||||
|
||||
@ -115,7 +115,7 @@ window.addEventListener("load", function(evt) {
|
||||
});
|
||||
|
||||
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 = [];
|
||||
data.SOURCE_TCP.forEach(element => {
|
||||
if (element.Position[0] !== 0 && element.Position[1] !== 0) {
|
||||
@ -143,6 +143,19 @@ function prepareForDistanceCalc(data) {
|
||||
})
|
||||
console.log("SENSORPOINTs", 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
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user