Akeldov.Math.Hexes
0.2.0
dotnet add package Akeldov.Math.Hexes --version 0.2.0
NuGet\Install-Package Akeldov.Math.Hexes -Version 0.2.0
<PackageReference Include="Akeldov.Math.Hexes" Version="0.2.0" />
<PackageVersion Include="Akeldov.Math.Hexes" Version="0.2.0" />
<PackageReference Include="Akeldov.Math.Hexes" />
paket add Akeldov.Math.Hexes --version 0.2.0
#r "nuget: Akeldov.Math.Hexes, 0.2.0"
#:package Akeldov.Math.Hexes@0.2.0
#addin nuget:?package=Akeldov.Math.Hexes&version=0.2.0
#tool nuget:?package=Akeldov.Math.Hexes&version=0.2.0
Akeldov.Math.Hexes
Akeldov.Math.Hexes is a .NET library for hex-grid coordinates, topology, geometry, maps, rasterization, pathfinding, polyhex processing, and weighted partitioning.
Features
The library is organized around practical hex-grid workflows.
Coordinates and Layouts
- Fractional and integer QRS axial vectors with the cube-coordinate zero-sum invariant.
- Conversion between QRS, offset-grid indexes, and two-dimensional world coordinates.
- Odd and even row layouts for pointy-top hexes and odd and even column layouts for flat-top hexes.
- Layout-aware discretization, rotation, affine transformations, and binary serialization.
- Sixfold angles for directions and rotations in 60-degree increments.
Topology and Maps
- Rectangular map topology with edge, vertex, pair, triplet, and six-neighbor adjacency helpers.
- Mutable
HexMap<T>and geometry-awareSpatialHexMap<T>value storage. - Dedicated Boolean, integer, and floating-point maps with conditional selection.
- Extrema queries and arithmetic operators for numeric maps; logical operators for Boolean maps.
- Deterministic Perlin-noise generation and Gaussian blur for floating-point maps.
- Index maps and compact pair, triplet, and septuplet containers with presence flags.
- Polyhex masks, builders, extension operations, and binary serialization.
Geometry and Rasterization
- Radius-based hex geometry with layout-aware centers, vertices, bounding boxes, and raster geometry.
- Barycentric sampling for the three hexes meeting at a vertex.
- Topology and geometry rasters with arbitrary world-space bounds and resolution.
- Generic map rasterization and optional XY or QRS index labels.
- Polyhex boundary extraction, contour construction, apothem offsets, and region conversion.
Chromatization
- Repeating chromatic indexes for hexes and shared vertices.
- Chromatic maps and full or partial triplet rasters.
- Barycentric chromatic weights for blending values around hex vertices.
Pathfinding and Partitioning
- Weighted shortest-path search using separate cell entry and exit costs.
- Impassable cells represented by positive-infinity transfer costs.
- Weighted Voronoi partitioning of hex centers with read-only cell assignments.
Documentation
Documentation is available at:
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. 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. |
| .NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.1 is compatible. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- Akeldov.Math.Spatial2D (>= 0.8.0 && < 1.0.0)
-
net6.0
- Akeldov.Math.Spatial2D (>= 0.8.0 && < 1.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Added dedicated Boolean, integer, and floating-point hex maps. Integer and floating-point maps provide minimum and maximum queries, copy conversions, and arithmetic operators; Boolean maps provide logical operators. Added conditional selection for Boolean, numeric, and generic maps, deterministic Perlin-noise generation, and Gaussian blur for floating-point hex maps. Expanded public API and map-operation test coverage.