www.pudn.com > SurfWareNew06.3.5(LYW).rar > FitPtContainer.cpp


// FitPtContainer.cpp: implementation of the CFitPtContainer class. 
// 
////////////////////////////////////////////////////////////////////// 
 
#include "stdafx.h" 
#include "surfware.h" 
#include "FitPtContainer.h" 
#include "Nurbs_Lib/NURBS_Vector.h" 
#include "include/PredefineData.h" 
 
#ifdef _DEBUG 
#undef THIS_FILE 
static char THIS_FILE[]=__FILE__; 
#define new DEBUG_NEW 
#endif 
 
////////////////////////////////////////////////////////////////////// 
// Construction/Destruction 
////////////////////////////////////////////////////////////////////// 
 
CFitPtContainer::CFitPtContainer() 
{ 
 
} 
 
CFitPtContainer::~CFitPtContainer() 
{ 
 
} 
 
void CFitPtContainer::add(Point* pt) 
{ 
	PlPoint3Df pt1(pt->GetX(),pt->GetY(),pt->GetZ()); 
 
	m_lstFitPtList.add(pt1); 
} 
 
void CFitPtContainer::DisplayObject() 
{ 
	if(m_lstFitPtList.GetSize()==0) return; 
 
	glColor3ub(255,0,0);	 
	 
	glPointSize(3.0); 
	 
	glBegin(GL_POINTS); 
	 
	Point * pt; 
	 
	m_lstFitPtList.goToFirst(); 
 
	for(int i=0;idata; 
		glVertex3f(pt->GetX(), pt->GetY(),pt->GetZ()); 
		m_lstFitPtList.goToNext(); 
	} 
	glEnd(); 
 
} 
 
Point* CFitPtContainer::GetElement(int index) 
{ 
	Point  *pt=new Point; 
	PlPoint3Df* pt1=m_lstFitPtList.goToFirst()->data; 
	 
	 
	for(int i=1;i<=index;i++) 
		pt1=m_lstFitPtList.goToNext()->data; 
	 
	pt->SetX(pt1->GetX()); 
	pt->SetY(pt1->GetY()); 
	pt->SetZ(pt1->GetZ()); 
 
    return pt; 
} 
 
void CFitPtContainer::Reset() 
{ 
	m_lstFitPtList.Reset(); 
} 
 
 
int CFitPtContainer::GetSize() 
{ 
	return m_lstFitPtList.GetSize(); 
} 
 
BasicList_Pt& CFitPtContainer::GetFitPtList() 
{ 
	return m_lstFitPtList; 
}