游戏中常见的属性雷达图
那么在cocos2dx中如何实现?并且可以根据属性的变化来变化圆中的五边形偏向。
首先想到的是DrawNode类来实现基本绘图,先在屏幕上画一个圆,再画等分该圆的五条线,最后根据线上五点的坐标来确定五边形。
//创建一个父节点node,使得该雷达图位于屏幕的中心
auto node = Node::create();
node->setPosition(visibleSize.width/2,visibleSize.height/2);
this->addChild(node);
//创建DrawNode的对象draw,用该对象来实现基本绘图
auto draw = DrawNode::create();
node->addChild(draw);
//属性的值的数组,以后只要在该数组上修改属性值即可实现五边形的偏向随属性的变化而变化
float l[]={
30,40,60,90,30};
//点数组
Vec2 vecs[5];
//利用数学函数确定五边形的点的坐标
vecs[0] = Vec2(-l[0]*cos(M_PI/180*18),l[0]*sin(M_PI/180*18));//Point(-100,0);
vecs[1] = Vec2(l[1]*cos(M_PI/180*90),l[