A simple and lightweight computational geometry library for .NET, providing 3D primitives and operations with implicit coordinate system handling.
GeometRi is a computational geometry library for .NET that provides a simple and lightweight way to work with 3D geometric primitives. It enables developers to perform operations like distance calculations, intersections, projections, and transformations on objects such as points, lines, planes, and spheres, with automatic handling of coordinate systems.
.NET developers working on applications requiring 3D geometric computations, such as CAD tools, simulation software, game development, or scientific visualization.
Developers choose GeometRi for its intuitive API that abstracts away coordinate system complexities, allowing them to focus on geometric logic without managing transformations manually, all in a lightweight package.
Simple and lightweight computational geometry library for .Net
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Objects store their reference coordinate system, and transformations are carried out implicitly when needed, simplifying code by automating coordinate conversions as stated in the README.
Includes a wide range of basic shapes like Point3d, Line3d, Sphere, Triangle, and ConvexPolyhedron, covering common geometric needs for operations such as distance calculations and intersections.
The library prioritizes simplicity and readability, with clear method names and overloaded operators for common operations, making it accessible for developers focusing on geometric logic.
Uses a global tolerance property (GeometRi3D.Tolerance) for proximity checks, allowing for fuzzy comparisons in applications where exact equality isn't necessary, as highlighted in the philosophy.
Explicitly states that speed and robustness were not priorities in the README, making it less suitable for high-performance or real-time applications requiring optimized computations.
Relies on global tolerance for comparisons instead of exact robust algorithms, which may lead to inaccuracies in scenarios requiring precise geometric computations, such as engineering designs.
Focuses on basic primitives and lacks support for more complex geometric types like curves, surfaces, or advanced mesh operations, restricting use in specialized domains.