MonoGeometry 1.0.1

dotnet add package MonoGeometry --version 1.0.1
                    
NuGet\Install-Package MonoGeometry -Version 1.0.1
                    
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="MonoGeometry" Version="1.0.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="MonoGeometry" Version="1.0.1" />
                    
Directory.Packages.props
<PackageReference Include="MonoGeometry" />
                    
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 MonoGeometry --version 1.0.1
                    
#r "nuget: MonoGeometry, 1.0.1"
                    
#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 MonoGeometry@1.0.1
                    
#: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=MonoGeometry&version=1.0.1
                    
Install as a Cake Addin
#tool nuget:?package=MonoGeometry&version=1.0.1
                    
Install as a Cake Tool

MonoGeometry

MonoGeometry is a simple, low impact primitive drawing add-on for the Monogame game engine. It provides a collection of options for drawing simple shapes to the screen, which is a feature that's a bit verbose to achieve normally.

It also provides structures for handling simple 2D shapes that aren't present in Monogame by default, like triangles and circles.

In the future, this project will be expanded with more shape structures, and more options for drawing simple primitives.

Installation

MonoGeometry can be installed throught the NuGet package manager, with the following command:

dotnet add package MonoGeometry --version 1.0.1

This package's NuGet page is available here.

Usage

The basis of MonoGeometry is the PrimitiveBatch class. Its usage is much the same as the SpriteBatch class provided by default.

Create a private PrimitiveBatch instance, and initialize it in the LoadContent method:

private PrimitiveBatch _primitiveBatch;

protected override void LoadContent()
{
  this.Content.RootDirectory = "Content";
  this._primitiveBatch = new(this.GraphicsDevice);
}

Primitives can now be drawn to the screen in the Draw method, with the same begin and end syntax as SpriteBatch:

protected override void Draw(GameTime gameTime)
{
  this._primitiveBatch.Begin();
  this._primitiveBatch.FillColor = Color.Black;
  //Draw a circle with center coordinates (100, 100) and a radius of 5
  this._primitiveBatch.Circle(new Vector2(100, 100), 5);
  this._primitiveBatch.End();
  base.Draw(gameTime);
}

Contribution

All contributions are welcomed. Please use the provided .editorconfig file for style guidlines.

Product Compatible and additional computed target framework versions.
.NET 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.1 225 2/1/2024
1.0.0 171 1/31/2024