C# F# Other
Clone or download
Permalink
Failed to load latest commit information.
.paket Paket: upgrade bootstrapper to v5.142 Feb 23, 2018
build Update to Numerics 4.0.0 Release Feb 13, 2018
docs Docs: switch to new MathJax cdn May 21, 2017
src Update to Numerics 4.0.0 Release Feb 13, 2018
tools/docu Upgrade tools and dependencies Oct 4, 2015
.editorconfig EditorConfig: disable trailing whitespace trimming on markdown files Jan 15, 2017
.gitattributes Update Numerics Reference to Beta06 Feb 8, 2018
.gitignore Update Numerics Reference to Beta06 Feb 8, 2018
.travis.yml Update Travis to shared framework 1.1.2 Feb 9, 2018
CONTRIBUTING.md Build: zip and nuget packing Jul 3, 2014
CONTRIBUTORS.md Remove runtime identifiers Feb 9, 2018
LICENSE.md Update Numerics Reference to Beta06 Feb 8, 2018
MathNet.Spatial.All.sln Use ruleset in Spatial-Net40-Signed.csproj Dec 4, 2017
MathNet.Spatial.All.sln.DotSettings Tweak DotSettings to use this. for instance members. Dec 3, 2017
MathNet.Spatial.Benchmarks.sln benchmark build + stylecop config fixes + file cleanup Dec 20, 2017
MathNet.Spatial.sln Add projects for roslyn analyzers & code fixes. Dec 11, 2017
MathNet.Spatial.sln.DotSettings Update Dotsettings. Jan 15, 2018
MathNet.SpatialMinimal.sln debug logging Dec 14, 2017
README.md Fix gitter badge Aug 7, 2017
RELEASENOTES.md Update to Numerics 4.0.0 Release Feb 13, 2018
Vagrantfile Project Scaffold Jun 27, 2014
appveyor.yml Update Numerics Reference to Beta06 Feb 8, 2018
build.cmd Update Numerics Reference to Beta06 Feb 8, 2018
build.fsx Update to Numerics 4.0.0 Release Feb 13, 2018
build.sh Update Numerics Reference to Beta06 Feb 8, 2018
paket.dependencies Update to Numerics 4.0.0 Release Feb 13, 2018
paket.lock Update to Numerics 4.0.0 Release Feb 13, 2018
paket.sh Update Numerics Reference to Beta06 Feb 8, 2018
restore.cmd Update Numerics Reference to Beta06 Feb 8, 2018
restore.sh Update Numerics Reference to Beta06 Feb 8, 2018
vagrant-bootstrap.sh Build: updated vagrant bootstrap to use newest xamarin mono packages Feb 14, 2015

README.md

Math.NET Spatial

Join the chat at https://gitter.im/mathnet/mathnet-spatial

Math.NET Spatial is an opensource geometry library for .Net, Silverlight and Mono.

Supports Mono and .NET 4.0 on Linux, Mac and Windows.

Math.NET Spatial is covered under the terms of the MIT/X11 license. You may therefore link to it and use it in both opensource and proprietary software projects.

Release Notes & Changes

Installation Instructions

The recommended way to get Math.NET Spatial is to use NuGet. The following packages are provided and maintained in the public NuGet Gallery:

  • MathNet.Spatial - core package, including .Net 4, .Net 3.5 and portable/PCL builds.

Supported Platforms:

  • .Net 4.0 and Mono: Windows, Linux and Mac.

Building Math.NET Spatial

Windows (.Net): AppVeyor build status
Linux (Mono): Travis Build Status

If you do not want to use the official binaries, or if you like to modify, debug or contribute, you can compile Math.NET Spatial locally either using Visual Studio or manually with the build scripts.

  • The Visual Studio solutions should build out of the box, without any preparation steps or package restores.
  • Instead of a compatible IDE you can also build the solutions with msbuild, or on Mono with xbuild.
  • The full build including unit tests, docs, NuGet and Zip packages is using FAKE.

How to build with MSBuild/XBuild

restore.cmd (or restore.sh)
msbuild MathNet.Spatial.sln            # only build for .Net 4 (main solution)
msbuild MathNet.Spatial.Net35Only.sln  # only build for .Net 3.5
msbuild MathNet.Spatial.All.sln        # full build with .Net 4, 3.5 and PCL profiles
xbuild MathNet.Spatial.sln             # build with Mono, e.g. on Linux or Mac

How to build with FAKE

build.cmd    # normal build (.Net 4.0), run unit tests
./build.sh   # normal build (.Net 4.0), run unit tests - on Linux or Mac
./buildn.sh  # normal build (.Net 4.0), run unit tests - bash on Windows (.Net instead of mono)

build.cmd Build              # normal build (.Net 4.0)
build.cmd Build incremental  # normal build, incremental (.Net 4.0)
build.cmd Build all          # full build (.Net 4.0, 3.5, PCL)
build.cmd Build net35        # compatibility build (.Net 3.5)

build.cmd Test        # normal build (.Net 4.0), run unit tests
build.cmd Test quick  # normal build (.Net 4.0), run unit tests except long running ones
build.cmd Test all    # full build (.Net 4.0, 3.5, PCL), run all unit tests
build.cmd Test net35  # compatibility build (.Net 3.5), run unit testss

build.cmd Clean  # cleanup build artifacts
build.cmd Docs   # generate documentation
build.cmd Api    # generate api reference

build.cmd NuGet all     # generate normal NuGet packages (.Net 4.0, 3.5, PCL)
build.cmd NuGet signed  # generate signed/strong named NuGet packages (.Net 4.0)

build.cmd All          # build, test, docs, api reference (.Net 4.0)
build.cmd All release  # release build

FAKE itself is not included in the repository but it will download and bootstrap itself automatically when build.cmd is run the first time. Note that this step is not required when using Visual Studio or msbuild directly.

Quick Links

Math.NET on other sites: