Улучшение структуры документации
This commit is contained in:
parent
72b6690ad6
commit
f8f6b07c81
20 changed files with 262 additions and 156 deletions
|
|
@ -1,18 +1,12 @@
|
|||
# Двумерные векторы
|
||||
# Двумерные векторы векторы
|
||||
|
||||
В библиотеке есть две версии вектора:
|
||||
- BgcVector2FP32 - вектор одинарной точности
|
||||
- BgcVector2FP64 - вектор двойной точности
|
||||
В библиотеке есть два типа двумерных векторов:
|
||||
- **BgcVector2FP32** - вектор с использованием чисел с плавающей запятой одинарной точности
|
||||
- **BgcVector2FP64** - вектор с использованием чисел с плавающей запятой двойной точности
|
||||
|
||||
Векторы типа BgcVector2FP32 для хранения координат использует тип **float** (тип
|
||||
binary32 стандарта IEEE 754).
|
||||
|
||||
Векторы BgcVector2FP64 используют тип **double** (тип binary64 стандарта IEEE 754).
|
||||
|
||||
Оба типа представляют собой структуры с двумя полями: **x1** и **x2**.
|
||||
|
||||
Определение типов:
|
||||
Определения структур:
|
||||
|
||||
```c
|
||||
typedef struct
|
||||
{
|
||||
float x1, x2;
|
||||
|
|
@ -22,47 +16,11 @@ binary32 стандарта IEEE 754).
|
|||
{
|
||||
double x1, x2;
|
||||
} BgcVector2FP64;
|
||||
```
|
||||
|
||||
Операции:
|
||||
- сбос состояния
|
||||
- указание координат
|
||||
- копирование
|
||||
- обмен
|
||||
- конвертация типа
|
||||
- получение обратного вектора
|
||||
## Функции
|
||||
|
||||
### Сброс состояния
|
||||
|
||||
Для сброса координат в нулевое значение предлагаются следующие функции:
|
||||
|
||||
inline void bgc_vector2_reset_fp32(BgcVector2FP32* vector);
|
||||
inline void bgc_vector2_reset_fp64(BgcVector2FP64* vector);
|
||||
|
||||
Каждая из данных функции эквивалентна следующим строкам кода:
|
||||
|
||||
vector->x1 = 0;
|
||||
vector->x2 = 0;
|
||||
|
||||
В данные функции не следует передавать некорректные указатели. Значение NULL (0)
|
||||
в качестве параметра также считается некорректным.
|
||||
|
||||
Пример применения:
|
||||
|
||||
#include <stdio.h>
|
||||
#include <basic-geometry.h>
|
||||
|
||||
int main()
|
||||
{
|
||||
BgcVector2FP32 my_vector;
|
||||
|
||||
bgc_vector2_reset_fp32(&my_vector);
|
||||
|
||||
printf("x1 = %f, x2 = %f\n", my_vector.x1, my_vector.x2);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
### Указание координат
|
||||
### Указание координат двумерного вектора
|
||||
|
||||
Для прямого указания координат предлагаются следующие две функции:
|
||||
|
||||
|
|
@ -174,3 +132,5 @@ binary32 стандарта IEEE 754).
|
|||
|
||||
Тем не менее, в библиотеке есть функции, которые позволяют преобразовать данные
|
||||
одного типа в данные другого типа.
|
||||
|
||||
[Назад](intro-rus.md)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue