//-----------------------------------------------------------------------------+ // Copyright (C), 1998-2007, Beijing Tangent Software Co. Ltd. // = FileName : TPtList2.cpp // = Version : ver2.0 // = Author : xlc // = CreateDate : 2002-09-09 // = Description: 类的定义 // = Maintainers: // //-----------------------------------------------------------------------------+ #include "StdAfx.h" #include "TPtList2.h" TPtList2::TPtList2() : pa(0) { } TPtList2::TPtList2(const TGPoint&pt,double PA) : TPtList1(pt),pa(PA) { } TPtList2::TPtList2(const TGMLine2D& mline) : pa(0) { TPtList2*p = this; p->Data() = mline.GetVertex(0); for(long i = 1; i < mline.GetVertexNum(); i++) { p->CNNext(new TPtList2(mline.GetVertex(i))); p = p->Next(); } if(mline.IsClosed()) { p->CNNext(this); } } TPtList2::~TPtList2() { } TPtList2 *TPtList2::Next()const { return (TPtList2*)(TPtList1::Next()); } TPtList2 *TPtList2::GetTail()const { return (TPtList2*)(TPtList1::GetTail()); } bool TPtList2::operator ==(const TPtList2&pt)const { double d=pa-pt.pa; return EQUAL_ZERO(d); } bool TPtList2::operator !=(const TPtList2&pt)const { return !(*this==pt); } bool TPtList2::operator >(const TPtList2&pt)const { return UP_ZERO(pa-pt.pa); } bool TPtList2::operator <(const TPtList2&pt)const { return DOWN_ZERO(pa-pt.pa); }