diff --git a/sd-card/html/edit_analog.html b/sd-card/html/edit_analog.html
index 0d8eed40..d9bd3577 100644
--- a/sd-card/html/edit_analog.html
+++ b/sd-card/html/edit_analog.html
@@ -107,7 +107,7 @@ th, td {
- |
+ |
@@ -115,20 +115,24 @@ th, td {
|
| x: |
- dx: |
- |
+ Δx: |
+ |
| y: |
- dy: |
- |
+ Δy: |
+ |
+
+ |
+ |
+
- |
+ |
|
@@ -150,6 +154,7 @@ th, td {
ROIInfo,
enhanceCon = false;
lockAR = true;
+ lockSizes = true;
basepath = "http://192.168.178.26";
function doReboot() {
@@ -247,6 +252,10 @@ function changelockAR(){
lockAR = document.getElementById("lockAR").checked;
}
+function changelockSizes(){
+ lockSizes = document.getElementById("lockSizes").checked;
+}
+
function changeCCW(){
var sel = document.getElementById("Numbers_value1");
var _number = sel.options[sel.selectedIndex].text;
@@ -342,6 +351,7 @@ function UpdateROIs(_sel){
}
document.getElementById("lockAR").checked = lockAR;
+ document.getElementById("lockSizes").checked = lockSizes;
document.getElementById("refx").value = ROIInfo[aktindex]["x"];
document.getElementById("refy").value = ROIInfo[aktindex]["y"];
@@ -480,6 +490,19 @@ function removeNumber(){
{
var sel = document.getElementById("index");
var _number = sel.selectedIndex;
+
+ if (lockSizes) {
+ // Synchronize dx and dy
+ for (var _nb = 0; _nb < ROIInfo.length; _nb++)
+ {
+ if (_nb != _number)
+ {
+ ROIInfo[_nb].dy = rect.h;
+ ROIInfo[_nb].dx = rect.w;
+ }
+ }
+ }
+
for (var _nb = 0; _nb < ROIInfo.length; _nb++)
{
if (_nb != _number)
diff --git a/sd-card/html/edit_digits.html b/sd-card/html/edit_digits.html
index c0685acb..7484fd64 100644
--- a/sd-card/html/edit_digits.html
+++ b/sd-card/html/edit_digits.html
@@ -105,20 +105,26 @@ th, td {
| x: |
- dx: |
- |
+ Δx: |
+ |
| y: |
- dy: |
-
+ Δy: |
+ |
+
+
+ |
+
+ |
+
- |
+ |
|
@@ -141,7 +147,8 @@ th, td {
ROIInfo,
enhanceCon = false;
lockAR = true;
- basepath = "http://192.168.178.26";
+ lockSizes = true;
+ basepath = "http://192.168.1.151";
function doReboot() {
if (confirm("Are you sure you want to reboot? Did you save the config?")) {
@@ -239,6 +246,14 @@ function changelockAR(){
lockAR = document.getElementById("lockAR").checked;
}
+function changelockSizes(){
+ lockSizes = document.getElementById("lockSizes").checked;
+
+ if (!lockSizes) {
+ alert("For best results it is (in most cases) advised to keep the y, Δx and Δy identical!");
+ }
+}
+
function ChangeSelection(){
aktindex = parseInt(document.getElementById("index").value);
// lockAR = true;
@@ -322,6 +337,7 @@ function UpdateROIs(_sel){
}
document.getElementById("lockAR").checked = lockAR;
+ document.getElementById("lockSizes").checked = lockSizes;
document.getElementById("refx").value = ROIInfo[aktindex]["x"];
document.getElementById("refy").value = ROIInfo[aktindex]["y"];
@@ -455,6 +471,20 @@ function draw() {
{
var sel = document.getElementById("index");
var _number = sel.selectedIndex;
+
+ if (lockSizes) {
+ // Synchronize Y, dx and dy
+ for (var _nb = 0; _nb < ROIInfo.length; _nb++)
+ {
+ if (_nb != _number)
+ {
+ ROIInfo[_nb].y = rect.startY;
+ ROIInfo[_nb].dy = rect.h;
+ ROIInfo[_nb].dx = rect.w;
+ }
+ }
+ }
+
for (var _nb = 0; _nb < ROIInfo.length; _nb++)
{
if (_nb != _number)
@@ -492,6 +522,7 @@ function draw() {
ROIInfo[aktindex]["y"] = rect.startY;
ROIInfo[aktindex]["dx"] = rect.w;
ROIInfo[aktindex]["dy"] = rect.h;
+
}
}
@@ -573,6 +604,7 @@ function draw() {
if (!drag) {
rect.w = document.getElementById("refdx").value;
rect.h = document.getElementById("refdy").value;
+
if (lockAR) {
rect.w = Math.round(rect.h * ROIInfo[aktindex]["ar"]);
document.getElementById("refdx").value = rect.w;
@@ -588,6 +620,7 @@ function draw() {
if (!drag) {
rect.w = document.getElementById("refdx").value;
rect.h = document.getElementById("refdy").value;
+
if (lockAR) {
rect.h = Math.round(rect.w / ROIInfo[aktindex]["ar"]);
document.getElementById("refdy").value = rect.h;
@@ -599,6 +632,39 @@ function draw() {
}
}
+ // Make all X spaces equidistant
+ function makeX_SpaceEquidistant() {
+ if (ROIInfo.length == 1) { // Only one number
+ return;
+ }
+
+ var sel = document.getElementById("index");
+ var _number = sel.selectedIndex;
+ var space;
+
+ if (_number == 0) { // First number, use space to next one as reference
+ space = ROIInfo[1].x - parseInt(ROIInfo[0].x) - parseInt(ROIInfo[0].dx);
+
+ for (var _nb = 1; _nb < ROIInfo.length; _nb++) {
+ ROIInfo[_nb].x = parseInt(ROIInfo[_nb-1].x) + parseInt(ROIInfo[_nb-1].dx) + space;
+ }
+ }
+ else { // In between, use space to previous one as reference
+ space = ROIInfo[_number].x - ROIInfo[_number-1].x - ROIInfo[_number-1].dx;
+
+
+ for (var _nb = _number - 1; _nb >= 0 ; _nb--) { // left side
+ ROIInfo[_nb].x = parseInt(ROIInfo[_nb+1].x) - parseInt(ROIInfo[_nb].dx) - space;
+ }
+
+ for (var _nb = _number + 1; _nb < ROIInfo.length; _nb++) { // right side
+ ROIInfo[_nb].x = parseInt(ROIInfo[_nb-1].x) + parseInt(ROIInfo[_nb-1].dx) + space;
+ }
+ }
+
+ draw();
+ }
+
function renameROI(){
var sel = document.getElementById("Numbers_value1");
var _number= sel.options[sel.selectedIndex].text;