Вы можете сделать это так:
function getPentagonPoints(latlng, distance) {
var pentagonLatLng = [];
for (let i = 0; i < 5; i++) {
// Pi * 2 is 360 degrees, in radians
// We add 270 degrees (Pi * 1.5 radians) to start at the top
const angle = Math.PI * 2 / 5 * i + Math.PI * 1.5; // in radians
const lng = distance * Math.cos(angle) + latlng.lng;
const lat = distance * Math.sin(angle) + latlng.lat;
pentagonLatLng.push({lat, lng});
}
return pentagonLatLng;
}
// Just for the demo
const canvas = document.querySelector('canvas');
const ctx = canvas.getContext('2d');
const latLng = { lat: 90, lng: 200 };
const points = getPentagonPoints(latLng, 50);
points.forEach((point, i) => {
if (i === 0) { ctx.moveTo(point.lng, point.lat); }
ctx.lineTo(point.lng, point.lat);
if (i === points.length - 1) { ctx.lineTo(points[0].lng, points[0].lat); }
});
ctx.stroke();
<canvas width="400" height="160"></canvas>