GithubHelp home page GithubHelp logo

cambrian-chen / triangle.net Goto Github PK

View Code? Open in Web Editor NEW

This project forked from garykac/triangle.net

0.0 1.0 0.0 3.2 MB

Snapshot of Christian Woltering's Triangle.NET (with docs)

License: MIT License

C# 100.00%

triangle.net's Introduction

Mesh Lake Superior

Triangle.NET (by Christian Woltering)

With the shutdown of Codeplex in 2017, Christian Woltering's Triangle.NET project was placed in read-only mode and archived.

Since the shutdown announcement, a number of snapshots have been made:

These are in addition to the ones that had already been created:

And now this one (sigh, cue relevant XKCD comic).

One thing missing from these other releases is the documentation that was present on the original Codeplex site. With the project now being archived, these documents are no longer readily accessible on the web -- you need to download the zip archive and view them in one of the various archived formats (html, md or codeplexwiki), all of which suffer from various broken links.

To the best of my knowledge, there isn't an "official" new home for Triangle.NET. If one is created, then I will add a link here (or transfer this repo over to him).

Triangle.NET versions

There are 3 snapshot releases (Beta 1, Beta 2 and Beta 3) and a current "Beta 4" version.

Note that there are significant differences between Beta 3 and Beta 4, which are discussed in the From Beta 3 to 4 page.

The earlier releases are archived in the releases directory. The current Beta 4 release is in source.

Documentation

This documention has been transferred from the wiki in the original Codeplex site (with links fixed, et al).

Examples:

(No, I don't know why there are numbering gaps. The "missing" examples are most like elsewhere in the documentation.)

Working with Unity

One common reason for forking the Triangle.NET code is to make the library compatible with Unity. The current (2017) Mono compiler used by Unity targets C# 4 and .NET 3.5, so any code in Triangle.NET that makes use of .NET 4.0 or later needs to have a workaround.

The upcoming 2018 release of Unity (currently at 2018.1 beta) will support C# 6 and .NET 4.7.1, so these workarounds shouldn't be necessary for much longer.

However, in the meantime...

To build a Unity-compatible DLL from your local source/Triangle.NET/Triangle directory, you can run:

mcs -target:library -out:triangle-net.dll -sdk:2 -define:UNITY -nowarn:414 -debug -recurse:*.cs
  • -sdk:2: SDK version for referenced assemblies. Unity requires this to be 2 (options are 2, 4 and 4.5).
  • -define:UNITY: enable workarounds in the code for .NET 4.0 stuff so that Unity is happy.
  • -nowarn:414: suppress the warning about "TriangleNet.Meshing.Algorithm.Dwyer.rand" being assigned but never used.
  • -debug: generate an .mdb file with debugging symbols.

A pre-built version of an mcs-compiled DLL (and symbols) suitable for use with Unity is located in unity.

The changes required to make Unity's runtime happy are in this cl.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.