# Two-dimensional vectors [Русский (Russian)](vector2-rus.md) There are two types of 2D vectors in the library: - **BGC_FP32_Vector2** - vector using single-precision floating-point numbers - **BGC_FP64_Vector2** - vector using double-precision floating-point numbers Structure definitions: ```c typedef struct { float x, y; } BGC_FP32_Vector2; typedef struct { double x, y; } BGC_FP64_Vector2; ``` The fields *x* and *y* are the coordinates of a 3D vector. ## Functions - [Reset](vector2/reset-eng.md) - bgc_fp32_vector2_reset - bgc_fp64_vector2_reset - [Copy](vector2/copy-eng.md) - bgc_fp32_vector2_copy - bgc_fp64_vector2_copy - [Swap](vector2/swap-eng.md) - bgc_fp32_vector2_swap - bgc_fp64_vector2_swap [Documentation](intro-eng.md)