Range2D and Range3D

This commit is contained in:
Sergeanur 2020-06-03 04:45:25 +03:00
parent 04a91761df
commit 2df44208dd
4 changed files with 67 additions and 0 deletions

22
src/core/Range2D.cpp Normal file
View File

@ -0,0 +1,22 @@
#include "common.h"
#include "Range2D.h"
#include "General.h"
CRange2D::CRange2D(CVector2D _min, CVector2D _max) : min(_min), max(_max) {}
bool
CRange2D::IsInRange(CVector2D vec)
{
return min.x < vec.x && max.x > vec.x && min.y < vec.y && max.y > vec.y;
}
void
CRange2D::DebugShowRange(float, int)
{
}
CVector2D
CRange2D::GetRandomPointInRange()
{
return CVector2D(CGeneral::GetRandomNumberInRange(min.x, max.x), CGeneral::GetRandomNumberInRange(min.y, max.y));
}

11
src/core/Range2D.h Normal file
View File

@ -0,0 +1,11 @@
#pragma once
class CRange2D
{
CVector2D min, max;
public:
CRange2D(CVector2D _min, CVector2D _max);
bool IsInRange(CVector2D vec);
void DebugShowRange(float, int);
CVector2D GetRandomPointInRange();
};

23
src/core/Range3D.cpp Normal file
View File

@ -0,0 +1,23 @@
#include "common.h"
#include "Range3D.h"
#include "General.h"
CRange3D::CRange3D(CVector _min, CVector _max) : min(_min), max(_max) {}
bool
CRange3D::IsInRange(CVector vec)
{
return min.x < vec.x && max.x > vec.x && min.y < vec.y && max.y > vec.y && min.z < vec.z && max.z > vec.z;
}
void
CRange3D::DebugShowRange(float, int)
{
}
CVector
CRange3D::GetRandomPointInRange()
{
return CVector(CGeneral::GetRandomNumberInRange(min.x, max.x), CGeneral::GetRandomNumberInRange(min.y, max.y),
CGeneral::GetRandomNumberInRange(min.z, max.z));
}

11
src/core/Range3D.h Normal file
View File

@ -0,0 +1,11 @@
#pragma once
class CRange3D
{
CVector min, max;
public:
CRange3D(CVector _min, CVector _max);
bool IsInRange(CVector vec);
void DebugShowRange(float, int);
CVector GetRandomPointInRange();
};