Reo.Core.GeoJSON 10.0.79

There is a newer version of this package available.
See the version list below for details.
dotnet add package Reo.Core.GeoJSON --version 10.0.79
                    
NuGet\Install-Package Reo.Core.GeoJSON -Version 10.0.79
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Reo.Core.GeoJSON" Version="10.0.79" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Reo.Core.GeoJSON" Version="10.0.79" />
                    
Directory.Packages.props
<PackageReference Include="Reo.Core.GeoJSON" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Reo.Core.GeoJSON --version 10.0.79
                    
#r "nuget: Reo.Core.GeoJSON, 10.0.79"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Reo.Core.GeoJSON@10.0.79
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Reo.Core.GeoJSON&version=10.0.79
                    
Install as a Cake Addin
#tool nuget:?package=Reo.Core.GeoJSON&version=10.0.79
                    
Install as a Cake Tool

Reo.Core.GeoJSON

Описание пакета

Reo.Core.GeoJSON — это библиотека для работы с данными в формате GeoJSON в .NET-приложениях. Пакет предоставляет классы и интерфейсы для создания, манипуляции и сериализации объектов GeoJSON, таких как точки, линии, полигоны, коллекции объектов и кластеры. Он решает задачи, связанные с обработкой географических данных в приложениях, например, в картографических сервисах, системах GIS или аналитике пространственных данных.

Основные компоненты

  • Feature: Представляет отдельный объект GeoJSON (например, точку, линию или полигон) с атрибутами и геометрией.
  • FeatureCollection: Хранит коллекцию объектов Feature и предоставляет методы для работы с группами географических данных.
  • Cluster: Используется для кластеризации географических объектов, например, при отображении плотных групп точек на карте.
  • ClusteredFeatureCollection: Коллекция кластеров, позволяющая управлять и отображать кластеризованные данные.
  • PositionExtensions: Содержит методы расширения для работы с географическими координатами (например, вычисление расстояний, преобразования форматов).

Требования

  • .NET: Совместим с .NET Standard 2.0 и выше (включая .NET Core 3.0+, .NET 5+ и .NET 6+).
  • Зависимости: Использует Newtonsoft.Json для сериализации и десериализации GeoJSON-объектов.

Установка

Установите пакет через NuGet Package Manager:

Install-Package Reo.Core.GeoJSON

Или через .NET CLI:

dotnet add package Reo.Core.GeoJSON

Настройка

Для использования в ASP.NET Core не требуется явная регистрация в DI-контейнере. Если требуется настройка конфигурации ( например, кастомные сериализаторы), укажите её в Startup.cs или Program.cs:

services.AddJsonOptions(options => {
    options.JsonSerializerOptions.Converters.Add(new GeoJsonConverterFactory());
});

Использование

Пример 1: Создание и сериализация объекта Feature

using Reo.Core.GeoJSON;
using Reo.Core.GeoJSON.Feature;

var feature = new Feature<Position>(new Position(55.7558, 37.6176))
{
    Properties = new Dictionary<string, object> { { "name", "Москва" } }
};

var json = JsonConvert.SerializeObject(feature, Formatting.Indented);
Console.WriteLine(json);

Пример 2: Работа с коллекцией FeatureCollection

var feature1 = new Feature<Position>(new Position(55.7558, 37.6176)) { Properties = new { Name = "Москва" } };
var feature2 = new Feature<Position>(new Position(59.9343, 30.3351)) { Properties = new { Name = "Санкт-Петербург" } };

var collection = new FeatureCollection<Position> { feature1, feature2 };
var json = JsonConvert.SerializeObject(collection, Formatting.Indented);
Console.WriteLine(json);

Пример 3: Кластеризация точек

using Reo.Core.GeoJSON.Cluster;

var points = new List<Position>
{
    new Position(55.7558, 37.6176),
    new Position(55.7560, 37.6178),
    new Position(55.7562, 37.6180)
};

var cluster = new Cluster<Position>(points, 0.001); // 0.001 — радиус кластеризации
var clusteredCollection = new ClusteredFeatureCollection<Position> { cluster };

Лицензия

Данный пакет распространяется под лицензией MIT.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on Reo.Core.GeoJSON:

Package Downloads
Reo.Fs.Map.Common

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
10.0.86 39 4/3/2026
10.0.85 79 3/31/2026
10.0.84 70 3/31/2026
10.0.83 78 3/30/2026
10.0.82 84 3/30/2026
10.0.81 78 3/30/2026
10.0.80 88 3/27/2026
10.0.79 80 3/26/2026
10.0.78 75 3/26/2026
10.0.77 82 3/25/2026
10.0.76 85 3/24/2026
10.0.75 90 3/23/2026
10.0.74 86 3/19/2026
10.0.73 80 3/19/2026
10.0.72 80 3/18/2026
10.0.71 82 3/18/2026
10.0.70 85 3/18/2026
10.0.69 94 3/17/2026
10.0.68 90 3/12/2026
10.0.67 97 3/10/2026
Loading failed