www.pudn.com > 1012.zip > CircleNode.cpp, change:2003-01-02,size:1193b


// CircleNode.cpp: implementation of the CCircleNode class. 
// 
////////////////////////////////////////////////////////////////////// 
 
#include "stdafx.h" 
#include "SCAD.h" 
#include "CircleNode.h" 
#include "config.h" 
#include  
#ifdef _DEBUG 
#undef THIS_FILE 
static char THIS_FILE[]=__FILE__; 
#define new DEBUG_NEW 
#endif 
 
////////////////////////////////////////////////////////////////////// 
// Construction/Destruction 
////////////////////////////////////////////////////////////////////// 
 
CCircleNode::CCircleNode() 
{ 
	m_ptCenter.Set(10.0,10.0,0.0); 
} 
 
CCircleNode::~CCircleNode() 
{ 
 
} 
 
void CCircleNode::Draw() 
{ 
	glColor4f(m_cColor.red,m_cColor.green,m_cColor.blue,m_cColor.alpha); 
	 
	glPushMatrix(); 
	glTranslatef(m_ptCenter.x,m_ptCenter.y,0.0); 
	glBegin(GL_LINE_LOOP ); 
	int iNum = 72; 
	double dStepAng = 3.1415926 * 2.0 /iNum; 
	double x,y; 
	for(int i = 0; i<= iNum;i++) 
	{ 
		x= dRadius* cos(i*dStepAng); 
		y = dRadius*sin(i*dStepAng); 
		glVertex2f(x,y); 
	} 
	glEnd(); 
	glPopMatrix(); 
} 
 
void CCircleNode::SetCenter(const CPoint3d &pt) 
{ 
	m_ptCenter  = pt; 
} 
 
void CCircleNode::SetRadius(double dIn) 
{ 
	dRadius = dIn; 
}