mirror of https://github.com/espruino/BangleApps
31 lines
926 B
JavaScript
31 lines
926 B
JavaScript
Bangle.setBarometerPower(true, "app");
|
|
|
|
g.clear(1);
|
|
Bangle.loadWidgets();
|
|
Bangle.drawWidgets();
|
|
var zero = 0;
|
|
var R = Bangle.appRect;
|
|
var y = R.y + R.h/2;
|
|
var MEDIANLENGTH = 20;
|
|
var avr = [], median;
|
|
var value = 0;
|
|
|
|
Bangle.on('pressure', function(e) {
|
|
while (avr.length>MEDIANLENGTH) avr.pop();
|
|
avr.unshift(e.altitude);
|
|
median = avr.slice().sort();
|
|
g.reset().clearRect(0,y-30,g.getWidth()-10,y+30);
|
|
if (median.length>10) {
|
|
var mid = median.length>>1;
|
|
value = E.sum(median.slice(mid-4,mid+5)) / 9;
|
|
g.setFont("Vector",50).setFontAlign(0,0).drawString((value-zero).toFixed(1), g.getWidth()/2, y);
|
|
}
|
|
});
|
|
|
|
g.reset();
|
|
g.setFont("6x8").setFontAlign(0,0).drawString(/*LANG*/"ALTITUDE (m)", g.getWidth()/2, y-40);
|
|
g.setFont("6x8").setFontAlign(0,0,3).drawString(/*LANG*/"ZERO", g.getWidth()-5, g.getHeight()/2);
|
|
setWatch(function() {
|
|
zero = value;
|
|
}, (process.env.HWVERSION==2) ? BTN1 : BTN2, {repeat:true});
|