GeomPP 0.1.1
See the version list below for details.
dotnet add package GeomPP --version 0.1.1
NuGet\Install-Package GeomPP -Version 0.1.1
<PackageReference Include="GeomPP" Version="0.1.1" />
<PackageVersion Include="GeomPP" Version="0.1.1" />
<PackageReference Include="GeomPP" />
paket add GeomPP --version 0.1.1
#r "nuget: GeomPP, 0.1.1"
#:package GeomPP@0.1.1
#addin nuget:?package=GeomPP&version=0.1.1
#tool nuget:?package=GeomPP&version=0.1.1
C# bindings for geompp, a C++20 geometry library.
Provides Point2D/3D, Vector2D/3D, Line2D/3D, Ray2D/3D, LineSegment2D/3D,
Polyline2D/3D, Triangle2D/3D, Polygon2D/3D, BBox2D/3D, Plane — with full
operator support, intersection queries, WKT serialization, and file I/O.
Built with C++/CLI for Windows x64. Targets both .NET 10 and .NET Framework 4.8.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0-windows7.0 is compatible. |
| .NET Framework | net48 is compatible. net481 was computed. |
-
.NETFramework 4.8
- No dependencies.
-
net10.0-windows7.0
- No dependencies.
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 |
|---|---|---|
| 0.17.3 | 100 | 8/15/2026 |
| 0.17.2 | 94 | 8/14/2026 |
| 0.16.2 | 89 | 8/6/2026 |
| 0.15.1 | 121 | 7/24/2026 |
| 0.14.0 | 106 | 7/21/2026 |
| 0.13.0 | 118 | 7/9/2026 |
| 0.12.0 | 105 | 7/8/2026 |
| 0.11.0 | 113 | 7/4/2026 |
| 0.10.1 | 127 | 6/23/2026 |
| 0.9.1 | 224 | 6/17/2026 |
| 0.8.2 | 118 | 5/18/2026 |
| 0.8.0 | 111 | 5/18/2026 |
| 0.7.0 | 104 | 5/6/2026 |
| 0.6.0 | 106 | 5/4/2026 |
| 0.5.0 | 104 | 5/1/2026 |
| 0.4.0 | 115 | 4/27/2026 |
| 0.1.2 | 124 | 4/13/2026 |
| 0.1.1 | 123 | 4/13/2026 |
| 0.1.0 | 125 | 4/9/2026 |
### Fixed
**C++ core**
- `Line3D::Intersection(sc, tc)`: parameter `tc` was passed by value instead of
by reference, leaving the caller's variable uninitialized in Debug builds
(MSVC Run-Time Check Failure #3).
- `Line2D::Intersection(Line2D const&, double& sc, double& tc)` and
`Line3D::Intersection(Line3D const&, double& sc, double& tc)` now wrap their
computation in a `try/catch(...)` block; unexpected exceptions log a warning
and return `std::nullopt` with `sc = tc = NaN` instead of propagating.
**C# (GeomPP NuGet)**
- Updated to geompp core 0.1.1. Exposes the corrected `Line3D.IntersectionWithParams`
which now correctly returns the `tc` out-parameter.
- Fixed `0xC0000005` crash when loading `GeomPP.dll` under .NET 5+: geompp core
is now recompiled inside the C++/CLI project with `GEOMPP_NO_THREAD_LOCAL`,
replacing `thread_local` globals with plain globals (the .NET 5+ CLR does not
call `DllMain` for C++/CLI assemblies, preventing TLS slot allocation).
- Added C# smoke tests (`geompp_csharp/tests/`) covering `Precision`, `Point2D`,
`Point3D`, `Vector3D`, `Line2D`, `Line3D`, and `LineSegment2D`; run via
`dotnet run --project geompp_csharp\tests\GeomPPTests.csproj`.
**Python (geompp PyPI)**
- Updated to geompp core 0.1.1. `line3d.intersection_with_params()` now correctly
returns the `tc` value.
### Build / CI
- `enable_testing()` added to root `CMakeLists.txt` so `ctest` finds tests from
the root build directory on all generators.
- CI `ctest` steps now point at `build/geompp_tests` to avoid running glog's own
internal test suite alongside geompp's tests.
---