leaflet-semicircle
Version:
Draw semicircles on Leaflet maps
70 lines (61 loc) • 1.98 kB
HTML
<html>
<head>
<title>Leaflet Semicircle example</title>
<style>
html {
height: 100%;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
vertical-align: baseline;
}
body { height: 100%; margin: 0; padding: 0;}
#map {
width: 100%; height: 100%;
}
</style>
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.1.0/dist/leaflet.css" />
<script src="https://unpkg.com/leaflet@1.1.0/dist/leaflet.js"></script>
<script src="../Semicircle.js"></script>
</head>
<body>
<div id="map"></div>
<script>
// investigating precision,
// https://github.com/jieter/Leaflet-semicircle/issues/4
var latlng = [52, 4];
var map = L.map('map').setView(latlng, 16);
function concentric (latlng, radius) {
// red, should be a complete circle
L.semiCircle(latlng, {
radius: radius,
fillColor: 'red',
weight: 0,
fillOpacity: 0.8
}).addTo(map);
L.semiCircle(latlng, {
radius: radius,
startAngle : 90,
stopAngle : 250,
fillColor: 'white',
weight: 0,
fillOpacity: .8
}).addTo(map);
L.semiCircle(latlng, {
radius: radius,
startAngle : -45,
stopAngle : 45,
fillColor: 'white',
weight: 0,
fillOpacity: .8
}).addTo(map);
}
concentric([52, 3.99], 500);
concentric([52, 4.003], 300);
concentric([52.005, 4.01], 200);
concentric([51.995, 4.01], 100);
concentric([52, 4.01], 50);
</script>
</body>
</html>