175 lines
4.0 KiB
JavaScript
175 lines
4.0 KiB
JavaScript
|
|
|
|
$("#myImage").click ( function (evt) {
|
|
|
|
var jThis = $(this);
|
|
var offsetFromParent = jThis.position ();
|
|
var topThickness = (jThis.outerHeight(true) - jThis.height() ) / 2;
|
|
var leftThickness = (jThis.outerWidth (true) - jThis.width () ) / 2;
|
|
|
|
//--- (x,y) coordinates of the mouse click relative to the image.
|
|
var x = evt.pageX - offsetFromParent.left - leftThickness;
|
|
var y = evt.pageY - offsetFromParent.top - topThickness;
|
|
|
|
ReportDims ();
|
|
$('#rez').append ('<p>User clicked at: ' + x + ', ' + y + ' (x,y).</p>')
|
|
} );
|
|
|
|
|
|
function ReportDims () {
|
|
w = $("#myImage").width ();
|
|
h = $("#myImage").height ();
|
|
$('#rez').text ('The image is ' + w + ' by ' + h + ' (w by h).');
|
|
}
|
|
|
|
ReportDims ();
|
|
|
|
function updateVoltage(voltage)
|
|
{
|
|
|
|
var voltage_min = 9.5;
|
|
var voltage_max = 12.5;
|
|
var voltage_range = voltage_max - voltage_min;
|
|
|
|
var voltage_percentage = (voltage - voltage_min) / voltage_range * 100;
|
|
|
|
var voltage_string = "";
|
|
voltage_string = voltage_string.concat(voltage_percentage);
|
|
voltage_string = voltage_string.substring(0,4);
|
|
voltage_string = voltage_string.concat('%');
|
|
|
|
document.getElementById("VoltageDisplay").style.width = voltage_string;
|
|
document.getElementById("VoltageDisplay").innerHTML = voltage_string;
|
|
|
|
if (voltage_percentage < 50 && voltage_percentage > 25 ) {
|
|
document.getElementById("VoltageDisplay").className = "progress-bar progress-bar-warning"
|
|
}
|
|
else if ( voltage_percentage <= 25)
|
|
{
|
|
document.getElementById("VoltageDisplay").className = "progress-bar progress-bar-danger"
|
|
var sound = document.getElementById("audio");
|
|
sound.play()
|
|
console.log("Pay Sound")
|
|
}
|
|
else
|
|
{
|
|
document.getElementById("VoltageDisplay").className = "progress-bar progress-bar-success"
|
|
}
|
|
};
|
|
|
|
function updateTopicsGUI()
|
|
{
|
|
|
|
ros.getTopics(ros.buildTopicList);
|
|
|
|
var topics = ros.getTopicsList();
|
|
|
|
if(topics != null){
|
|
var innerHTML = "";
|
|
for (var i = 0; i < topics.length; i++ )
|
|
{
|
|
innerHTML = innerHTML.concat(generateTopicCheckbox(topics[i]));
|
|
}
|
|
document.getElementById("ROSTopics").innerHTML = innerHTML;
|
|
}
|
|
|
|
};
|
|
|
|
function generateTopicCheckbox(topic)
|
|
{
|
|
var str = "<div class=\"checkbox\">";
|
|
var checked_str = "unchecked";
|
|
if (topic.bag == true)
|
|
{
|
|
checked_str = "checked"
|
|
}
|
|
str =str.concat("<label><input type=\"checkbox\" onclick=\"toggleToBag(\'"+ topic.name + "\')\" id=\"" + topic.name + "_checkbox\" "+ checked_str +">");
|
|
str = str.concat(topic.name);
|
|
str = str.concat("</label></div>");
|
|
return str;
|
|
};
|
|
|
|
function toggleToBag(topic_name)
|
|
{
|
|
// if($.inArray(topic_name, ros.topics))
|
|
ros.topics[ros.topics.indexOfTopic(topic_name)].bag = !ros.topics[ros.topics.indexOfTopic(topic_name)].bag ;
|
|
}
|
|
|
|
function updateNodesGUI()
|
|
{
|
|
|
|
ros.getNodes(function(result)
|
|
{
|
|
ros.nodes = result;
|
|
});
|
|
|
|
var nodes = ros.nodes;
|
|
|
|
nodes.sort()
|
|
|
|
if(nodes != null){
|
|
var innerHTML = "";
|
|
for (var i = 0; i < nodes.length; i++ )
|
|
{
|
|
innerHTML = innerHTML.concat(nodes[i]);
|
|
innerHTML = innerHTML.concat("<br>");
|
|
|
|
}
|
|
document.getElementById("ROSNodes").innerHTML = innerHTML;
|
|
}
|
|
|
|
};
|
|
|
|
window.setInterval(function(){
|
|
|
|
updateTopicsGUI();
|
|
updateNodesGUI();
|
|
|
|
}, 500);
|
|
|
|
function validateForm()
|
|
{
|
|
ros.attemptConnection();
|
|
return false;
|
|
};
|
|
|
|
function addInputsForConnection()
|
|
{
|
|
|
|
var innerHTML = "";
|
|
|
|
for (var i = 0; i < ros.connectioninfo.length; i ++)
|
|
{
|
|
|
|
console.log(ros.connectioninfo[i])
|
|
el = document.getElementById("ConnectionInformation")
|
|
|
|
innerHTML = innerHTML.concat("<span class=\"col-sm-1\">");
|
|
innerHTML = innerHTML.concat("<input type=\"text\" class=\"form-control\" value=\"");
|
|
innerHTML = innerHTML.concat(ros.connectioninfo[i])
|
|
innerHTML = innerHTML.concat("\"/>")
|
|
innerHTML = innerHTML.concat("</span>")
|
|
if(i >0 && i < 4)
|
|
{
|
|
innerHTML = innerHTML.concat("<span class=\"col-sxm-1\">.</span>")
|
|
}
|
|
|
|
|
|
}
|
|
el.innerHTML = innerHTML;
|
|
|
|
console.log(innerHTML)
|
|
|
|
|
|
}
|
|
|
|
function mylog(input)
|
|
{
|
|
console.log(input)
|
|
}
|
|
|
|
|
|
|
|
|
|
|