Ara3D.Geometry
1.4.5
dotnet add package Ara3D.Geometry --version 1.4.5
NuGet\Install-Package Ara3D.Geometry -Version 1.4.5
<PackageReference Include="Ara3D.Geometry" Version="1.4.5" />
paket add Ara3D.Geometry --version 1.4.5
#r "nuget: Ara3D.Geometry, 1.4.5"
// Install Ara3D.Geometry as a Cake Addin #addin nuget:?package=Ara3D.Geometry&version=1.4.5 // Install Ara3D.Geometry as a Cake Tool #tool nuget:?package=Ara3D.Geometry&version=1.4.5
Ara3D.Geometry
A cross-platform C# library of geometric algorithms and data structures.
Status
This library is a work in progress and still undergoing frequent changes.
Overview
This library is designed specially for parametric design and procedural geometry creation. Everything is written from the ground in .NET Standard 2.0 compliant C# and has minimal dependencies. All dependencies are also .NET Standard 2.0 compliant C#.
This library leverages functional programming techniques and a fluent-style API (i.e., method-chain syntax) to make working with geometric structures easy and efficient.
Most data structures are immutable.
Interfaces
Many of the interfaces are defined in the file Interfaces.cs
. Some of the primary interface are:
ITriMesh
- triangular meshIQuadMesh
- quadrilateral meshIPolyLine2D
- a series of connectedline segmentsIPolyLine3D
- a series of connected line segments in 3D spaceISurface
- a surface in 3D space, that may be discrete or parametric.IParametricSurface
- a surface defined using a mapping from UV coordinates to XYZ coordinatesICurve2D
- a continuous curve in 2D spaceICurve3D
- a continuous curve in 3D space
Primitive Shapes
A number of primitive shapes are provided in 2D and 3D.
See:
PlatonicSolids.cs
ParametricSurfaces.cs
Polygons.cs
Prisms.cs
Building the Library from Source
This library can only be build as a submodule of the Ara 3D Main Repository.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. 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. |
.NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
.NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen40 was computed. 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.0
- Ara3D.Collections (>= 1.4.5)
- Ara3D.Mathematics (>= 1.4.5)
- Ara3D.Utils (>= 1.4.5)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Ara3D.Geometry:
Package | Downloads |
---|---|
Ara3D.Graphics
A library for working with and rendering 2D and 3D graphics. |
GitHub repositories
This package is not used by any popular GitHub repositories.