mirror of
https://github.com/jomjol/AI-on-the-edge-device.git
synced 2025-12-10 13:36:54 +03:00
Button to hide other red Digit Frames (#2907)
Button to hide other red Digit Frames for easier setup, implements #2680
This commit is contained in:
@@ -197,6 +197,10 @@
|
|||||||
<td colspan="2"></td>
|
<td colspan="2"></td>
|
||||||
<td><input type="checkbox" id="CCW" name="CCW" value="0" onclick="changeCCW()" unchecked tabindex=8><label for="CCW">Counter clockwise rotation (CCW)</label></td>
|
<td><input type="checkbox" id="CCW" name="CCW" value="0" onclick="changeCCW()" unchecked tabindex=8><label for="CCW">Counter clockwise rotation (CCW)</label></td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"></td>
|
||||||
|
<td><input type="checkbox" id="showall" name="showall" value="1" onclick="draw()" checked tabindex=9><label for="showall">Show all ROIs</label></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -254,12 +258,10 @@ function EnDisableAnalog() {
|
|||||||
$("#div2").attr("disabled", "disabled").off('click');
|
$("#div2").attr("disabled", "disabled").off('click');
|
||||||
var x1=$("#div2").hasClass("disabledDiv");
|
var x1=$("#div2").hasClass("disabledDiv");
|
||||||
|
|
||||||
if (isEnabled)
|
if (isEnabled) {
|
||||||
{
|
|
||||||
$("#div2").removeClass("disabledDiv");
|
$("#div2").removeClass("disabledDiv");
|
||||||
}
|
}
|
||||||
else
|
else {
|
||||||
{
|
|
||||||
$("#div2").addClass("disabledDiv");
|
$("#div2").addClass("disabledDiv");
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -268,8 +270,7 @@ function EnDisableAnalog() {
|
|||||||
cofcat["Analog"]["enabled"] = isEnabled;
|
cofcat["Analog"]["enabled"] = isEnabled;
|
||||||
document.getElementById("saveroi").disabled = false;
|
document.getElementById("saveroi").disabled = false;
|
||||||
|
|
||||||
if (isEnabled)
|
if (isEnabled) {
|
||||||
{
|
|
||||||
UpdateROIs();
|
UpdateROIs();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -278,6 +279,7 @@ function sah1(el, _target) {
|
|||||||
try {
|
try {
|
||||||
el.disabled = _target;
|
el.disabled = _target;
|
||||||
} catch (E) {}
|
} catch (E) {}
|
||||||
|
|
||||||
if (el.childNodes && el.childNodes.length > 0) {
|
if (el.childNodes && el.childNodes.length > 0) {
|
||||||
for (var x = 0; x < el.childNodes.length; x++) {
|
for (var x = 0; x < el.childNodes.length; x++) {
|
||||||
sah1(el.childNodes[x], _target);
|
sah1(el.childNodes[x], _target);
|
||||||
@@ -296,9 +298,11 @@ function deleteROI(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
ROIInfo.splice(aktindex, 1);
|
ROIInfo.splice(aktindex, 1);
|
||||||
|
|
||||||
if (aktindex > ROIInfo.length - 1){
|
if (aktindex > ROIInfo.length - 1){
|
||||||
aktindex = ROIInfo.length - 1;
|
aktindex = ROIInfo.length - 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
UpdateROIs();
|
UpdateROIs();
|
||||||
draw();
|
draw();
|
||||||
}
|
}
|
||||||
@@ -321,16 +325,20 @@ function newROI() {
|
|||||||
return; //break out of the function early because prompt was aborted
|
return; //break out of the function early because prompt was aborted
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ROIInfo.length > 0)
|
if (ROIInfo.length > 0) {
|
||||||
erg = CreateROI(_number, "analog", sel.selectedIndex, _roinew, 15, 30, ROIInfo[aktindex]["dx"], ROIInfo[aktindex]["dy"], ROIInfo[aktindex]["CCW"]=="true");
|
erg = CreateROI(_number, "analog", sel.selectedIndex, _roinew, 15, 30, ROIInfo[aktindex]["dx"], ROIInfo[aktindex]["dy"], ROIInfo[aktindex]["CCW"]=="true");
|
||||||
else
|
}
|
||||||
|
else {
|
||||||
erg = CreateROI(_number, "analog", sel.selectedIndex, _roinew, 15, 30, 30, 30, false);
|
erg = CreateROI(_number, "analog", sel.selectedIndex, _roinew, 15, 30, 30, 30, false);
|
||||||
|
}
|
||||||
|
|
||||||
if (erg != "")
|
if (erg != "") {
|
||||||
firework.launch(erg, 'danger', 30000);
|
firework.launch(erg, 'danger', 30000);
|
||||||
else
|
}
|
||||||
|
else {
|
||||||
UpdateROIs(_roinew);
|
UpdateROIs(_roinew);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function movePrevious() {
|
function movePrevious() {
|
||||||
var zw = ROIInfo[aktindex];
|
var zw = ROIInfo[aktindex];
|
||||||
@@ -364,13 +372,14 @@ function changeCCW(){
|
|||||||
ROIInfo = getROIInfo("analog", _number);
|
ROIInfo = getROIInfo("analog", _number);
|
||||||
aktindex = parseInt(document.getElementById("index").value);
|
aktindex = parseInt(document.getElementById("index").value);
|
||||||
|
|
||||||
if (document.getElementById("CCW").checked)
|
if (document.getElementById("CCW").checked) {
|
||||||
ROIInfo[aktindex]["CCW"] = "true";
|
ROIInfo[aktindex]["CCW"] = "true";
|
||||||
else
|
}
|
||||||
|
else {
|
||||||
ROIInfo[aktindex]["CCW"] = "false";
|
ROIInfo[aktindex]["CCW"] = "false";
|
||||||
|
}
|
||||||
|
|
||||||
UpdateROIs();
|
UpdateROIs();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function ChangeSelection() {
|
function ChangeSelection() {
|
||||||
@@ -392,9 +401,7 @@ function SaveToConfig(){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function ShowMultiplier() {
|
||||||
function ShowMultiplier()
|
|
||||||
{
|
|
||||||
var decimalShift = 0;
|
var decimalShift = 0;
|
||||||
var multiplier;
|
var multiplier;
|
||||||
var multiplier_decshift;
|
var multiplier_decshift;
|
||||||
@@ -406,6 +413,7 @@ function ShowMultiplier()
|
|||||||
var sel = document.getElementById("Numbers_value1");
|
var sel = document.getElementById("Numbers_value1");
|
||||||
var _number= sel.options[sel.selectedIndex].text;
|
var _number= sel.options[sel.selectedIndex].text;
|
||||||
document.getElementById("decimalShift").value = 0;
|
document.getElementById("decimalShift").value = 0;
|
||||||
|
|
||||||
for (var i = 0; i < NumberInfo.length; ++i) {
|
for (var i = 0; i < NumberInfo.length; ++i) {
|
||||||
if (NumberInfo[i]["name"] == _number) {
|
if (NumberInfo[i]["name"] == _number) {
|
||||||
if (NumberInfo[i]["PostProcessing"]["DecimalShift"]["enabled"]) {
|
if (NumberInfo[i]["PostProcessing"]["DecimalShift"]["enabled"]) {
|
||||||
@@ -419,11 +427,13 @@ function ShowMultiplier()
|
|||||||
multiplier = fixedDecimals = aktindex + 1;
|
multiplier = fixedDecimals = aktindex + 1;
|
||||||
multiplier_decshift = fixedDecimals_decshift = multiplier - Number(decimalShift);
|
multiplier_decshift = fixedDecimals_decshift = multiplier - Number(decimalShift);
|
||||||
|
|
||||||
if (multiplier < 0)
|
if (multiplier < 0) {
|
||||||
fixedDecimals = 0;
|
fixedDecimals = 0;
|
||||||
|
}
|
||||||
|
|
||||||
if (multiplier_decshift < 0)
|
if (multiplier_decshift < 0) {
|
||||||
fixedDecimals_decshift = 0;
|
fixedDecimals_decshift = 0;
|
||||||
|
}
|
||||||
|
|
||||||
document.getElementById("multiplier").value="x" + Number(10 ** (-1*multiplier)).toFixed(fixedDecimals);
|
document.getElementById("multiplier").value="x" + Number(10 ** (-1*multiplier)).toFixed(fixedDecimals);
|
||||||
document.getElementById("multiplier_decshift").value="x" + Number(10 ** (-1*multiplier_decshift)).toFixed(fixedDecimals_decshift);
|
document.getElementById("multiplier_decshift").value="x" + Number(10 ** (-1*multiplier_decshift)).toFixed(fixedDecimals_decshift);
|
||||||
@@ -432,8 +442,9 @@ function ShowMultiplier()
|
|||||||
multiplier = ROIInfo.length - 1 - aktindex;
|
multiplier = ROIInfo.length - 1 - aktindex;
|
||||||
multiplier_decshift = fixedDecimals_decshift = multiplier + Number(decimalShift);
|
multiplier_decshift = fixedDecimals_decshift = multiplier + Number(decimalShift);
|
||||||
|
|
||||||
if (multiplier_decshift > 0)
|
if (multiplier_decshift > 0) {
|
||||||
fixedDecimals_decshift = 0;
|
fixedDecimals_decshift = 0;
|
||||||
|
}
|
||||||
|
|
||||||
if (fixedDecimals_decshift < 0) {
|
if (fixedDecimals_decshift < 0) {
|
||||||
fixedDecimals_decshift = -1 * fixedDecimals_decshift;
|
fixedDecimals_decshift = -1 * fixedDecimals_decshift;
|
||||||
@@ -453,8 +464,7 @@ function UpdateROIs(_sel){
|
|||||||
ROIInfo = getROIInfo("analog", _number);
|
ROIInfo = getROIInfo("analog", _number);
|
||||||
// _catzw = getConfigCategory();
|
// _catzw = getConfigCategory();
|
||||||
|
|
||||||
if (cofcat["Analog"]["enabled"] == false)
|
if (cofcat["Analog"]["enabled"] == false) {
|
||||||
{
|
|
||||||
document.getElementById("Category_Analog_enabled").checked = false;
|
document.getElementById("Category_Analog_enabled").checked = false;
|
||||||
EnDisableAnalog();
|
EnDisableAnalog();
|
||||||
firework.launch('Analog ROI processing is disabled. Activate with checkbox if needed', 'warning', 10000);
|
firework.launch('Analog ROI processing is disabled. Activate with checkbox if needed', 'warning', 10000);
|
||||||
@@ -474,6 +484,7 @@ function UpdateROIs(_sel){
|
|||||||
document.getElementById("refy").disabled = true;
|
document.getElementById("refy").disabled = true;
|
||||||
document.getElementById("refdy").disabled = true;
|
document.getElementById("refdy").disabled = true;
|
||||||
document.getElementById("lockSizes").disabled = true;
|
document.getElementById("lockSizes").disabled = true;
|
||||||
|
document.getElementById("showall").disabled = true;
|
||||||
document.getElementById("lockAspectRatio").disabled = true;
|
document.getElementById("lockAspectRatio").disabled = true;
|
||||||
document.getElementById("CCW").disabled = true;
|
document.getElementById("CCW").disabled = true;
|
||||||
document.getElementById("moveNext").disabled = true;
|
document.getElementById("moveNext").disabled = true;
|
||||||
@@ -481,8 +492,7 @@ function UpdateROIs(_sel){
|
|||||||
document.getElementById("saveroi").disabled = false;
|
document.getElementById("saveroi").disabled = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else
|
else {
|
||||||
{
|
|
||||||
document.getElementById("newROI").disabled = false;
|
document.getElementById("newROI").disabled = false;
|
||||||
document.getElementById("deleteROI").disabled = false;
|
document.getElementById("deleteROI").disabled = false;
|
||||||
document.getElementById("renameROI").disabled = false;
|
document.getElementById("renameROI").disabled = false;
|
||||||
@@ -494,6 +504,7 @@ function UpdateROIs(_sel){
|
|||||||
document.getElementById("refy").disabled = false;
|
document.getElementById("refy").disabled = false;
|
||||||
document.getElementById("refdy").disabled = false;
|
document.getElementById("refdy").disabled = false;
|
||||||
document.getElementById("lockSizes").disabled = false;
|
document.getElementById("lockSizes").disabled = false;
|
||||||
|
document.getElementById("showall").disabled = false;
|
||||||
document.getElementById("lockAspectRatio").disabled = false;
|
document.getElementById("lockAspectRatio").disabled = false;
|
||||||
document.getElementById("CCW").disabled = false;
|
document.getElementById("CCW").disabled = false;
|
||||||
document.getElementById("saveroi").disabled = false;
|
document.getElementById("saveroi").disabled = false;
|
||||||
@@ -504,8 +515,9 @@ function UpdateROIs(_sel){
|
|||||||
_index.remove(0);
|
_index.remove(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (aktindex > ROIInfo.length)
|
if (aktindex > ROIInfo.length) {
|
||||||
aktindex = ROIInfo.length-1;
|
aktindex = ROIInfo.length-1;
|
||||||
|
}
|
||||||
|
|
||||||
for (var i = 0; i < ROIInfo.length; ++i){
|
for (var i = 0; i < ROIInfo.length; ++i){
|
||||||
var option = document.createElement("option");
|
var option = document.createElement("option");
|
||||||
@@ -513,12 +525,13 @@ function UpdateROIs(_sel){
|
|||||||
option.value = i;
|
option.value = i;
|
||||||
_index.add(option);
|
_index.add(option);
|
||||||
if (typeof _sel !== 'undefined') {
|
if (typeof _sel !== 'undefined') {
|
||||||
if (option.text == _sel)
|
if (option.text == _sel) {
|
||||||
aktindex = i;
|
aktindex = i;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
_index.selectedIndex = aktindex;
|
}
|
||||||
|
|
||||||
|
_index.selectedIndex = aktindex;
|
||||||
|
|
||||||
document.getElementById("movePrevious").disabled = false;
|
document.getElementById("movePrevious").disabled = false;
|
||||||
if (aktindex == 0){
|
if (aktindex == 0){
|
||||||
@@ -562,8 +575,8 @@ function UpdateROIs(_sel){
|
|||||||
imageObj.src = dataURL;
|
imageObj.src = dataURL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getCoords(elem) {
|
||||||
function getCoords(elem) { // crossbrowser version
|
// crossbrowser version
|
||||||
var box = elem.getBoundingClientRect();
|
var box = elem.getBoundingClientRect();
|
||||||
var body = document.body;
|
var body = document.body;
|
||||||
var docEl = document.documentElement;
|
var docEl = document.documentElement;
|
||||||
@@ -576,16 +589,15 @@ function UpdateROIs(_sel){
|
|||||||
return { top: Math.round(top), left: Math.round(left) };
|
return { top: Math.round(top), left: Math.round(left) };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* hash #description open the details part of the page */
|
/* hash #description open the details part of the page */
|
||||||
function openDescription() {
|
function openDescription() {
|
||||||
if(window.location.hash) {
|
if(window.location.hash) {
|
||||||
var hash = window.location.hash.substring(1); //Puts hash in variable, and removes the # character
|
var hash = window.location.hash.substring(1); //Puts hash in variable, and removes the # character
|
||||||
if(hash == 'description')
|
if(hash == 'description') {
|
||||||
document.getElementById("desc_details").open = true;
|
document.getElementById("desc_details").open = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function init() {
|
function init() {
|
||||||
openDescription();
|
openDescription();
|
||||||
@@ -604,8 +616,7 @@ function UpdateROIs(_sel){
|
|||||||
var all_dx_dy_Identical = true;
|
var all_dx_dy_Identical = true;
|
||||||
if (ROIInfo.length > 1) {
|
if (ROIInfo.length > 1) {
|
||||||
for (var i = 1; i < (ROIInfo.length); ++i) { // 2nd .. last ROI
|
for (var i = 1; i < (ROIInfo.length); ++i) { // 2nd .. last ROI
|
||||||
if (parseInt(ROIInfo[i].dx) != parseInt(ROIInfo[0].dx) ||
|
if (parseInt(ROIInfo[i].dx) != parseInt(ROIInfo[0].dx) || parseInt(ROIInfo[i].dy) != parseInt(ROIInfo[0].dy)) {
|
||||||
parseInt(ROIInfo[i].dy) != parseInt(ROIInfo[0].dy)) {
|
|
||||||
all_dx_dy_Identical = false;
|
all_dx_dy_Identical = false;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -639,7 +650,6 @@ function UpdateROIs(_sel){
|
|||||||
|
|
||||||
function UpdateNUMBERS(_sel) {
|
function UpdateNUMBERS(_sel) {
|
||||||
zw = getNUMBERInfo();
|
zw = getNUMBERInfo();
|
||||||
|
|
||||||
index = 0;
|
index = 0;
|
||||||
|
|
||||||
var _index = document.getElementById("Numbers_value1");
|
var _index = document.getElementById("Numbers_value1");
|
||||||
@@ -654,8 +664,9 @@ function UpdateNUMBERS(_sel){
|
|||||||
_index.add(option);
|
_index.add(option);
|
||||||
|
|
||||||
if (typeof _sel !== 'undefined') {
|
if (typeof _sel !== 'undefined') {
|
||||||
if (zw[i]["name"] == _sel)
|
if (zw[i]["name"] == _sel) {
|
||||||
index = i
|
index = i;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
_index.selectedIndex = index;
|
_index.selectedIndex = index;
|
||||||
@@ -672,11 +683,14 @@ function renameNumber(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
erg = RenameNUMBER(_delete, _numbernew);
|
erg = RenameNUMBER(_delete, _numbernew);
|
||||||
if (erg != "")
|
|
||||||
|
if (erg != "") {
|
||||||
firework.launch(erg, 'danger', 30000);
|
firework.launch(erg, 'danger', 30000);
|
||||||
else
|
}
|
||||||
|
else {
|
||||||
UpdateNUMBERS(_numbernew);
|
UpdateNUMBERS(_numbernew);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function newNumber() {
|
function newNumber() {
|
||||||
var _numbernew = prompt("Please enter a name for the new number sequence", "name");
|
var _numbernew = prompt("Please enter a name for the new number sequence", "name");
|
||||||
@@ -685,28 +699,29 @@ function newNumber(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
erg = CreateNUMBER(_numbernew);
|
erg = CreateNUMBER(_numbernew);
|
||||||
if (erg != "")
|
|
||||||
|
if (erg != "") {
|
||||||
firework.launch(erg, 'danger', 30000);
|
firework.launch(erg, 'danger', 30000);
|
||||||
else
|
}
|
||||||
|
else {
|
||||||
UpdateNUMBERS(_numbernew);
|
UpdateNUMBERS(_numbernew);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function removeNumber() {
|
function removeNumber() {
|
||||||
if (confirm("The entire number sequence will be removed (digit + analog parts). " +
|
if (confirm("The entire number sequence will be removed (digit + analog parts). " +
|
||||||
"To remove single ROI of the number sequence, use \"Delete ROI\" instead.\n" +
|
"To remove single ROI of the number sequence, use \"Delete ROI\" instead.\n" +
|
||||||
"Do you really want to proceed?"))
|
"Do you really want to proceed?")) {
|
||||||
{
|
|
||||||
var sel = document.getElementById("Numbers_value1");
|
var sel = document.getElementById("Numbers_value1");
|
||||||
var _delete= sel.options[sel.selectedIndex].text;
|
var _delete= sel.options[sel.selectedIndex].text;
|
||||||
erg = DeleteNUMBER(_delete);
|
erg = DeleteNUMBER(_delete);
|
||||||
if (erg != "")
|
if (erg != "") {
|
||||||
firework.launch(erg, 'danger', 30000);
|
firework.launch(erg, 'danger', 30000);
|
||||||
|
}
|
||||||
UpdateNUMBERS();
|
UpdateNUMBERS();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function drawTextBG(context, txt, x, y, padding) {
|
function drawTextBG(context, txt, x, y, padding) {
|
||||||
context.font = "15px Arial";
|
context.font = "15px Arial";
|
||||||
context.textAlign = "center";
|
context.textAlign = "center";
|
||||||
@@ -720,7 +735,8 @@ function drawTextBG(context, txt, x, y, padding) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function draw() {
|
function draw() {
|
||||||
if (typeof ROIInfo === 'undefined') { // During init, ROIInfo is not defined yet
|
if (typeof ROIInfo === 'undefined') {
|
||||||
|
// During init, ROIInfo is not defined yet
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -736,27 +752,23 @@ function drawTextBG(context, txt, x, y, padding) {
|
|||||||
context.fillStyle = "red";
|
context.fillStyle = "red";
|
||||||
context.textAlign = "center";
|
context.textAlign = "center";
|
||||||
|
|
||||||
if (document.getElementById("Category_Analog_enabled").checked)
|
if (document.getElementById("Category_Analog_enabled").checked) {
|
||||||
{
|
|
||||||
var sel = document.getElementById("index");
|
var sel = document.getElementById("index");
|
||||||
var _number = sel.selectedIndex;
|
var _number = sel.selectedIndex;
|
||||||
|
|
||||||
if (lockSizes) {
|
if (lockSizes) {
|
||||||
// Synchronize dx and dy
|
// Synchronize dx and dy
|
||||||
for (var _nb = 0; _nb < ROIInfo.length; _nb++)
|
for (var _nb = 0; _nb < ROIInfo.length; _nb++) {
|
||||||
{
|
if (_nb != _number) {
|
||||||
if (_nb != _number)
|
|
||||||
{
|
|
||||||
ROIInfo[_nb].dy = rect.h;
|
ROIInfo[_nb].dy = rect.h;
|
||||||
ROIInfo[_nb].dx = rect.w;
|
ROIInfo[_nb].dx = rect.w;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (var _nb = 0; _nb < ROIInfo.length; _nb++)
|
if (document.getElementById("showall").checked) {
|
||||||
{
|
for (var _nb = 0; _nb < ROIInfo.length; _nb++) {
|
||||||
if (_nb != _number)
|
if (_nb != _number) {
|
||||||
{
|
|
||||||
lw = 2;
|
lw = 2;
|
||||||
context.lineWidth = lw;
|
context.lineWidth = lw;
|
||||||
context.strokeStyle = "#990000";
|
context.strokeStyle = "#990000";
|
||||||
@@ -766,10 +778,12 @@ function drawTextBG(context, txt, x, y, padding) {
|
|||||||
var dy = parseInt(ROIInfo[_nb].dy) + parseInt(lw);
|
var dy = parseInt(ROIInfo[_nb].dy) + parseInt(lw);
|
||||||
context.strokeRect(x0, y0, dx, dy);
|
context.strokeRect(x0, y0, dx, dy);
|
||||||
|
|
||||||
if (ROIInfo[_nb]["CCW"] != "true")
|
if (ROIInfo[_nb]["CCW"] != "true") {
|
||||||
drawTextBG(context, ROIInfo[_nb]["name"], x0+dx/2-0.5, y0-13, 5);
|
drawTextBG(context, ROIInfo[_nb]["name"], x0+dx/2-0.5, y0-13, 5);
|
||||||
else
|
}
|
||||||
|
else {
|
||||||
drawTextBG(context, ROIInfo[_nb]["name"]+" (CCW)", x0+dx/2-0.5, y0-13, 5);
|
drawTextBG(context, ROIInfo[_nb]["name"]+" (CCW)", x0+dx/2-0.5, y0-13, 5);
|
||||||
|
}
|
||||||
|
|
||||||
lw = 1;
|
lw = 1;
|
||||||
var x0 = parseInt(ROIInfo[_nb].x) - parseInt(lw/2);
|
var x0 = parseInt(ROIInfo[_nb].x) - parseInt(lw/2);
|
||||||
@@ -788,6 +802,7 @@ function drawTextBG(context, txt, x, y, padding) {
|
|||||||
context.stroke();
|
context.stroke();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
lw = 4
|
lw = 4
|
||||||
context.lineWidth = lw;
|
context.lineWidth = lw;
|
||||||
@@ -798,10 +813,12 @@ function drawTextBG(context, txt, x, y, padding) {
|
|||||||
var dy = parseInt(rect.h) + parseInt(lw);
|
var dy = parseInt(rect.h) + parseInt(lw);
|
||||||
context.strokeRect(x0, y0, dx, dy);
|
context.strokeRect(x0, y0, dx, dy);
|
||||||
|
|
||||||
if (ROIInfo[aktindex]["CCW"] != "true")
|
if (ROIInfo[aktindex]["CCW"] != "true") {
|
||||||
drawTextBG(context, ROIInfo[aktindex]["name"], x0+dx/2, y0-11, 5);
|
drawTextBG(context, ROIInfo[aktindex]["name"], x0+dx/2, y0-11, 5);
|
||||||
else
|
}
|
||||||
|
else {
|
||||||
drawTextBG(context, ROIInfo[aktindex]["name"] + " (CCW)", x0+dx/2, y0-11, 5);
|
drawTextBG(context, ROIInfo[aktindex]["name"] + " (CCW)", x0+dx/2, y0-11, 5);
|
||||||
|
}
|
||||||
|
|
||||||
context.lineWidth = 1;
|
context.lineWidth = 1;
|
||||||
context.beginPath();
|
context.beginPath();
|
||||||
@@ -819,7 +836,6 @@ function drawTextBG(context, txt, x, y, padding) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function mouseDown(e) {
|
function mouseDown(e) {
|
||||||
zw = getCoords(this)
|
zw = getCoords(this)
|
||||||
rect.startX = e.pageX - zw.left;
|
rect.startX = e.pageX - zw.left;
|
||||||
@@ -849,10 +865,10 @@ function drawTextBG(context, txt, x, y, padding) {
|
|||||||
if (drag) {
|
if (drag) {
|
||||||
zw = getCoords(this)
|
zw = getCoords(this)
|
||||||
|
|
||||||
|
|
||||||
if (lockAspectRatio) {
|
if (lockAspectRatio) {
|
||||||
rect.h = (e.pageY - zw.top) - rect.startY;
|
rect.h = (e.pageY - zw.top) - rect.startY;
|
||||||
rect.w = Math.round(rect.h * ROIInfo[aktindex]["ar"]); }
|
rect.w = Math.round(rect.h * ROIInfo[aktindex]["ar"]);
|
||||||
|
}
|
||||||
else {
|
else {
|
||||||
rect.w = (e.pageX - zw.left) - rect.startX;
|
rect.w = (e.pageX - zw.left) - rect.startX;
|
||||||
rect.h = (e.pageY - zw.top) - rect.startY;
|
rect.h = (e.pageY - zw.top) - rect.startY;
|
||||||
@@ -913,7 +929,6 @@ function drawTextBG(context, txt, x, y, padding) {
|
|||||||
document.getElementById("saveroi").disabled = false;
|
document.getElementById("saveroi").disabled = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function renameROI() {
|
function renameROI() {
|
||||||
var sel = document.getElementById("Numbers_value1");
|
var sel = document.getElementById("Numbers_value1");
|
||||||
var _number= sel.options[sel.selectedIndex].text;
|
var _number= sel.options[sel.selectedIndex].text;
|
||||||
@@ -926,23 +941,21 @@ function drawTextBG(context, txt, x, y, padding) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
erg = RenameROI(_number, "analog", _roialt, _roinew);
|
erg = RenameROI(_number, "analog", _roialt, _roinew);
|
||||||
if (erg != "")
|
if (erg != "") {
|
||||||
firework.launch(erg, 'danger', 30000);
|
firework.launch(erg, 'danger', 30000);
|
||||||
else
|
}
|
||||||
|
else {
|
||||||
UpdateROIs(_roinew);
|
UpdateROIs(_roinew);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function numberChanged()
|
function numberChanged() {
|
||||||
{
|
|
||||||
aktindex = 0;
|
aktindex = 0;
|
||||||
UpdateROIs();
|
UpdateROIs();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
init();
|
init();
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -189,6 +189,10 @@
|
|||||||
<label for="lockSpaceEquidistant">Keep equidistance of <input type="number" name="space" id="space" step=1 onchange="valuemanualchangedspace()" tabindex=9> between all ROIs</label>
|
<label for="lockSpaceEquidistant">Keep equidistance of <input type="number" name="space" id="space" step=1 onchange="valuemanualchangedspace()" tabindex=9> between all ROIs</label>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td colspan="2"></td>
|
||||||
|
<td><input type="checkbox" id="showall" name="showall" value="1" onclick="draw()" checked tabindex=10><label for="showall">Show all ROIs</label></td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@@ -201,7 +205,7 @@
|
|||||||
</colgroup>
|
</colgroup>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="3" style="vertical-align: bottom;"><b>Reference Image:</b></td>
|
<td colspan="3" style="vertical-align: bottom;"><b>Reference Image:</b></td>
|
||||||
<td><input style="font-weight:bold;" class="button" type="submit" id="saveroi" name="saveroi" onclick="SaveToConfig()" value="Save Config" tabindex=10></td>
|
<td><input style="font-weight:bold;" class="button" type="submit" id="saveroi" name="saveroi" onclick="SaveToConfig()" value="Save Config" tabindex=11></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td colspan="4"><canvas id="canvas" crossorigin></canvas></td>
|
<td colspan="4"><canvas id="canvas" crossorigin></canvas></td>
|
||||||
@@ -247,12 +251,10 @@ function EnDisableDigits() {
|
|||||||
$("#div2").attr("disabled", "disabled").off('click');
|
$("#div2").attr("disabled", "disabled").off('click');
|
||||||
var x1=$("#div2").hasClass("disabledDiv");
|
var x1=$("#div2").hasClass("disabledDiv");
|
||||||
|
|
||||||
if (isEnabled)
|
if (isEnabled) {
|
||||||
{
|
|
||||||
$("#div2").removeClass("disabledDiv");
|
$("#div2").removeClass("disabledDiv");
|
||||||
}
|
}
|
||||||
else
|
else {
|
||||||
{
|
|
||||||
$("#div2").addClass("disabledDiv");
|
$("#div2").addClass("disabledDiv");
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -261,8 +263,7 @@ function EnDisableDigits() {
|
|||||||
cofcat["Digits"]["enabled"] = isEnabled;
|
cofcat["Digits"]["enabled"] = isEnabled;
|
||||||
document.getElementById("saveroi").disabled = false;
|
document.getElementById("saveroi").disabled = false;
|
||||||
|
|
||||||
if (isEnabled)
|
if (isEnabled) {
|
||||||
{
|
|
||||||
UpdateROIs();
|
UpdateROIs();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -271,6 +272,7 @@ function EnDisableDigits() {
|
|||||||
try {
|
try {
|
||||||
el.disabled = _target;
|
el.disabled = _target;
|
||||||
} catch (E) {}
|
} catch (E) {}
|
||||||
|
|
||||||
if (el.childNodes && el.childNodes.length > 0) {
|
if (el.childNodes && el.childNodes.length > 0) {
|
||||||
for (var x = 0; x < el.childNodes.length; x++) {
|
for (var x = 0; x < el.childNodes.length; x++) {
|
||||||
sah1(el.childNodes[x], _target);
|
sah1(el.childNodes[x], _target);
|
||||||
@@ -278,7 +280,6 @@ function EnDisableDigits() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function onNameChange() {
|
function onNameChange() {
|
||||||
ROIInfo[aktindex]["name"] = document.getElementById("name").value;
|
ROIInfo[aktindex]["name"] = document.getElementById("name").value;
|
||||||
UpdateROIs();
|
UpdateROIs();
|
||||||
@@ -290,6 +291,7 @@ function deleteROI(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
ROIInfo.splice(aktindex, 1);
|
ROIInfo.splice(aktindex, 1);
|
||||||
|
|
||||||
if (aktindex > ROIInfo.length - 1){
|
if (aktindex > ROIInfo.length - 1){
|
||||||
aktindex = ROIInfo.length - 1;
|
aktindex = ROIInfo.length - 1;
|
||||||
}
|
}
|
||||||
@@ -322,11 +324,13 @@ function newROI() {
|
|||||||
erg = CreateROI(_number, "digit", sel.selectedIndex, _roinew, parseInt(ROIInfo[sel.selectedIndex].x) + parseInt(ROIInfo[sel.selectedIndex].dx) + space,
|
erg = CreateROI(_number, "digit", sel.selectedIndex, _roinew, parseInt(ROIInfo[sel.selectedIndex].x) + parseInt(ROIInfo[sel.selectedIndex].dx) + space,
|
||||||
parseInt(ROIInfo[sel.selectedIndex].y), ROIInfo[aktindex]["dx"], ROIInfo[aktindex]["dy"], 0);
|
parseInt(ROIInfo[sel.selectedIndex].y), ROIInfo[aktindex]["dx"], ROIInfo[aktindex]["dy"], 0);
|
||||||
}
|
}
|
||||||
else
|
else {
|
||||||
erg = CreateROI(_number, "digit", sel.selectedIndex, _roinew, 15, 30, 30, 51, 0);
|
erg = CreateROI(_number, "digit", sel.selectedIndex, _roinew, 15, 30, 30, 51, 0);
|
||||||
|
}
|
||||||
|
|
||||||
if (erg != "")
|
if (erg != "") {
|
||||||
firework.launch(erg, 'danger', 30000);
|
firework.launch(erg, 'danger', 30000);
|
||||||
|
}
|
||||||
else {
|
else {
|
||||||
UpdateROIs(_roinew);
|
UpdateROIs(_roinew);
|
||||||
// Shift all ROIs on right side to the right
|
// Shift all ROIs on right side to the right
|
||||||
@@ -399,9 +403,7 @@ function SaveToConfig(){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function ShowMultiplier() {
|
||||||
function ShowMultiplier()
|
|
||||||
{
|
|
||||||
var decimalShift = 0;
|
var decimalShift = 0;
|
||||||
var multiplier;
|
var multiplier;
|
||||||
var multiplier_decshift;
|
var multiplier_decshift;
|
||||||
@@ -411,6 +413,7 @@ function ShowMultiplier()
|
|||||||
var sel = document.getElementById("Numbers_value1");
|
var sel = document.getElementById("Numbers_value1");
|
||||||
var _number= sel.options[sel.selectedIndex].text;
|
var _number= sel.options[sel.selectedIndex].text;
|
||||||
document.getElementById("decimalShift").value = 0;
|
document.getElementById("decimalShift").value = 0;
|
||||||
|
|
||||||
for (var i = 0; i < NumberInfo.length; ++i) {
|
for (var i = 0; i < NumberInfo.length; ++i) {
|
||||||
if (NumberInfo[i]["name"] == _number) {
|
if (NumberInfo[i]["name"] == _number) {
|
||||||
if (NumberInfo[i]["PostProcessing"]["DecimalShift"]["enabled"]) {
|
if (NumberInfo[i]["PostProcessing"]["DecimalShift"]["enabled"]) {
|
||||||
@@ -423,8 +426,9 @@ function ShowMultiplier()
|
|||||||
multiplier = ROIInfo.length - 1 - aktindex;
|
multiplier = ROIInfo.length - 1 - aktindex;
|
||||||
multiplier_decshift = fixedDecimals_decshift = multiplier + Number(decimalShift);
|
multiplier_decshift = fixedDecimals_decshift = multiplier + Number(decimalShift);
|
||||||
|
|
||||||
if (multiplier_decshift > 0)
|
if (multiplier_decshift > 0) {
|
||||||
fixedDecimals_decshift = 0;
|
fixedDecimals_decshift = 0;
|
||||||
|
}
|
||||||
|
|
||||||
if (fixedDecimals_decshift < 0) {
|
if (fixedDecimals_decshift < 0) {
|
||||||
fixedDecimals_decshift = -1*fixedDecimals_decshift;
|
fixedDecimals_decshift = -1*fixedDecimals_decshift;
|
||||||
@@ -434,7 +438,6 @@ function ShowMultiplier()
|
|||||||
document.getElementById("multiplier_decshift").value="x" + Number(10 ** multiplier_decshift).toFixed(fixedDecimals_decshift);
|
document.getElementById("multiplier_decshift").value="x" + Number(10 ** multiplier_decshift).toFixed(fixedDecimals_decshift);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function UpdateROIs(_sel){
|
function UpdateROIs(_sel){
|
||||||
document.getElementById("Category_Digits_enabled").checked = true;
|
document.getElementById("Category_Digits_enabled").checked = true;
|
||||||
var sel = document.getElementById("Numbers_value1");
|
var sel = document.getElementById("Numbers_value1");
|
||||||
@@ -443,8 +446,7 @@ function UpdateROIs(_sel){
|
|||||||
ROIInfo = getROIInfo("digit", _number);
|
ROIInfo = getROIInfo("digit", _number);
|
||||||
// _catzw = getConfigCategory();
|
// _catzw = getConfigCategory();
|
||||||
|
|
||||||
if (cofcat["Digits"]["enabled"] == false)
|
if (cofcat["Digits"]["enabled"] == false) {
|
||||||
{
|
|
||||||
document.getElementById("Category_Digits_enabled").checked = false;
|
document.getElementById("Category_Digits_enabled").checked = false;
|
||||||
EnDisableDigits();
|
EnDisableDigits();
|
||||||
firework.launch('Digit ROI processing is disabled. Activate with checkbox if needed', 'warning', 10000);
|
firework.launch('Digit ROI processing is disabled. Activate with checkbox if needed', 'warning', 10000);
|
||||||
@@ -465,14 +467,14 @@ function UpdateROIs(_sel){
|
|||||||
document.getElementById("refdy").disabled = true;
|
document.getElementById("refdy").disabled = true;
|
||||||
document.getElementById("lockSizes").disabled = true;
|
document.getElementById("lockSizes").disabled = true;
|
||||||
document.getElementById("lockAspectRatio").disabled = true;
|
document.getElementById("lockAspectRatio").disabled = true;
|
||||||
|
document.getElementById("showall").disabled = true;
|
||||||
document.getElementById("lockSpaceEquidistant").disabled = true;
|
document.getElementById("lockSpaceEquidistant").disabled = true;
|
||||||
document.getElementById("moveNext").disabled = true;
|
document.getElementById("moveNext").disabled = true;
|
||||||
document.getElementById("movePrevious").disabled = true;
|
document.getElementById("movePrevious").disabled = true;
|
||||||
document.getElementById("saveroi").disabled = false;
|
document.getElementById("saveroi").disabled = false;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
else
|
else {
|
||||||
{
|
|
||||||
document.getElementById("newROI").disabled = false;
|
document.getElementById("newROI").disabled = false;
|
||||||
document.getElementById("deleteROI").disabled = false;
|
document.getElementById("deleteROI").disabled = false;
|
||||||
document.getElementById("renameROI").disabled = false;
|
document.getElementById("renameROI").disabled = false;
|
||||||
@@ -484,6 +486,7 @@ function UpdateROIs(_sel){
|
|||||||
document.getElementById("refy").disabled = false;
|
document.getElementById("refy").disabled = false;
|
||||||
document.getElementById("refdy").disabled = false;
|
document.getElementById("refdy").disabled = false;
|
||||||
document.getElementById("lockSizes").disabled = false;
|
document.getElementById("lockSizes").disabled = false;
|
||||||
|
document.getElementById("showall").disabled = false;
|
||||||
document.getElementById("lockAspectRatio").disabled = false;
|
document.getElementById("lockAspectRatio").disabled = false;
|
||||||
document.getElementById("lockSpaceEquidistant").disabled = false;
|
document.getElementById("lockSpaceEquidistant").disabled = false;
|
||||||
document.getElementById("saveroi").disabled = false;
|
document.getElementById("saveroi").disabled = false;
|
||||||
@@ -494,21 +497,24 @@ function UpdateROIs(_sel){
|
|||||||
_index.remove(0);
|
_index.remove(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (aktindex > ROIInfo.length)
|
if (aktindex > ROIInfo.length) {
|
||||||
aktindex = ROIInfo.length-1;
|
aktindex = ROIInfo.length-1;
|
||||||
|
}
|
||||||
|
|
||||||
for (var i = 0; i < ROIInfo.length; ++i){
|
for (var i = 0; i < ROIInfo.length; ++i){
|
||||||
var option = document.createElement("option");
|
var option = document.createElement("option");
|
||||||
option.text = ROIInfo[i]["name"];
|
option.text = ROIInfo[i]["name"];
|
||||||
option.value = i;
|
option.value = i;
|
||||||
_index.add(option);
|
_index.add(option);
|
||||||
|
|
||||||
if (typeof _sel !== 'undefined') {
|
if (typeof _sel !== 'undefined') {
|
||||||
if (option.text == _sel)
|
if (option.text == _sel) {
|
||||||
aktindex = i;
|
aktindex = i;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
_index.selectedIndex = aktindex;
|
}
|
||||||
|
|
||||||
|
_index.selectedIndex = aktindex;
|
||||||
|
|
||||||
document.getElementById("movePrevious").disabled = false;
|
document.getElementById("movePrevious").disabled = false;
|
||||||
if (aktindex == 0){
|
if (aktindex == 0){
|
||||||
@@ -526,6 +532,7 @@ function UpdateROIs(_sel){
|
|||||||
document.getElementById("lockSizes").checked = lockSizes;
|
document.getElementById("lockSizes").checked = lockSizes;
|
||||||
document.getElementById("lockSpaceEquidistant").checked = lockSpaceEquidistant;
|
document.getElementById("lockSpaceEquidistant").checked = lockSpaceEquidistant;
|
||||||
document.getElementById("space").value = space;
|
document.getElementById("space").value = space;
|
||||||
|
|
||||||
if (!lockSpaceEquidistant) {
|
if (!lockSpaceEquidistant) {
|
||||||
document.getElementById("space").disabled = true;
|
document.getElementById("space").disabled = true;
|
||||||
}
|
}
|
||||||
@@ -558,8 +565,8 @@ function UpdateROIs(_sel){
|
|||||||
imageObj.src = dataURL;
|
imageObj.src = dataURL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getCoords(elem) {
|
||||||
function getCoords(elem) { // crossbrowser version
|
// crossbrowser version
|
||||||
var box = elem.getBoundingClientRect();
|
var box = elem.getBoundingClientRect();
|
||||||
var body = document.body;
|
var body = document.body;
|
||||||
var docEl = document.documentElement;
|
var docEl = document.documentElement;
|
||||||
@@ -572,16 +579,15 @@ function UpdateROIs(_sel){
|
|||||||
return { top: Math.round(top), left: Math.round(left) };
|
return { top: Math.round(top), left: Math.round(left) };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/* hash #description open the details part of the page */
|
/* hash #description open the details part of the page */
|
||||||
function openDescription() {
|
function openDescription() {
|
||||||
if(window.location.hash) {
|
if(window.location.hash) {
|
||||||
var hash = window.location.hash.substring(1); //Puts hash in variable, and removes the # character
|
var hash = window.location.hash.substring(1); //Puts hash in variable, and removes the # character
|
||||||
if(hash == 'description')
|
if(hash == 'description') {
|
||||||
document.getElementById("desc_details").open = true;
|
document.getElementById("desc_details").open = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function init() {
|
function init() {
|
||||||
openDescription();
|
openDescription();
|
||||||
@@ -596,7 +602,6 @@ function UpdateROIs(_sel){
|
|||||||
cofcat = getConfigCategory();
|
cofcat = getConfigCategory();
|
||||||
UpdateNUMBERS();
|
UpdateNUMBERS();
|
||||||
|
|
||||||
|
|
||||||
/* Check if the ROIs are equidistant. Only if not, untick the checkbox */
|
/* Check if the ROIs are equidistant. Only if not, untick the checkbox */
|
||||||
if (ROIInfo.length > 1) {
|
if (ROIInfo.length > 1) {
|
||||||
var distanceROI0_to_ROI1 = parseInt(ROIInfo[1].x) - (parseInt(ROIInfo[0].x) + parseInt(ROIInfo[0].dx)); // Distance between 1st and 2nd ROI
|
var distanceROI0_to_ROI1 = parseInt(ROIInfo[1].x) - (parseInt(ROIInfo[0].x) + parseInt(ROIInfo[0].dx)); // Distance between 1st and 2nd ROI
|
||||||
@@ -617,8 +622,10 @@ function UpdateROIs(_sel){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Check if the ROIs have same y, dy and dx. If so, tick the sync checkbox */
|
/* Check if the ROIs have same y, dy and dx. If so, tick the sync checkbox */
|
||||||
var all_y_dx_dy_Identical = true;
|
var all_y_dx_dy_Identical = true;
|
||||||
|
|
||||||
if (ROIInfo.length > 1) {
|
if (ROIInfo.length > 1) {
|
||||||
for (var i = 1; i < (ROIInfo.length); ++i) { // 2nd .. last ROI
|
for (var i = 1; i < (ROIInfo.length); ++i) { // 2nd .. last ROI
|
||||||
if (parseInt(ROIInfo[i].y) != parseInt(ROIInfo[0].y) ||
|
if (parseInt(ROIInfo[i].y) != parseInt(ROIInfo[0].y) ||
|
||||||
@@ -662,10 +669,10 @@ function UpdateROIs(_sel){
|
|||||||
|
|
||||||
function UpdateNUMBERS(_sel) {
|
function UpdateNUMBERS(_sel) {
|
||||||
zw = getNUMBERInfo();
|
zw = getNUMBERInfo();
|
||||||
|
|
||||||
index = 0;
|
index = 0;
|
||||||
|
|
||||||
var _index = document.getElementById("Numbers_value1");
|
var _index = document.getElementById("Numbers_value1");
|
||||||
|
|
||||||
while (_index.length){
|
while (_index.length){
|
||||||
_index.remove(0);
|
_index.remove(0);
|
||||||
}
|
}
|
||||||
@@ -677,12 +684,13 @@ function UpdateNUMBERS(_sel){
|
|||||||
_index.add(option);
|
_index.add(option);
|
||||||
|
|
||||||
if (typeof _sel !== 'undefined') {
|
if (typeof _sel !== 'undefined') {
|
||||||
if (zw[i]["name"] == _sel)
|
if (zw[i]["name"] == _sel) {
|
||||||
index = i
|
index = i;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
_index.selectedIndex = index;
|
|
||||||
|
|
||||||
|
_index.selectedIndex = index;
|
||||||
UpdateROIs();
|
UpdateROIs();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -690,16 +698,19 @@ function renameNumber(){
|
|||||||
var sel = document.getElementById("Numbers_value1");
|
var sel = document.getElementById("Numbers_value1");
|
||||||
var _delete= sel.options[sel.selectedIndex].text;
|
var _delete= sel.options[sel.selectedIndex].text;
|
||||||
var _numbernew = prompt("Please enter a new name for the selected number sequence", _delete);
|
var _numbernew = prompt("Please enter a new name for the selected number sequence", _delete);
|
||||||
|
|
||||||
if (_numbernew === null) {
|
if (_numbernew === null) {
|
||||||
return; //break out of the function early because prompt was aborted
|
return; //break out of the function early because prompt was aborted
|
||||||
}
|
}
|
||||||
|
|
||||||
erg = RenameNUMBER(_delete, _numbernew);
|
erg = RenameNUMBER(_delete, _numbernew);
|
||||||
if (erg != "")
|
if (erg != "") {
|
||||||
firework.launch(erg, 'danger', 30000);
|
firework.launch(erg, 'danger', 30000);
|
||||||
else
|
}
|
||||||
|
else {
|
||||||
UpdateNUMBERS(_numbernew);
|
UpdateNUMBERS(_numbernew);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function newNumber() {
|
function newNumber() {
|
||||||
var _numbernew = prompt("Please enter a name for the new number sequence", "name");
|
var _numbernew = prompt("Please enter a name for the new number sequence", "name");
|
||||||
@@ -708,28 +719,28 @@ function newNumber(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
erg = CreateNUMBER(_numbernew);
|
erg = CreateNUMBER(_numbernew);
|
||||||
if (erg != "")
|
if (erg != "") {
|
||||||
firework.launch(erg, 'danger', 30000);
|
firework.launch(erg, 'danger', 30000);
|
||||||
else
|
}
|
||||||
|
else {
|
||||||
UpdateNUMBERS(_numbernew);
|
UpdateNUMBERS(_numbernew);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function removeNumber() {
|
function removeNumber() {
|
||||||
if (confirm("The entire number sequence will be removed (digit + analog parts). " +
|
if (confirm("The entire number sequence will be removed (digit + analog parts). " +
|
||||||
"To remove single ROI of the number sequence, use \"Delete ROI\" instead.\n" +
|
"To remove single ROI of the number sequence, use \"Delete ROI\" instead.\n" +
|
||||||
"Do you really want to proceed?"))
|
"Do you really want to proceed?")) {
|
||||||
{
|
|
||||||
var sel = document.getElementById("Numbers_value1");
|
var sel = document.getElementById("Numbers_value1");
|
||||||
var _delete= sel.options[sel.selectedIndex].text;
|
var _delete= sel.options[sel.selectedIndex].text;
|
||||||
erg = DeleteNUMBER(_delete);
|
erg = DeleteNUMBER(_delete);
|
||||||
if (erg != "")
|
if (erg != "") {
|
||||||
firework.launch(erg, 'danger', 30000);
|
firework.launch(erg, 'danger', 30000);
|
||||||
|
}
|
||||||
UpdateNUMBERS();
|
UpdateNUMBERS();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function drawTextBG(context, txt, x, y, padding) {
|
function drawTextBG(context, txt, x, y, padding) {
|
||||||
context.font = "15px Arial";
|
context.font = "15px Arial";
|
||||||
context.textAlign = "center";
|
context.textAlign = "center";
|
||||||
@@ -742,7 +753,6 @@ function drawTextBG(context, txt, x, y, padding) {
|
|||||||
context.fillText(txt, x + padding / 2, y + padding / 2);
|
context.fillText(txt, x + padding / 2, y + padding / 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
function draw() {
|
function draw() {
|
||||||
if (typeof ROIInfo === 'undefined') { // During init, ROIInfo is not defined yet
|
if (typeof ROIInfo === 'undefined') { // During init, ROIInfo is not defined yet
|
||||||
return;
|
return;
|
||||||
@@ -756,17 +766,14 @@ function draw() {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (document.getElementById("Category_Digits_enabled").checked)
|
if (document.getElementById("Category_Digits_enabled").checked) {
|
||||||
{
|
|
||||||
var sel = document.getElementById("index");
|
var sel = document.getElementById("index");
|
||||||
var _number = sel.selectedIndex;
|
var _number = sel.selectedIndex;
|
||||||
|
|
||||||
if (lockSizes) {
|
if (lockSizes) {
|
||||||
// Synchronize Y, dx and dy
|
// Synchronize Y, dx and dy
|
||||||
for (var _nb = 0; _nb < ROIInfo.length; _nb++)
|
for (var _nb = 0; _nb < ROIInfo.length; _nb++) {
|
||||||
{
|
if (_nb != _number) {
|
||||||
if (_nb != _number)
|
|
||||||
{
|
|
||||||
ROIInfo[_nb].y = rect.startY;
|
ROIInfo[_nb].y = rect.startY;
|
||||||
ROIInfo[_nb].dy = rect.h;
|
ROIInfo[_nb].dy = rect.h;
|
||||||
ROIInfo[_nb].dx = rect.w;
|
ROIInfo[_nb].dx = rect.w;
|
||||||
@@ -774,10 +781,9 @@ function draw() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (var _nb = 0; _nb < ROIInfo.length; _nb++)
|
if (document.getElementById("showall").checked) {
|
||||||
{
|
for (var _nb = 0; _nb < ROIInfo.length; _nb++) {
|
||||||
if (_nb != _number)
|
if (_nb != _number) {
|
||||||
{
|
|
||||||
lw = 2;
|
lw = 2;
|
||||||
context.lineWidth = lw;
|
context.lineWidth = lw;
|
||||||
context.strokeStyle = "#990000";
|
context.strokeStyle = "#990000";
|
||||||
@@ -801,6 +807,7 @@ function draw() {
|
|||||||
context.strokeRect(x0+dx*0.2, y0+dy*0.2, dx*0.6, dy*0.6);
|
context.strokeRect(x0+dx*0.2, y0+dy*0.2, dx*0.6, dy*0.6);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
lw = 4
|
lw = 4
|
||||||
context.lineWidth = lw;
|
context.lineWidth = lw;
|
||||||
@@ -814,7 +821,6 @@ function draw() {
|
|||||||
context.lineWidth = 1;
|
context.lineWidth = 1;
|
||||||
context.strokeRect(x0+dx*0.2, y0+dy*0.2, dx*0.6, dy*0.6);
|
context.strokeRect(x0+dx*0.2, y0+dy*0.2, dx*0.6, dy*0.6);
|
||||||
|
|
||||||
|
|
||||||
context.lineWidth = 2;
|
context.lineWidth = 2;
|
||||||
context.beginPath();
|
context.beginPath();
|
||||||
context.moveTo(x0, y0+dy/2);
|
context.moveTo(x0, y0+dy/2);
|
||||||
@@ -864,7 +870,8 @@ function draw() {
|
|||||||
|
|
||||||
if (lockAspectRatio) {
|
if (lockAspectRatio) {
|
||||||
rect.h = (e.pageY - zw.top) - rect.startY;
|
rect.h = (e.pageY - zw.top) - rect.startY;
|
||||||
rect.w = Math.round(rect.h * ROIInfo[aktindex]["ar"]); }
|
rect.w = Math.round(rect.h * ROIInfo[aktindex]["ar"]);
|
||||||
|
}
|
||||||
else {
|
else {
|
||||||
rect.w = (e.pageX - zw.left) - rect.startX;
|
rect.w = (e.pageX - zw.left) - rect.startX;
|
||||||
rect.h = (e.pageY - zw.top) - rect.startY;
|
rect.h = (e.pageY - zw.top) - rect.startY;
|
||||||
@@ -990,22 +997,21 @@ function draw() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
erg = RenameROI(_number, "digit", _roialt, _roinew);
|
erg = RenameROI(_number, "digit", _roialt, _roinew);
|
||||||
if (erg != "")
|
if (erg != "") {
|
||||||
firework.launch(erg, 'danger', 30000);
|
firework.launch(erg, 'danger', 30000);
|
||||||
else
|
}
|
||||||
|
else {
|
||||||
UpdateROIs(_roinew);
|
UpdateROIs(_roinew);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function numberChanged()
|
function numberChanged() {
|
||||||
{
|
|
||||||
aktindex = 0;
|
aktindex = 0;
|
||||||
UpdateROIs();
|
UpdateROIs();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
init();
|
init();
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
Reference in New Issue
Block a user