Initial
This commit is contained in:
55
mesh/segment.cpp
Normal file
55
mesh/segment.cpp
Normal file
@@ -0,0 +1,55 @@
|
||||
#include <mesh/segment.hpp>
|
||||
#include <common/purehdc.hpp>
|
||||
|
||||
Segment::Segment()
|
||||
{
|
||||
}
|
||||
|
||||
Segment::~Segment()
|
||||
{
|
||||
}
|
||||
|
||||
Segment::Segment(const GDIPoint &firstPoint,const GDIPoint &secondPoint,WORD vectorIndex)
|
||||
{
|
||||
mFirstPoint=firstPoint;
|
||||
mSecondPoint=secondPoint;
|
||||
mVectorIndex=vectorIndex;
|
||||
}
|
||||
|
||||
Segment::Segment(const Segment &someSegment)
|
||||
{
|
||||
mFirstPoint=someSegment.mFirstPoint;
|
||||
mSecondPoint=someSegment.mSecondPoint;
|
||||
mVectorIndex=someSegment.mVectorIndex;
|
||||
}
|
||||
|
||||
WORD Segment::operator==(const Segment &someSegment)const
|
||||
{
|
||||
return ((mFirstPoint==someSegment.mFirstPoint &&
|
||||
mSecondPoint==someSegment.mSecondPoint)||
|
||||
(mFirstPoint==someSegment.mSecondPoint &&
|
||||
mSecondPoint==someSegment.mFirstPoint));
|
||||
}
|
||||
|
||||
void Segment::operator=(const Segment &someSegment)
|
||||
{
|
||||
mFirstPoint=someSegment.mFirstPoint;
|
||||
mSecondPoint=someSegment.mSecondPoint;
|
||||
mVectorIndex=someSegment.mVectorIndex;
|
||||
}
|
||||
|
||||
void Segment::drawSegment(PureDevice &displayDevice,HPEN hPen,bool setROP)const
|
||||
{
|
||||
GDIPoint currentPosition;
|
||||
HPEN hOldPen(0);
|
||||
int saveMode;
|
||||
|
||||
if(setROP)saveMode=::SetROP2(displayDevice,R2_NOT);
|
||||
if(hPen)hOldPen=(HPEN)::SelectObject(displayDevice,hPen);
|
||||
::GetCurrentPositionEx(displayDevice,(POINT FAR*)¤tPosition);
|
||||
::MoveToEx(displayDevice,mFirstPoint.x(),mFirstPoint.y(),(POINT FAR*)¤tPosition);
|
||||
::LineTo(displayDevice,mSecondPoint.x(),mSecondPoint.y());
|
||||
::MoveToEx(displayDevice,currentPosition.x(),currentPosition.y(),(POINT FAR*)&mSecondPoint);
|
||||
if(hOldPen)::SelectObject(displayDevice,hOldPen);
|
||||
if(setROP)::SetROP2(displayDevice,saveMode);
|
||||
}
|
||||
Reference in New Issue
Block a user