// import Turf from "turf"; let turf = require("turf"); module.exports = { gpsToMeters: function (lat1, lon1, lat2, lon2){ // generally used geo measurement function var R = 6378.137; // Radius of earth in KM var dLat = lat2 * Math.PI / 180 - lat1 * Math.PI / 180; var dLon = lon2 * Math.PI / 180 - lon1 * Math.PI / 180; var a = Math.sin(dLat/2) * Math.sin(dLat/2) + Math.cos(lat1 * Math.PI / 180) * Math.cos(lat2 * Math.PI / 180) * Math.sin(dLon/2) * Math.sin(dLon/2); var c = 2 * Math.atan2(Math.sqrt(a), Math.sqrt(1-a)); var d = R * c; return d * 1000; // meters }, calculateArea: function (points) { var polygon = turf.polygon([points.map((point) => { return [point.lng, point.lat]; })]); var area = turf.area(polygon); console.log(area); return area; // var poly1 = turf.polygon([[ // [-82.574787, 35.594087], // [-82.574787, 35.615581], // [-82.545261, 35.615581], // [-82.545261, 35.594087], // [-82.574787, 35.594087] // ]], {"fill": "#0f0"}); // var poly2 = turf.polygon([[ // [-82.560024, 35.585153], // [-82.560024, 35.602602], // [-82.52964, 35.602602], // [-82.52964, 35.585153], // [-82.560024, 35.585153] // ]], {"fill": "#00f"}); // var union = turf.union(poly1, poly2); // console.log(union.geometry.coordinates); // var poly1 = turf.polygon([[ // [-122.801742, 45.48565], // [-122.801742, 45.60491], // [-122.584762, 45.60491], // [-122.584762, 45.48565], // [-122.801742, 45.48565] // ]]); // var poly2 = turf.polygon([[ // [-122.520217, 45.535693], // [-122.64038, 45.553967], // [-122.720031, 45.526554], // [-122.669906, 45.507309], // [-122.723464, 45.446643], // [-122.532577, 45.408574], // [-122.487258, 45.477466], // [-122.520217, 45.535693] // ]]); // var intersection = turf.intersect(poly1, poly2); // console.log(intersection);//null if no intersect } }