73 lines
1.5 KiB
Markdown
73 lines
1.5 KiB
Markdown
# Вектора
|
|
## Плоскостной вектор vec2(x, y)
|
|
### Операции над векторами
|
|
|
|
|
|
```lua
|
|
function vector2:round(decimals: float|int) -> round[vec2]
|
|
```
|
|
Округление компонентов вектора
|
|
```lua
|
|
function vector2:len() -> number
|
|
```
|
|
Длина вектора
|
|
|
|
```lua
|
|
function vector2:norm() -> number
|
|
```
|
|
Нормализация вектора
|
|
|
|
```lua
|
|
function vector2:abtw(vector: vec2) -> number
|
|
```
|
|
Угол между двумя векторами в радианах
|
|
|
|
|
|
```lua
|
|
function vector2:proj(vector: vec2) -> vec2
|
|
```
|
|
Проекция вектора
|
|
|
|
```lua
|
|
function vector2:vxld(vector: vec2) -> vec2
|
|
```
|
|
...
|
|
|
|
```lua
|
|
function vector2:dot(vector: vec2) -> number
|
|
```
|
|
Векторное (внутреннее) произведение
|
|
|
|
```lua
|
|
function vector2:lerp(b: vec2, t: number; t∈[0,1]) -> vec2
|
|
```
|
|
Линейная интерполяция вектора
|
|
|
|
```lua
|
|
function vector2:dist(vector: vec2) -> number
|
|
```
|
|
Дистанция между двумя векторами
|
|
|
|
```lua
|
|
function vector2:cross(vector: vec2) -> number
|
|
```
|
|
Векторное (внешнее) произведение
|
|
|
|
```lua
|
|
function vector2:rot(angle: number->rad, axis: str, convert2deg: bool) -> vec2
|
|
```
|
|
Поворот вектора
|
|
|
|
`axis {string} - axis rotate around (x, y, or z)`
|
|
|
|
`convert2deg {bool} .. if true => angle: number->deg .. else angle: number->rad`
|
|
|
|
### Операции с векторами
|
|
|
|
...
|
|
|
|
## Пространственный вектор vec3(x, y, z)
|
|
### Операции с векторами
|
|
|
|
|