Refactor, separate docs from headers, add ru docs

Doxygen kind'a sucks and I need multilanguage documentation, so I did
that. Also, separated massive Math.h file into smaller files.
This commit is contained in:
2025-06-21 20:12:15 +03:00
parent 7ee69fc397
commit fc774fd0ff
116 changed files with 10693 additions and 3521 deletions

View File

@@ -0,0 +1,66 @@
=encoding UTF-8
=head1 НАИМЕНОВАНИЕ
BH_Plane - Плоскость в пространстве
=head1 СИНТАКСИС
#include <BH/Math.h>
cc prog.c -o prog -lbh
=head1 ОПИСАНИЕ
Модуль BH_Plane предоставляет функции для работы с плоскостями в трёхмерном
пространстве. Он позволяет вычислять коэффициенты плоскости по трём точкам,
определять расстояние от точки до плоскости и находить ближайшую точку на
плоскости к заданной точке.
=head1 API ВЫЗОВЫ
=head2 BH_PlaneFromPoints
int BH_PlaneFromPoints(const float a[3],
const float b[3],
const float c[3],
float out[4]);
Вычисляет коэффициенты плоскости по трём точкам I<a>, I<b>, I<c>.
Предполагается, что точки расположены в порядке по часовой стрелке.
Если точки образуют вырожденный треугольник, функция вернёт ошибку.
Параметр I<out> определяет результирующую плоскость.
В случае успеха функция возвращает 0, в противном случае - код ошибки.
=head2 BH_PlaneDistance
float BH_PlaneDistance(const float plane[4],
const float point[3]);
Вычисляет расстояние от точки I<point> до плоскости I<plane>.
=head2 BH_PlaneClosestPoint
void BH_PlaneClosestPoint(const float plane[4],
const float point[3],
float out[3]);
Вычисляет ближайшую точку на плоскости I<plane> к другой точке I<point>.
Параметр I<out> описывает результирующую точку.
=head1 СМ. ТАКЖЕ
L<BH>