#include <stdlib.h>
#include <time.h>
#include <cmath>
#include "vektor.h"

vektor::vektor (int X, int Y)
{
    x = X;
    y = Y;
}

void vektor::random(int X, int Y)
{
    srand (time(NULL));
    x = rand() % X;
    y = rand() % Y;
}

float vektor::hosszNegyzet()
{
    return x*x + y*y;
}

float vektor::hossz()
{
    return sqrt(x*x + y*y);
}

void vektor::null()
{
    x = 0;
    y = 0;
}

vektor vektor::operator+ (const vektor& v1, const vektor& v2)
{
    vektor temp;
    temp.x = v1.x + v2.x;
    temp.y = v1.y + v2.y;
    return temp;
}

vektor& vektor::operator+= (vektor& v1, const vektor& v2)
{
    v1.x = v1.x + v2.x;
    v1.y = v1.y + v2.y;
    return v1;
}

vektor vektor::operator- (const vektor& v1, const vektor& v2)
{
    vektor temp;
    temp.x = v1.x - v2.x;
    temp.y = v1.y - v2.y;
    return temp;
}

vektor vektor::operator* (const float skalar, const vektor& v)
{
    vektor temp;
    temp.x = skalar * v.x ;
    temp.y = skalar * v.y;
    return temp;
}

vektor vektor::operator* (const vektor& v, const float skalar)
{
    vektor temp;
    temp.x = skalar * v.x ;
    temp.y = skalar * v.y;
    return temp;
}

vektor vektor::operator/ (const vektor& v, const float skalar)
{
    vektor temp;
    temp.x = v.x / skalar;
    temp.y = v.y / skalar;
    return temp;
}

vektor& vektor::operator/= (vektor& v, const float skalar)
{
    v.x = v.x / skalar;
    v.y = v.y / skalar;
    return v;
}
