63 lines
1.2 KiB
C++
63 lines
1.2 KiB
C++
#ifndef _ENGINE_TRIANGLE_HPP_
|
|
#define _ENGINE_TRIANGLE_HPP_
|
|
#ifndef _COMMON_WINDOWS_HPP_
|
|
#include <common/windows.hpp>
|
|
#endif
|
|
#ifndef _COMMON_POINT_HPP_
|
|
#include <common/point.hpp>
|
|
#endif
|
|
|
|
class Triangle
|
|
{
|
|
public:
|
|
enum {VectorPoints=3};
|
|
Triangle(void);
|
|
Triangle(const Triangle &someTriangle);
|
|
virtual ~Triangle();
|
|
Triangle &operator=(const Triangle &someTriangle);
|
|
BOOL operator==(const Triangle &someTriangle);
|
|
Point &operator[](WORD vectorIndex);
|
|
void orderPoints(void);
|
|
private:
|
|
Point mTriangle[VectorPoints];
|
|
};
|
|
|
|
inline
|
|
Triangle::Triangle(void)
|
|
{
|
|
}
|
|
|
|
inline
|
|
Triangle::Triangle(const Triangle &someTriangle)
|
|
{
|
|
*this=someTriangle;
|
|
}
|
|
|
|
inline
|
|
Triangle::~Triangle()
|
|
{
|
|
}
|
|
|
|
inline
|
|
Triangle &Triangle::operator=(const Triangle &someTriangle)
|
|
{
|
|
mTriangle[0]=someTriangle.mTriangle[0];
|
|
mTriangle[1]=someTriangle.mTriangle[1];
|
|
mTriangle[2]=someTriangle.mTriangle[2];
|
|
return *this;
|
|
}
|
|
|
|
inline
|
|
BOOL Triangle::operator==(const Triangle &someTriangle)
|
|
{
|
|
return (mTriangle[0]==someTriangle.mTriangle[0]&&
|
|
mTriangle[1]==someTriangle.mTriangle[1]&&
|
|
mTriangle[2]==someTriangle.mTriangle[2]);
|
|
}
|
|
|
|
inline
|
|
Point &Triangle::operator[](WORD vectorIndex)
|
|
{
|
|
return mTriangle[vectorIndex];
|
|
}
|
|
#endif |