mirror of https://github.com/espruino/BangleApps
gipy: parsing heights
parent
6b51925109
commit
3a6eb8b2ad
|
@ -46,6 +46,9 @@ JIT: array declaration in jit is buggy
|
||||||
+ try disabling gps for more powersaving
|
+ try disabling gps for more powersaving
|
||||||
|
|
||||||
+ add heights
|
+ add heights
|
||||||
|
-> have two views: zoomed in and zoomed out
|
||||||
|
|
||||||
|
+ remove "lost" indicator and change position point's color instead
|
||||||
|
|
||||||
+ when you walk the direction still has a tendency to shift
|
+ when you walk the direction still has a tendency to shift
|
||||||
|
|
||||||
|
|
|
@ -593,13 +593,14 @@ class Interests {
|
||||||
}
|
}
|
||||||
|
|
||||||
class Status {
|
class Status {
|
||||||
constructor(path, maps, interests) {
|
constructor(path, maps, interests, heights) {
|
||||||
this.path = path;
|
this.path = path;
|
||||||
this.default_options = true; // do we still have default options ?
|
this.default_options = true; // do we still have default options ?
|
||||||
this.active = false; // should we have screen on
|
this.active = false; // should we have screen on
|
||||||
this.last_activity = getTime();
|
this.last_activity = getTime();
|
||||||
this.maps = maps;
|
this.maps = maps;
|
||||||
this.interests = interests;
|
this.interests = interests;
|
||||||
|
this.heights = heights;
|
||||||
let half_screen_width = g.getWidth() / 2;
|
let half_screen_width = g.getWidth() / 2;
|
||||||
let half_screen_height = g.getHeight() / 2;
|
let half_screen_height = g.getHeight() / 2;
|
||||||
let half_screen_diagonal = Math.sqrt(
|
let half_screen_diagonal = Math.sqrt(
|
||||||
|
@ -1164,6 +1165,7 @@ function load_gps(filename) {
|
||||||
let offset = 0;
|
let offset = 0;
|
||||||
|
|
||||||
let path = null;
|
let path = null;
|
||||||
|
let heights = null;
|
||||||
let maps = [];
|
let maps = [];
|
||||||
let interests = null;
|
let interests = null;
|
||||||
while (offset < file_size) {
|
while (offset < file_size) {
|
||||||
|
@ -1186,6 +1188,11 @@ function load_gps(filename) {
|
||||||
let res = new Interests(buffer, offset);
|
let res = new Interests(buffer, offset);
|
||||||
interests = res[0];
|
interests = res[0];
|
||||||
offset = res[1];
|
offset = res[1];
|
||||||
|
} else if (block_type == 4) {
|
||||||
|
console.log("loading heights");
|
||||||
|
let heights_number = path.points.length / 2;
|
||||||
|
heights = Float64Array(buffer, offset, heights_number);
|
||||||
|
offset += 8 * heights_number;
|
||||||
} else {
|
} else {
|
||||||
console.log("todo : block type", block_type);
|
console.log("todo : block type", block_type);
|
||||||
}
|
}
|
||||||
|
@ -1197,10 +1204,10 @@ function load_gps(filename) {
|
||||||
let msg = "invalid file\nsize " + file_size + "\ninstead of" + offset;
|
let msg = "invalid file\nsize " + file_size + "\ninstead of" + offset;
|
||||||
E.showAlert(msg).then(function() {
|
E.showAlert(msg).then(function() {
|
||||||
E.showAlert();
|
E.showAlert();
|
||||||
start_gipy(path, maps, interests);
|
start_gipy(path, maps, interests, heights);
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
start_gipy(path, maps, interests);
|
start_gipy(path, maps, interests, heights);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1394,14 +1401,14 @@ function start(fn) {
|
||||||
load_gps(fn);
|
load_gps(fn);
|
||||||
}
|
}
|
||||||
|
|
||||||
function start_gipy(path, maps, interests) {
|
function start_gipy(path, maps, interests, heights) {
|
||||||
console.log("starting");
|
console.log("starting");
|
||||||
|
|
||||||
if (!simulated && settings.disable_bluetooth) {
|
if (!simulated && settings.disable_bluetooth) {
|
||||||
NRF.sleep(); // disable bluetooth completely
|
NRF.sleep(); // disable bluetooth completely
|
||||||
}
|
}
|
||||||
|
|
||||||
status = new Status(path, maps, interests);
|
status = new Status(path, maps, interests, heights);
|
||||||
|
|
||||||
setWatch(
|
setWatch(
|
||||||
function() {
|
function() {
|
||||||
|
|
Loading…
Reference in New Issue