PageSourceSearch

https://www.taxicode.com/js/taxicode-main/coverageMap.js?update=0580116a

js taxicode.com collected 2026-09-24 19:01:06 UTC 2,549 bytes, 99 lines download raw bytes

1function mergePolygons(polygons) {
2	var solution_polygons = new ClipperLib.Paths();
3	var subj_polygons = new ClipperLib.Paths();
4	var cpr = new ClipperLib.Clipper();
5	for (var j = 0; j < polygons.length; j++) {
6		subj_polygons.push(createarray_clipper_polygon(polygons[j]));
7	}
8	cpr.AddPaths(subj_polygons, ClipperLib.PolyType.ptSubject, true);
9	var succeeded = cpr.Execute(ClipperLib.ClipType.ctUnion, solution_polygons);
10	return solution_polygons;
11}
12
13function createarray_clipper_polygon(array) {
14	var subj_polygon = new ClipperLib.Path();
15	for (var i = 0; i < array.length; i++) {
16		var latx = array[i].lat();
17		var lngx = array[i].lng();
18		subj_polygon.push(new ClipperLib.FPoint(latx, lngx));
19	}
20	return subj_polygon;
21}
22
23$(document).ready(function() {
24	google.maps.event.addDomListener(window, 'load', function() {
25
26		var zoom = 5;
27
28		var mapOptions = {
29			zoom: zoom,
30			center: new google.maps.LatLng(54.5, -3),
31			mapTypeId: google.maps.MapTypeId.ROADMAP,
32			zoomControl: false,
33			scrollwheel: false
34		};
35
36		var map = new google.maps.Map($("#coverage_map")[0], mapOptions);
37
38		(function resizeMap() {
39			if (map.getZoom() != zoom) {
40				map.setZoom(zoom);
41			}
42			setTimeout(resizeMap, 250);
43		})();
44		
45		for (var i = 0; i < areas.length; i++) {
46			areas[i] = new google.maps.LatLng(areas[i].lat, areas[i].lng);
47		}
48
49		var pointArray = new google.maps.MVCArray(areas);
50		var heatmap = new google.maps.visualization.HeatmapLayer({
51			data: pointArray
52		});
53		heatmap.setMap(map);
54		heatmap.set('opacity', 0.6);
55
56		// Add areas
57		/*for (var i = 0; i < areas.length; i++) {
58
59			center = new google.maps.LatLng(areas[i].lat, areas[i].lng);
60
61			var circle_options = {paths: []};
62
63			var segments = 36;
64			var radius = 0.5;
65			for (var s = 0; s < segments; s++) {
66				var radians = s * Math.PI * 2 / segments;
67				circle_options.paths.push(new google.maps.LatLng(
68					center.lat() + radius * Math.sin(radians),
69					center.lng() + radius * Math.cos(radians)
70				));
71			}
72
73			var circle = new google.maps.Polygon(circle_options);
74
75			circles.push(circle.getPath().getArray());
76
77		}
78
79		var merged = mergePolygons(circles);
80
81		for (var i = 0; i < merged.length; i++) {
82			var polygon = [];
83			for (var j = 0; j < merged[i].length; j++) {
84				polygon.push(new google.maps.LatLng(merged[i][j].X, merged[i][j].Y));
85			}
86			polygon2 = new google.maps.Polygon({
87				paths: polygon,
88				strokeColor: "#FF0000",
89				strokeOpacity: 0.8,
90				strokeWeight: 0,
91				fillColor: "#FF0000",
92				fillOpacity: 0.35
93			});
94			polygon2.setMap(map);
95		}*/
96		
97
98	});
99});

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.