aboutsummaryrefslogtreecommitdiff
path: root/doc/Manual/ru/BH_Plane.pod
blob: 66ebf553d7ba041c5f32c6d63b96febbbd037431 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
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>