UNPKG

leaflet.mousecoordinate

Version:
120 lines (96 loc) 3.55 kB
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>JSDoc: Source: nac.js</title> <script src="scripts/prettify/prettify.js"> </script> <script src="scripts/prettify/lang-css.js"> </script> <!--[if lt IE 9]> <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> <![endif]--> <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css"> <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css"> </head> <body> <div id="main"> <h1 class="page-title">Source: nac.js</h1> <section> <article> <pre class="prettyprint source linenums"><code>/** * Created by Johannes Rudolph &lt;johannes.rudolph@gmx.com> on 01.09.2016. */ /** * * @type {{fromLatLng: NAC.fromLatLng, _nac2Letter: NAC._nac2Letter}} */ var NAC = { /** * * @param {{lat: number, lng: number}} * @returns {string} */ fromLatLng: function(latlng) { var lat = latlng.lat; var lon = latlng.lng; var x = []; var y = []; var xy = []; xy.x = ''; xy.y = ''; if (lon >= -180 &amp;&amp; lon &lt;= 180) { var xlon = (lon + 180) / 360; x[0] = parseInt(xlon * 30); x[1] = parseInt((xlon * 30 - x[0]) * 30); x[2] = parseInt(((xlon * 30 - x[0]) * 30 - x[1]) * 30); x[3] = parseInt((((xlon * 30 - x[0]) * 30 - x[1]) * 30 - x[2]) * 30); x[4] = parseInt(((((xlon * 30 - x[0]) * 30 - x[1]) * 30 - x[2]) * 30 - x[3]) * 30); x[5] = parseInt((((((xlon * 30 - x[0]) * 30 - x[1]) * 30 - x[2]) * 30 - x[3]) * 30 - x[4]) * 30); } else { x[0] = 0; } if (lat >= -90 &amp;&amp; lat &lt;= 90) { var ylat = (lat + 90) / 180; y[0] = parseInt(ylat * 30); y[1] = parseInt((ylat * 30 - y[0]) * 30); y[2] = parseInt(((ylat * 30 - y[0]) * 30 - y[1]) * 30); y[3] = parseInt((((ylat * 30 - y[0]) * 30 - y[1]) * 30 - y[2]) * 30); y[4] = parseInt(((((ylat * 30 - y[0]) * 30 - y[1]) * 30 - y[2]) * 30 - y[3]) * 30); y[5] = parseInt((((((ylat * 30 - y[0]) * 30 - y[1]) * 30 - y[2]) * 30 - y[3]) * 30 - y[4]) * 30); } else { y[0] = 0; } for (var i = 0; i &lt; x.length; i++) { xy.x += this._nac2Letter(x[i]); } for (i = 0; i &lt; y.length; i++) { xy.y += this._nac2Letter(y[i]); } return xy; }, /** * * @param number * @returns {string} * @private */ _nac2Letter: function(number){ var nac_letters = "0123456789BCDFGHJKLMNPQRSTVWXZ"; if(!isNaN(number) &amp;&amp; number &lt; 30) return nac_letters.substr(number,1); else return 0; } };</code></pre> </article> </section> </div> <nav> <h2><a href="index.html">Home</a></h2><h3>Global</h3><ul><li><a href="global.html#NAC">NAC</a></li><li><a href="global.html#QTH">QTH</a></li><li><a href="global.html#UTM">UTM</a></li><li><a href="global.html#UTMREF">UTMREF</a></li></ul> </nav> <br class="clear"> <footer> Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.4.1</a> on Fri Sep 09 2016 11:15:25 GMT+0200 (Mitteleuropäische Sommerzeit) </footer> <script> prettyPrint(); </script> <script src="scripts/linenumber.js"> </script> </body> </html>