坏蛋个人原创,欢迎转载,转载请注明地址,坏蛋的专栏地址http://blog.csdn.net/qq634416025
void HelloWorld::tools_drawcircle(CCPoint center, float r)
{
	 float radius = r;
	 const float coef = 2.0f * (float)M_PI / r;
	 vector<CCPoint> vertices;

	 for(unsigned int i = 0;i <= r; i++) {
		 float rads = i*coef;
		 float j = radius * cosf(rads)  + center.x;
		 float k = radius * sinf(rads)  + center.y;
		 vertices.push_back(ccp(j, k));
	 }


	int j = 0;
	for (int i = 0; i < vertices.size(); i++)
	{
		int j = i + 1;
		if (j < vertices.size())
		{
			tools_drawline(vertices.at(i), vertices.at(j));
		}
	}
}


 

void HelloWorld::tools_drawline(CCPoint s, CCPoint e)
{
	target->begin();
	float distance = ccpDistance(s, e);
	for (int i = 0; i < distance; i++)
	{
		float difx = e.x - s.x;
		float dify = e.y - s.y;
		float delta = (float)i / distance;
		bursh->setPosition(
			ccp(s.x + (difx * delta), s.y + (dify * delta)));
		bursh->visit();
	}
	target->end();
}


 

posted on 2013-03-06 12:19  纯洁的坏蛋  阅读(195)  评论(0编辑  收藏  举报