|
|
|
@ -20,6 +20,7 @@ function toggleButtons(enable) {
|
|
|
|
document.getElementById('rangeQueryButton').disabled = !enable;
|
|
|
|
document.getElementById('rangeQueryButton').disabled = !enable;
|
|
|
|
document.getElementById('knnQueryButton').disabled = !enable;
|
|
|
|
document.getElementById('knnQueryButton').disabled = !enable;
|
|
|
|
document.getElementById('insertButton').disabled = !enable;
|
|
|
|
document.getElementById('insertButton').disabled = !enable;
|
|
|
|
|
|
|
|
document.getElementById('removeButton').disabled = !enable;
|
|
|
|
document.getElementById('saveTreeButton').disabled = !enable;
|
|
|
|
document.getElementById('saveTreeButton').disabled = !enable;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@ -208,6 +209,23 @@ async function loadTree() {
|
|
|
|
reader.readAsText(file);
|
|
|
|
reader.readAsText(file);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
|
|
|
* Removes the point with the given coordinates from the MTree.
|
|
|
|
|
|
|
|
* After removing the point, updates the status element with a success or failure message.
|
|
|
|
|
|
|
|
*/
|
|
|
|
|
|
|
|
async function removePoint() {
|
|
|
|
|
|
|
|
const pointString = document.getElementById('point').value;
|
|
|
|
|
|
|
|
const point = JSON.parse(pointString);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const response = await fetch('/remove', {
|
|
|
|
|
|
|
|
method: 'POST',
|
|
|
|
|
|
|
|
headers: { 'Content-Type': 'application/json' },
|
|
|
|
|
|
|
|
body: JSON.stringify({ point })
|
|
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
setStatus(response.ok);
|
|
|
|
|
|
|
|
document.getElementById('status').innerText = response.ok ? 'Point removed' : `Error: ${await response.text()}`;
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
/**
|
|
|
|
* Sets the status element to display a success or failure message.
|
|
|
|
* Sets the status element to display a success or failure message.
|
|
|
|
* @param {boolean} success - Whether the operation was successful.
|
|
|
|
* @param {boolean} success - Whether the operation was successful.
|
|
|
|
@ -223,6 +241,7 @@ document.addEventListener('DOMContentLoaded', () => {
|
|
|
|
document.getElementById('rangeQueryButton').addEventListener('click', performRangeQuery);
|
|
|
|
document.getElementById('rangeQueryButton').addEventListener('click', performRangeQuery);
|
|
|
|
document.getElementById('knnQueryButton').addEventListener('click', performKNNQuery);
|
|
|
|
document.getElementById('knnQueryButton').addEventListener('click', performKNNQuery);
|
|
|
|
document.getElementById('insertButton').addEventListener('click', insertPoint);
|
|
|
|
document.getElementById('insertButton').addEventListener('click', insertPoint);
|
|
|
|
|
|
|
|
document.getElementById('removeButton').addEventListener('click', removePoint);
|
|
|
|
document.getElementById('recreateTreeButton').addEventListener('click', recreateTree);
|
|
|
|
document.getElementById('recreateTreeButton').addEventListener('click', recreateTree);
|
|
|
|
|
|
|
|
|
|
|
|
document.getElementById('saveTreeButton').addEventListener('click', saveTree);
|
|
|
|
document.getElementById('saveTreeButton').addEventListener('click', saveTree);
|
|
|
|
@ -243,3 +262,4 @@ document.addEventListener('DOMContentLoaded', () => {
|
|
|
|
});
|
|
|
|
});
|
|
|
|
});
|
|
|
|
});
|
|
|
|
});
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
|