TheSadRogue.Primitives 1.5.0

There is a newer version of this package available.
See the version list below for details.
dotnet add package TheSadRogue.Primitives --version 1.5.0
NuGet\Install-Package TheSadRogue.Primitives -Version 1.5.0
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="TheSadRogue.Primitives" Version="1.5.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add TheSadRogue.Primitives --version 1.5.0
#r "nuget: TheSadRogue.Primitives, 1.5.0"
#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.
// Install TheSadRogue.Primitives as a Cake Addin
#addin nuget:?package=TheSadRogue.Primitives&version=1.5.0

// Install TheSadRogue.Primitives as a Cake Tool
#tool nuget:?package=TheSadRogue.Primitives&version=1.5.0

A collection of primitive data structures for working with a 2-dimensional grid.

Product Compatible and additional computed target framework versions.
.NET net5.0 is compatible.  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 is compatible.  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. 
.NET Core netcoreapp3.0 was computed.  netcoreapp3.1 is compatible. 
.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. 
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.
  • .NETCoreApp 3.1

    • No dependencies.
  • .NETStandard 2.1

    • No dependencies.
  • net5.0

    • No dependencies.
  • net6.0

    • No dependencies.
  • net7.0

    • No dependencies.

NuGet packages (4)

Showing the top 4 NuGet packages that depend on TheSadRogue.Primitives:

Package Downloads

A library that emulates old-school console and command prompt style graphics. Targets .NET 6.


Roguelike/2D game utility library.


A collection of extension methods that allow TheSadRogue.Primitives types to easily interface with MonoGame's equivalents.


A collection of extension methods that allow TheSadRogue.Primitives types to easily interface with SFML's equivalents.

GitHub repositories (2)

Showing the top 2 popular GitHub repositories that depend on TheSadRogue.Primitives:

Repository Stars
A .NET ascii/ansi console engine written in C# for MonoGame and XNA. Create your own text roguelike (or other) games!
.NET Standard roguelike library in C#. Features many algorithms and data structures pertinent to roguelike/2D game developers, specifically designed to be minimally intrusive upon the developer's architecture.
Version Downloads Last updated
1.6.0-rc3-debug 1,820 6/18/2023
1.6.0-rc3 5,343 6/18/2023
1.6.0-rc2-debug 1,681 5/11/2023
1.6.0-rc2 1,155 5/11/2023
1.6.0-rc1-debug 135 3/18/2023
1.6.0-rc1 1,636 3/18/2023
1.5.1 1,275 1/31/2023
1.5.1-debug 122 1/31/2023
1.5.0 1,374 1/27/2023
1.5.0-debug 116 1/27/2023
1.4.1 2,037 10/8/2022
1.4.1-debug 136 10/8/2022
1.4.0 376 10/7/2022
1.4.0-debug 120 10/7/2022
1.3.2 468 9/25/2022
1.3.2-debug 149 9/25/2022
1.3.1 517 5/13/2022
1.3.1-debug 150 5/13/2022
1.3.0 3,116 2/12/2022
1.3.0-debug 139 2/12/2022
1.2.0 1,194 1/8/2022
1.2.0-debug 155 1/8/2022
1.1.1 10,792 9/30/2021
1.1.1-debug 172 9/30/2021
1.1.0 379 8/21/2021
1.1.0-debug 199 8/21/2021
1.0.0 11,846 3/23/2021
1.0.0-debug 258 3/23/2021
1.0.0-alpha9-debug 208 1/25/2021
1.0.0-alpha9 198 1/25/2021
1.0.0-alpha8-debug 1,436 12/11/2020
1.0.0-alpha8 921 12/11/2020
1.0.0-alpha7-debug 1,386 11/23/2020
1.0.0-alpha7 271 11/23/2020
1.0.0-alpha6-debug 295 10/25/2020
1.0.0-alpha6 822 10/25/2020
1.0.0-alpha5-debug 2,308 7/14/2020
1.0.0-alpha5 851 7/14/2020
1.0.0-alpha4-debug 1,805 6/28/2020
1.0.0-alpha4 1,009 6/28/2020
1.0.0-alpha3-debug 1,779 5/23/2020
1.0.0-alpha3 333 5/23/2020
1.0.0-alpha2-debug 1,619 4/18/2020
1.0.0-alpha2 311 4/18/2020
1.0.0-alpha1-debug 1,835 12/8/2019
1.0.0-alpha1 990 12/8/2019

- **Color Changes**
       - GetHue can no longer return 360 instead of 0 in some cases
       - GetHue, GetSaturation, and GetBrightness are obsolete; use GetHSVHue / GetHSLHue, GetHSVSaturation / GetHSLSaturation, etc instead as required
       - FromHSL now performs color translation correctly (it previously produced incorrect values in a significant number of cases)
       - Deconstruction of a Color object into a float now properly returns a value between 0 and 1 (it would return between 0 and 255 previously)
     - **Point Hasher Changes**
       - Fixed off-by-one issue in point hasher calculations
       - Renamed properties to reflect their actual values
     - **Area Changes**
       - Optimized Area.Intersects to avoid full comparisons for referentially equal values
     - **DiffAwareGridView Changes**
       - Fixed serialization (implicit conversion to/from its serialized type was broken and wouldn't restore CurrentIndex properly)
       - You can now set history index to -1 when using SetHistory
     - **Rectangle Changes**
       - IsEmpty now returns the correct value
       - Rectangle.PositionsOnSide now throws ArgumentException as applicable
     - **Point Changes**
       - BearingOfLine overloads taking 2 points or 4 ints now return the correct line instead of the reciprocal one
       - Using division operator on a Point and a value now returns a Point instead of a value tuple
     - **Gradient Changes**
       - Gradient constructor now throws ArgumentException as applicable
     - **Palette Changes**
       - Palette now implements IReadOnlyList
       - Removed unnecessary in-memory value duplication in some constructors
     - **IGridView Extension Changes**
       - IGridView.ExtendToString no longer adds too many element separators in overloads which take a field size