Trigfun.hpp uses std::vector<real> as a member but didn't include, fixed thanks to CRAN.
000_polygonarea_geographiclib.cpp had unallocated values that triggered valgrind issues with degenerated rings, fixed thanks to CRAN.
First CRAN submission.
Commit to rename of kissfft.hh to kissfft.h.
geodesic_nn() - Find k nearest neighbors using geodesic distances on the
WGS84 ellipsoid. Uses a vantage-point tree for efficient searching.geodesic_nn_radius() - Find all neighbors within a specified radius (meters)Both functions build an optimized spatial index for fast repeated queries.
geocoords_to_mgrs() and geocoords_to_utm() which were producing
garbled output. These functions have been removed as they duplicated
mgrs_fwd() and utm_fwd() functionality. Use those functions instead.vignette("geodesics") with a new section on nearest neighbor searchgeodesic_intersect() - Find the closest intersection of two geodesics
defined by starting points and azimuthsgeodesic_intersect_segment() - Find the intersection of two geodesic
segments defined by their endpointsgeodesic_intersect_next() - Find the next closest intersection from a
known intersection pointgeodesic_intersect_all() - Find all intersections within a maximum distanceAll functions return the displacement along each geodesic, a coincidence indicator, and the latitude/longitude of the intersection point.
vignette("geodesics") with a new section on geodesic intersectionsdms_decode() - Parse DMS strings in various formats to decimal degreesdms_decode_latlon() - Parse coordinate pairs with automatic hemisphere handlingdms_decode_angle() - Parse angles (no hemisphere designators)dms_decode_azimuth() - Parse azimuths (E/W allowed, result in [-180, 180])dms_encode() - Format decimal degrees to DMS strings with configurable precisiondms_split() - Split angles into degree, minute, second componentsdms_combine() - Combine d/m/s components to decimal degreesvignette("grid-reference-systems") with GeoCoords and DMS sectionsgeocoords_parse() - Parse coordinate strings in various formats (MGRS, UTM, DMS)geocoords_to_mgrs() - Convert lat/lon to MGRS stringsgeocoords_to_utm() - Convert lat/lon to UTM stringsalbers_fwd() and albers_rev() - Albers Equal Area conic projectionlon0 parameterIdeal for thematic maps requiring area preservation
polarstereo_fwd() and polarstereo_rev() - Polar Stereographic projection
northp parameter is vectorizedtm_fwd() and tm_rev() - Transverse Mercator projection with user-defined
central meridian and scale factor (series approximation, fast, ~5nm accuracy)tm_exact_fwd() and tm_exact_rev() - Transverse Mercator with exact
formulation (slower but accurate everywhere)lon0 parameterazeq_fwd() and azeq_rev() are now fully vectorized on lon0 and lat0
parameters, allowing different projection centers for each point. Output now
includes lon0 and lat0 columns to track which center was used.vignette("grid-reference-systems") - Detailed guide to MGRS, Geohash, GARS, and Georef with Southern Hemisphere and Antarctic examplesvignette("projections") - Comprehensive coverage of UTM/UPS, LCC, Cassini-Soldner, Gnomonic, Azimuthal Equidistant, and OSGBvignette("geodesics") - Distance, bearing, path, and polygon area calculations with Antarctic examplesvignette("local-coordinates") - Geocentric (ECEF), Local Cartesian (ENU), and ellipsoid properties for GNSS and surveyinggeodesic_direct_fast(), geodesic_inverse_fast(), geodesic_path_fast()geodesic_distance_fast(), geodesic_distance_matrix_fast()localcartesian_fwd() - Convert geographic to local East-North-Up coordinateslocalcartesian_rev() - Convert local coordinates back to geographiccassini_fwd() - Convert geographic to Cassini-Soldner projectioncassini_rev() - Convert back to geographicgnomonic_fwd() - Convert geographic to gnomonic projectiongnomonic_rev() - Convert back to geographicosgb_fwd() - Convert WGS84 to OSGB grid coordinatesosgb_rev() - Convert OSGB grid to WGS84osgb_gridref() - Convert to alphanumeric grid reference stringsosgb_gridref_rev() - Parse grid reference stringsgeocentric_fwd() - Convert geodetic (lon/lat/height) to geocentric (X/Y/Z) coordinatesgeocentric_rev() - Convert geocentric (X/Y/Z) to geodetic coordinatesellipsoid_params() - Get WGS84 ellipsoid parameters (a, f, b, e², etc.)ellipsoid_circle() - Get circle of latitude radius and meridian distanceellipsoid_latitudes() - Convert to auxiliary latitudes (parametric, geocentric, rectifying, authalic, conformal, isometric)ellipsoid_latitudes_inv() - Convert auxiliary latitudes back to geographicellipsoid_curvature() - Get meridional and transverse radii of curvatureazeq_fwd() - Convert geographic to azimuthal equidistant projectionazeq_rev() - Convert azimuthal equidistant to geographic coordinatesgars_fwd() - Convert geographic coordinates to GARS codesgars_rev() - Convert GARS codes to geographic coordinatesgeoref_fwd() - Convert geographic coordinates to Georef codesgeoref_rev() - Convert Georef codes to geographic coordinatesrhumb_direct() - Solve the direct rhumb problem (find destination given start, azimuth, distance)rhumb_inverse() - Solve the inverse rhumb problem (find distance and azimuth between two points)rhumb_path() - Generate points along a rhumb line between two pointsrhumb_line() - Generate points at specified distances along a rhumb linerhumb_distance() - Compute pairwise rhumb distancesrhumb_distance_matrix() - Compute rhumb distance matrix between sets of pointslcc_fwd() - Convert geographic coordinates to LCC projected coordinateslcc_rev() - Convert LCC coordinates back to geographicgeohash_fwd() - Convert geographic coordinates to Geohash stringsgeohash_rev() - Convert Geohash strings back to coordinates with resolution informationgeohash_resolution() - Get lat/lon resolution for a given Geohash lengthgeohash_length() - Find minimum length needed for desired precisiongeodesic_direct() - Solve the direct geodesic problem (find destination given start, azimuth, distance)geodesic_inverse() - Solve the inverse geodesic problem (find distance and azimuths between two points)geodesic_path() - Generate points along a geodesic path between two pointsgeodesic_line() - Generate points at specified distances along a geodesic from a starting pointgeodesic_distance() - Compute pairwise geodesic distancesgeodesic_distance_matrix() - Compute distance matrix between sets of pointspolygon_area() - Compute geodesic polygon area and perimeter on WGS84 ellipsoidpolygon_area_cumulative() - Compute cumulative area/perimeter as vertices are addedutmups_fwd() - Convert geographic coordinates to UTM/UPS with full metadatautmups_rev() - Convert UTM/UPS coordinates back to geographicmgrs_rev() now returns 12 columns including:mgrs_fwd() - Convert coordinates to MGRSmgrs_rev() - Convert MGRS to coordinates Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.