{"id":30420669,"url":"https://github.com/skybrud/skybrud.essentials.maps","last_synced_at":"2025-08-22T08:19:52.816Z","repository":{"id":40909858,"uuid":"183788987","full_name":"skybrud/Skybrud.Essentials.Maps","owner":"skybrud","description":".NET library for working with maps and geospatial data and geometry.","archived":false,"fork":false,"pushed_at":"2024-03-03T14:08:23.000Z","size":6308,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":4,"default_branch":"v1/main","last_synced_at":"2025-08-01T01:23:26.789Z","etag":null,"topics":["geojson","maps","package","skybrud","skybrud-essentials","wellknowntext"],"latest_commit_sha":null,"homepage":"https://packages.skybrud.dk/skybrud.essentials.maps/","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/skybrud.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2019-04-27T15:18:49.000Z","updated_at":"2021-10-08T12:11:00.000Z","dependencies_parsed_at":"2024-02-13T00:26:02.945Z","dependency_job_id":"bf8f8f65-6efe-4c21-9b1e-ddc0ac8ef0d2","html_url":"https://github.com/skybrud/Skybrud.Essentials.Maps","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/skybrud/Skybrud.Essentials.Maps","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skybrud%2FSkybrud.Essentials.Maps","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skybrud%2FSkybrud.Essentials.Maps/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skybrud%2FSkybrud.Essentials.Maps/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skybrud%2FSkybrud.Essentials.Maps/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/skybrud","download_url":"https://codeload.github.com/skybrud/Skybrud.Essentials.Maps/tar.gz/refs/heads/v1/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skybrud%2FSkybrud.Essentials.Maps/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271606604,"owners_count":24788981,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-22T02:00:08.480Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["geojson","maps","package","skybrud","skybrud-essentials","wellknowntext"],"created_at":"2025-08-22T08:19:49.837Z","updated_at":"2025-08-22T08:19:52.799Z","avatar_url":"https://github.com/skybrud.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Skybrud.Essentials.Maps\n\n[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE.md) \u003c!--[![NuGet](https://img.shields.io/nuget/v/Skybrud.Essentials.Maps.svg)](https://www.nuget.org/packages/Skybrud.Essentials.Maps) [![NuGet](https://img.shields.io/nuget/dt/Skybrud.Essentials.Maps.svg)](https://www.nuget.org/packages/Skybrud.Essentials.Maps)--\u003e\n\nSkybrud.Essentials.Maps is a .NET package for working with maps and geospatial data.\n\nIt also supports working with popular formats such as [**GeoJSON**](https://en.wikipedia.org/wiki/GeoJSON), [**KML**](https://en.wikipedia.org/wiki/Keyhole_Markup_Language) (Keyhole Markup Language) and [**WKT**](https://en.wikipedia.org/wiki/Well-known_text_representation_of_geometry) (Well Known Text).\n\n### Installation\n\nTo install the Skybrud.Essentials.Maps, pick one of the methods below:\n\n1. [**NuGet Package**][NuGetPackage]  \n   Install this NuGet package in your Visual Studio project. Makes updating easy.\n2. [**ZIP file**][GitHubRelease]  \n   Grab a ZIP file of the latest release; unzip and move the `Skybrud.Essentials.Maps.dll`and other DLLs matching your target framework to the bin directory of your project.\n\n\n\n### Dependencies\n\n- [**Skybrud.Essentials**](https://github.com/skybrud/Skybrud.Essentials)\u003cbr /\u003eA package with logic for handling various common tasks in .NET.\n\n  - [**Json.NET**](https://github.com/jamesnk/newtonsoft.json)\u003cbr /\u003eUsed for searializing/deserializing JSON.\n\n- [**Skybrud.Essentials.Http**](https://github.com/skybrud/Skybrud.Essentials.Http)\u003cbr /\u003eHTTP package used for resolving network links in KML files.\n\n\n\n### Found a bug? Have a question?\n\n* Please feel free to [**create an issue**][Issues], and I will get back to you ;)\n\n\n\n### Changelog\n\nThe [**releases page**][GitHubReleases] lists the relevant changes from each release.\n\n### Usage\n\n#### Geometry, lines and shapes\n\nDefine a point on a map:\n\n```csharp\n// Initialize a new point by latitude and longitude\nIPoint point = new Point(55.708151, 9.536131);\n```\n\nCalculate the distance between two points:\n\n```csharp\n// Initialize the points by latitude and longitude\nIPoint a = new Point(55.708151, 9.536131);\nIPoint b = new Point(55.708069, 9.536000);\n\n// Calculate the distance in metres\ndouble distance = DistanceUtils.GetDistance(a, b);\n```\n\nDefine a line on a map:\n\n```csharp\n// Initialize the points by latitude and longitude\nIPoint a = new Point(55.708151, 9.536131);\nIPoint b = new Point(55.708069, 9.536000);\n\n// Initialize a new line from the two points\nILine line = new Line(a, b);\n\n// Get the length of the line\ndouble length = line.GetLength();\n```\n\nDefine a line string (polyline) on a map:\n\n```csharp\n// Initialize the points by latitude and longitude\nIPoint a = new Point(55.708151, 9.536131);\nIPoint b = new Point(55.708069, 9.536000);\nIPoint c = new Point(55.708061, 9.536172);\n\n// Initialize a new line string from the multiple points\nILineString line = new LineString(a, b, c);\n\n// Get the length of the line string\ndouble length = line.GetLength();\n```\nDefine a polygon on a map:\n\n```csharp\n// Initialize the points by latitude and longitude\nIPoint a = new Point(55.708151, 9.536131);\nIPoint b = new Point(55.708069, 9.536000);\nIPoint c = new Point(55.708061, 9.536172);\nIPoint d = new Point(55.708145, 9.536222);\n\nIPoint f = new Point(55.708113, 9.536086);\n\n// Initialize a new polygon from the multiple points\nIPolygon polygon = new Polygon(a, b, c, d, a);\n\n// Get the circumferences of the polygon\ndouble circumference = polygon.GetCircumference();\n\n// Get the area of the polygon\ndouble area = polygon.GetArea();\n\n// Get the bounding of the polygon\nIRectangle bbox = polygon.GetBoundingBox();\n\n// Does the polygon contain point \"f\"?\nbool contains = polygon.Contains(f);\n```\n\n\n\n\n\n   \n[NuGetPackage]: https://www.nuget.org/packages/Skybrud.Essentials.Maps\n[GitHubRelease]: https://github.com/skybrud/Skybrud.Essentials.Maps/releases/latest\n[GitHubReleases]: https://github.com/skybrud/Skybrud.Essentials.Maps/releases\n[Changelog]: https://github.com/skybrud/Skybrud.Essentials.Maps/releases\n[Issues]: https://github.com/skybrud/Skybrud.Essentials.Maps/issues\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskybrud%2Fskybrud.essentials.maps","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fskybrud%2Fskybrud.essentials.maps","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskybrud%2Fskybrud.essentials.maps/lists"}