-
Notifications
You must be signed in to change notification settings - Fork 0
/
flight_mapping.js
58 lines (51 loc) · 2.37 KB
/
flight_mapping.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
import astar from './js/a_star';
import drawAirports from './js/draw_airports';
import drawPathGenerations from './js/draw_paths';
import pathGenerator from './js/generate_paths';
import all_airports from './js/us_airports';
import chooseSrcDest from './js/choose_src_dest';
import exhaustiveDemo from './js/exhaustive_search_demo';
import bfsPathGenerator from './js/generate_bfs_paths';
window.eventListeners = {};
document.addEventListener("DOMContentLoaded", function(){
let canvas = document.getElementById('canvas');
canvas.width = 940;
canvas.height = 580;
let ctx = canvas.getContext('2d');
var image = new Image();
image.src = "map/map.png";
image.onload = function() {
ctx.drawImage(image, -16, -60);
drawAirports(ctx);
};
// ctx.drawImage(document.getElementById('source'), -16, -60);
let toggleButtons = (setter) => {
if (setter === "disable") {
document.getElementById("srcAndDest").innerHTML = "Drawing Flight Paths";
document.getElementById("srcAndDest").setAttribute("disabled", "true");
document.getElementById("exhaustive").innerHTML = "Drawing Flight Paths";
document.getElementById("exhaustive").setAttribute("disabled", "true");
} else if (setter === "enable") {
document.getElementById("srcAndDest").innerHTML = "Clear and fly again!";
document.getElementById("srcAndDest").removeAttribute("disabled");
document.getElementById("exhaustive").innerHTML = "Exhaustive Search Demo";
document.getElementById("exhaustive").removeAttribute("disabled");
}
};
document.getElementById("srcAndDest").addEventListener("click", () => {
chooseSrcDest(canvas, ctx, all_airports, toggleButtons);
});
document.getElementById("exhaustive").addEventListener("click", () => {
exhaustiveDemo(canvas, ctx, all_airports, toggleButtons);
});
document.getElementById("explanation").addEventListener("click", () => {
document.getElementById("modal").className = "modal";
document.getElementById("modal-text-container").className = "modal-text-container";
});
document.getElementById("modal").addEventListener("click", (e) => {
if (e.target.id === "modal") {
document.getElementById("modal").className = "modal-hidden";
document.getElementById("modal-text-container").className = "modal-hidden";
}
});
});