# Basic Geometry for .NET ## Библиотека базовых геометрических вычислений для .NET Язык программирования: C# Версия: 0.2.0-dev Лицензия: Apache-2.0 Основными целями разработки данной библиотеки были: 1. Производительность 2. Функциональность 3. Универсальность Производительность была на первом месте, что оказало влияние на особенности реализации библиотеки. Например, почти все сущности в библиотеке реализованы в виде структур, а сами структуры передаются в методы по ссылке. Это позволило получить достаточно высокую производительность, спосотавимую с производительностью аналогичной реализации сущностей а алгоритмов на языке Си. Библиотека использует два типа чисел с плавающей запятой: **float** и **double** (типы **binary32** и **binary64** стандарта **IEEE 754**). Что также повлияло на особенности дизайна библиотеки. Библиотека как бы неявно разделена на две половины - одна половина для данных типа **float**, а другая - для данных типа **double**. Но между этими половинами есть мостики - функции преобразования типа. Однако в библиотеке нет функций, которые используют для вычисления данные разных типов (**float** и *double* одновременно).