##// END OF EJS Templates
Aplicacion de controlador de radar revisada. Un bug remanente en mix de experimentos pendiente.
Aplicacion de controlador de radar revisada. Un bug remanente en mix de experimentos pendiente.

File last commit:

r338:7377db7c77e8
r343:eea526c788c8
Show More
cr.js
160 lines | 4.5 KiB | application/javascript | JavascriptLexer
var km_fields = [];
var unit_fields = [];
var dc_fields = [];
function str2hz(s){
return 150000*Math.pow(parseFloat(s), -1);
}
function str2unit(s){
var km2unit = (20/3)*(parseFloat($('#id_frequency').val())/parseFloat($('#id_clock_divider').val()));
var ret = "";
values = s.split(",");
for (i=0; i<values.length; i++) {
ret += Math.round(parseFloat(values[i])*km2unit);
ret += ",";
}
return ret.substring(0, ret.length-1);
}
function str2int(s){
var ret = "";
values = s.split(",");
for (i=0; i<values.length; i++) {
ret += Math.round(parseFloat(values[i]));
ret += ",";
}
return ret.substring(0, ret.length-1);
}
function str2km(s){
var km2unit = (20/3)*(parseFloat($('#id_frequency').val())/parseFloat($('#id_clock_divider').val()));
var ret = "";
values = s.split(",");
for (i=0; i<values.length; i++) {
ret += parseFloat(values[i])/km2unit;
ret += ",";
}
return ret.substring(0, ret.length-1);
}
function str2dc(s){
return parseFloat(s)*100/parseFloat($('#id_ipp').val())
}
function updateUnits() {
for (j=0; j<km_fields.length; j++){
label_unit = "#"+km_fields[j]+"_unit";
label = "#"+km_fields[j];
$(label_unit).val(str2unit($(label).val()));
}
}
function updateDc() {
for (j=0; j<dc_fields.length; j++){
label_dc = "#"+dc_fields[j]+"_dc";
label = "#"+dc_fields[j];
$(label_dc).val(str2dc($(label).val()));
}
}
function updateWindows(label) {
if (label.indexOf("first_height")>0){
llabel = label.replace("first_height", "last_height");
rlabel = label.replace("first_height", "resolution");
nlabel = label.replace("first_height", "number_of_samples");
value = parseFloat($(label).val())+parseFloat($(rlabel).val())*(parseInt($(nlabel).val())-1);
$(llabel).val(value);
}
if (label.indexOf("resolution")>0){
llabel = label.replace("resolution", "last_height");
flabel = label.replace("resolution", "first_height");
nlabel = label.replace("resolution", "number_of_samples");
value = parseFloat($(flabel).val())+parseFloat($(label).val())*(parseInt($(nlabel).val())-1);
$(llabel).val(value);
}
if (label.indexOf("number_of_samples")>0){
llabel = label.replace("number_of_samples", "last_height");
rlabel = label.replace("number_of_samples", "resolution");
flabel = label.replace("number_of_samples", "first_height");
value = parseFloat($(flabel).val())+parseFloat($(rlabel).val())*(parseInt($(label).val())-1);
$(llabel).val(value);
}
if (label.indexOf("last_height")>0){
flabel = label.replace("last_height", "first_height");
rlabel = label.replace("last_height", "resolution");
nlabel = label.replace("last_height", "number_of_samples");
nvalue = Math.round((parseFloat($(label).val())-parseFloat($(flabel).val()))/parseFloat($(rlabel).val()))+1;
$(nlabel).val(nvalue);
value = parseFloat($(flabel).val())+parseFloat($(rlabel).val())*(nvalue-1);
$(label).val(value);
}
}
function updateClock() {
if ($("#id_reference").val()==0){
var ref = 25;
}else{
var ref = 10;
}
$("#id_frequency").val(parseFloat($('#id_multiplier').val())*ref/parseFloat($('#id_divisor').val()));
$("#id_clock").val(parseFloat($('#id_frequency').val())/parseFloat($('#id_clock_divider').val()));
updateUnits();
}
$("#id_frequency").change(function() {
$("#id_clock").val(parseFloat($('#id_frequency').val())/parseFloat($('#id_clock_divider').val()));
updateUnits();
});
$("#id_clock_divider").change(function() {
$("#id_clock").val(parseFloat($('#id_frequency').val())/parseFloat($('#id_clock_divider').val()));
updateUnits();
});
$("#id_mode").change(function() {
if ($("#id_mode").val()=="False"){
$('#id_multiplier').removeProp("readonly");
$('#id_divisor').removeProp("readonly");
$('#id_reference').removeProp("readonly");
$('#id_frequency').prop("readonly", true);
updateClock();
}else{
$('#id_frequency').removeProp("readonly");
$('#id_multiplier').prop("readonly", true);
$('#id_divisor').prop("readonly", true);
$('#id_reference').prop("readonly", true);
$('#id_reference').val(1)
$('#id_frequency').val(60);
$("#id_clock").val(parseFloat($('#id_frequency').val())/parseFloat($('#id_clock_divider').val()));
}
});
$("#id_multiplier").change(function() {
updateClock();
});
$("#id_divisor").change(function() {
updateClock();
});
$("#id_reference").change(function() {
updateClock();
});