node-red-contrib-tak-registration
Version:
A Node-RED node to register to TAK and to help wrap files as datapackages to send to TAK
1 lines • 4.3 kB
Source Map (JSON)
{"version":3,"sources":["/home/runner/work/turf/turf/packages/turf-rhumb-bearing/dist/cjs/index.cjs","../../index.ts"],"names":[],"mappings":"AAAA;ACCA,wCAA0D;AAC1D,4CAAyB;AAuBzB,SAAS,YAAA,CACP,KAAA,EACA,GAAA,EACA,QAAA,EAA+B,CAAC,CAAA,EACxB;AACR,EAAA,IAAI,OAAA;AACJ,EAAA,GAAA,CAAI,OAAA,CAAQ,KAAA,EAAO;AACjB,IAAA,QAAA,EAAU,qBAAA,CAAsB,iCAAA,GAAY,CAAA,EAAG,iCAAA,KAAc,CAAC,CAAA;AAAA,EAChE,EAAA,KAAO;AACL,IAAA,QAAA,EAAU,qBAAA,CAAsB,iCAAA,KAAc,CAAA,EAAG,iCAAA,GAAY,CAAC,CAAA;AAAA,EAChE;AAEA,EAAA,MAAM,QAAA,EAAU,QAAA,EAAU,IAAA,EAAM,CAAA,CAAE,IAAA,EAAM,OAAA,EAAA,EAAW,OAAA;AAEnD,EAAA,OAAO,OAAA;AACT;AAeA,SAAS,qBAAA,CAAsB,IAAA,EAAgB,EAAA,EAAc;AAK3D,EAAA,MAAM,KAAA,EAAO,uCAAA,IAAiB,CAAK,CAAC,CAAC,CAAA;AACrC,EAAA,MAAM,KAAA,EAAO,uCAAA,EAAiB,CAAG,CAAC,CAAC,CAAA;AACnC,EAAA,IAAI,YAAA,EAAc,uCAAA,EAAiB,CAAG,CAAC,EAAA,EAAI,IAAA,CAAK,CAAC,CAAC,CAAA;AAElD,EAAA,GAAA,CAAI,YAAA,EAAc,IAAA,CAAK,EAAA,EAAI;AACzB,IAAA,YAAA,GAAe,EAAA,EAAI,IAAA,CAAK,EAAA;AAAA,EAC1B;AACA,EAAA,GAAA,CAAI,YAAA,EAAc,CAAC,IAAA,CAAK,EAAA,EAAI;AAC1B,IAAA,YAAA,GAAe,EAAA,EAAI,IAAA,CAAK,EAAA;AAAA,EAC1B;AAEA,EAAA,MAAM,SAAA,EAAW,IAAA,CAAK,GAAA;AAAA,IACpB,IAAA,CAAK,GAAA,CAAI,KAAA,EAAO,EAAA,EAAI,IAAA,CAAK,GAAA,EAAK,CAAC,EAAA,EAAI,IAAA,CAAK,GAAA,CAAI,KAAA,EAAO,EAAA,EAAI,IAAA,CAAK,GAAA,EAAK,CAAC;AAAA,EACpE,CAAA;AAEA,EAAA,MAAM,MAAA,EAAQ,IAAA,CAAK,KAAA,CAAM,WAAA,EAAa,QAAQ,CAAA;AAE9C,EAAA,OAAA,CAAQ,uCAAA,KAAsB,EAAA,EAAI,GAAA,EAAA,EAAO,GAAA;AAC3C;AAGA,IAAO,2BAAA,EAAQ,YAAA;ADnDf;AACE;AACA;AACF,kFAAC","file":"/home/runner/work/turf/turf/packages/turf-rhumb-bearing/dist/cjs/index.cjs","sourcesContent":[null,"// https://en.wikipedia.org/wiki/Rhumb_line\nimport { Coord, degreesToRadians, radiansToDegrees } from \"@turf/helpers\";\nimport { getCoord } from \"@turf/invariant\";\n\n/**\n * Takes two {@link Point|points} and finds the bearing angle between them along a Rhumb line\n * i.e. the angle measured in degrees start the north line (0 degrees)\n *\n * @function\n * @param {Coord} start starting Point\n * @param {Coord} end ending Point\n * @param {Object} [options] Optional parameters\n * @param {boolean} [options.final=false] calculates the final bearing if true\n * @returns {number} bearing from north in decimal degrees, between -180 and 180 degrees (positive clockwise)\n * @example\n * var point1 = turf.point([-75.343, 39.984], {\"marker-color\": \"#F00\"});\n * var point2 = turf.point([-75.534, 39.123], {\"marker-color\": \"#00F\"});\n *\n * var bearing = turf.rhumbBearing(point1, point2);\n *\n * //addToMap\n * var addToMap = [point1, point2];\n * point1.properties.bearing = bearing;\n * point2.properties.bearing = bearing;\n */\nfunction rhumbBearing(\n start: Coord,\n end: Coord,\n options: { final?: boolean } = {}\n): number {\n let bear360;\n if (options.final) {\n bear360 = calculateRhumbBearing(getCoord(end), getCoord(start));\n } else {\n bear360 = calculateRhumbBearing(getCoord(start), getCoord(end));\n }\n\n const bear180 = bear360 > 180 ? -(360 - bear360) : bear360;\n\n return bear180;\n}\n\n/**\n * Returns the bearing from ‘this’ point to destination point along a rhumb line.\n * Adapted from Geodesy: https://github.com/chrisveness/geodesy/blob/master/latlon-spherical.js\n *\n * @private\n * @param {Array<number>} from - origin point.\n * @param {Array<number>} to - destination point.\n * @returns {number} Bearing in degrees from north.\n * @example\n * var p1 = new LatLon(51.127, 1.338);\n * var p2 = new LatLon(50.964, 1.853);\n * var d = p1.rhumbBearingTo(p2); // 116.7 m\n */\nfunction calculateRhumbBearing(from: number[], to: number[]) {\n // φ => phi\n // Δλ => deltaLambda\n // Δψ => deltaPsi\n // θ => theta\n const phi1 = degreesToRadians(from[1]);\n const phi2 = degreesToRadians(to[1]);\n let deltaLambda = degreesToRadians(to[0] - from[0]);\n // if deltaLambdaon over 180° take shorter rhumb line across the anti-meridian:\n if (deltaLambda > Math.PI) {\n deltaLambda -= 2 * Math.PI;\n }\n if (deltaLambda < -Math.PI) {\n deltaLambda += 2 * Math.PI;\n }\n\n const deltaPsi = Math.log(\n Math.tan(phi2 / 2 + Math.PI / 4) / Math.tan(phi1 / 2 + Math.PI / 4)\n );\n\n const theta = Math.atan2(deltaLambda, deltaPsi);\n\n return (radiansToDegrees(theta) + 360) % 360;\n}\n\nexport { rhumbBearing };\nexport default rhumbBearing;\n"]}