bgc-net/README.md

35 lines
2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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* одновременно).