73 lines
1.4 KiB
C++
73 lines
1.4 KiB
C++
#ifndef _ENGINE_PUREEDGE_HPP_
|
|
#define _ENGINE_PUREEDGE_HPP_
|
|
#ifndef _COMMON_WINDOWS_HPP_
|
|
#include <common/windows.hpp>
|
|
#endif
|
|
#ifndef _COMMON_POINT_HPP_
|
|
#include <common/point.hpp>
|
|
#endif
|
|
|
|
class PureEdge
|
|
{
|
|
public:
|
|
PureEdge(void);
|
|
~PureEdge();
|
|
void numVertexes(WORD numVertexes);
|
|
void setSrcPoints(Point *lpSrcPoints);
|
|
void setDstPoints(Point *lpDstPoints);
|
|
private:
|
|
short mEdgeDirection;
|
|
WORD mRemainingScanLines;
|
|
WORD mCurrentEdgeEnd;
|
|
long mxSource;
|
|
long mySource;
|
|
long mxSourceStep;
|
|
long mySourceStep;
|
|
WORD mxDestLocation;
|
|
WORD mxStep;
|
|
short mxDirection;
|
|
short mxErrorTerm;
|
|
WORD mxAdjustUp;
|
|
WORD mxAdjustDown;
|
|
WORD mMaxVertex;
|
|
WORD mMinVertex;
|
|
WORD mStartVertex;
|
|
WORD mNumVertexes;
|
|
Point *mlpSrcList;
|
|
Point *mlpDstList;
|
|
};
|
|
|
|
inline
|
|
PureEdge::PureEdge(void)
|
|
: mEdgeDirection(1), mRemainingScanLines(0), mCurrentEdgeEnd(0), mxSource(0.00),
|
|
mySource(0.00), mxSourceStep(0.00), mySourceStep(0.00), mxDestLocation(0),
|
|
mxStep(0), mxDirection(0), mxErrorTerm(0), mxAdjustUp(0), mxAdjustDown(0),
|
|
mMaxVertex(0), mMinVertex(0), mStartVertex(0), mNumVertexes(0), mlpSrcList(0),
|
|
mlpDstList(0)
|
|
{
|
|
}
|
|
|
|
inline
|
|
PureEdge::~PureEdge()
|
|
{
|
|
}
|
|
|
|
inline
|
|
void PureEdge::numVertexes(WORD numVertexes)
|
|
{
|
|
mNumVertexes=numVertexes;
|
|
}
|
|
|
|
inline
|
|
void PureEdge::setSrcPoints(Point *lpSrcPoints)
|
|
{
|
|
mlpSrcList=lpSrcPoints;
|
|
}
|
|
|
|
inline
|
|
void PureEdge::setDstPoints(Point *lpDstPoints)
|
|
{
|
|
mlpDstList=lpDstPoints;
|
|
}
|
|
#endif
|