Loading...
Searching...
No Matches
vector2.c File Reference
`#include "arc/math/vector2.h"`
`#include <math.h>`

Go to the source code of this file.

## Functions

void | ARC_Vector2_Normalize (ARC_Vector2 *vector)
| normalizes a given ARC_Vector2
void | ARC_Vector2_RotateDegree (ARC_Vector2 *vector, float angle)
| rotates a given ARC_Vector2 by a given angle in degrees

## Function Documentation

## ARC_Vector2_Normalize()

void ARC_Vector2_Normalize | ( | ARC_Vector2 * | vector | ) |

normalizes a given ARC_Vector2

Parameters

  vector | the ARC_Vecotr2 to normallize

Definition at line 4 of file vector2.c.

{
float length = sqrtf((vector->x * vector->x) + (vector->y * vector->y));
if(length == 0){
return;
}
vector->x /= length;
vector->y /= length;
}
ARC_Vector2::x
float x
Definition vector2.h:9
ARC_Vector2::y
float y
Definition vector2.h:9

References ARC_Vector2::x, and ARC_Vector2::y.

## ARC_Vector2_RotateDegree()

void ARC_Vector2_RotateDegree | ( | ARC_Vector2 * | vector,
|  | float | angle )

rotates a given ARC_Vector2 by a given angle in degrees

Parameters

  vector | the ARC_Vector2 to rotate
  angle | the angle in degrees to rotate by

Definition at line 14 of file vector2.c.

{
ARC_Vector2 temp = *vector;
vector->x = (temp.x * cos(angle)) - (temp.y * sin(angle));
vector->y = (temp.x * sin(angle)) + (temp.y * cos(angle));
}
ARC_Vector2
Definition vector2.h:8

References ARC_Vector2::x, and ARC_Vector2::y.