xxxxxxxxxx
58
// Visualization of data from EVM board:
// https://github.com/mitmedialab/TI_EVM_logger
var host = 'localhost:8080';
var socket;
var calibration = 7.5;
var square_size = 450;
var SensorValues = [0,0,0,0];
function setup() {
createCanvas(displayWidth, displayHeight);
socket = new WebSocket('ws://' + host);
socket.onmessage = readMessage;
textAlign(CENTER);
}
function readMessage(event) {
SensorValues = split(event.data, ',');
}
function draw() {
background(255);
if (fullscreen()) {
translate(displayWidth/2 - square_size/2,
3.5*displayHeight/5 - square_size/2);
}
pct = float(SensorValues[0]);
y = map(pct, 0,100, square_size, 0) % square_size;
fill(255);
stroke(0);
rect(60, 60+y, square_size-120, square_size-y);
weight = map(pct, 100,0, 0, calibration);
textSize(32);
fill(0);
text(nf(weight, 0, 1) + " lb (= " + nf(weight*0.453592, 0, 1) + " kg)",
square_size/2, 1.23*square_size);
}
// full screen functions:
function mousePressed() {
if (mouseX > 0 && mouseX < windowWidth &&
mouseY > 0 && mouseY < windowHeight) {
let fs = fullscreen();
fullscreen(!fs);
}
}
function windowResized() {
resizeCanvas(displayWidth, displayHeight);
background(0);
}