Geometry
Ara3D.Geometry is a C# library of 2D and 3D geometric data structures and algorithms.
Install / Use
/learn @ara3d/GeometryREADME
DEPRECATED: this library is being replaced by https://github.com/ara3d/Plato.Geometry
<hr/>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.csParametricSurfaces.csPolygons.csPrisms.cs
Building the Library from Source
This library can only be build as a submodule of the Ara 3D Main Repository.
Related Skills
node-connect
343.1kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
90.0kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
343.1kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
343.1kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
