Cocos2d-x 绘制基本图形

在Cocos2d-x中,CCObject都重写了draw函数,我们如果想绘制一个基本类型的图形,可以在此类函数中实现。

在头文件中重写draw函数:

    virtual void draw();

在源文件中实现draw函数:
void HelloWorld::draw()
{
    CCSize winSize = CCDirector::sharedDirector()->getWinSize();
    
    // 设置颜色
    ccDrawColor4B(230,200,100,100);
    
    // 设置线的宽度
    glLineWidth(2);
    
    // 绘制一条直线
    ccDrawLine(CCPointMake(0,0),CCPointMake(winSize.width/2.0,winSize.height/2.0));
    
    //////////////////////////////////////////
    
    // 设置颜色
    ccDrawColor4B(255,255,0);
    
    // 设置像素尺寸
    ccPointSize(30);
    
    // 绘制一个点
    ccDrawPoint(CCPointMake(winSize.width/2.0,winSize.height/2.0));
    
    //////////////////////////////////////////
    
    // 设置颜色
    ccDrawColor4B(0,250,0);
    
    // 绘制圆形
    ccDrawCircle(CCPointMake(winSize.width/2.0,winSize.height/2.0),50,CC_DEGREES_TO_RADIANS(90),false);
    
    //////////////////////////////////////////
    
    // 设置颜色
    ccDrawColor4B(0,255);
    
    // 设置线的宽度
    glLineWidth(5);
    
    // 绘制多边形
    CCPoint vert[] = {ccp(70,150),ccp(150,200),ccp(190,300)};
    ccDrawPoly(vert,4,true);
    
    //////////////////////////////////////////
    
    // 设置颜色
    ccDrawColor4B(255,255);
    
    // 绘制填充的多边形
    CCPoint fill[] = {ccp(0,120),ccp(50,170),ccp(25,ccp(0,170)};
    ccDrawSolidPoly(fill,5,ccc4f(0.5f,0.5f,1,1));
    
    //////////////////////////////////////////
    
    // 绘制贝塞尔曲线
    ccDrawQuadBezier(ccp(0,winSize.height),ccp(winSize.width/2.0,ccp(winSize.width,50);
    
    //////////////////////////////////////////
    
    // 绘制立体的贝塞尔曲线
    ccDrawCubicBezier(ccp(winSize.width/2.0,ccp(winSize.width/2.0+30,winSize.height/2.0+50),ccp(winSize.width/2.0+60,winSize.height/2.0-50),100);
    
    //////////////////////////////////////////
    
    // 绘制填充矩形
    ccDrawSolidRect(ccp(240,50),ccp(300,10),ccc4f(255,177,255));
    
}

相关文章

    本文实践自 RayWenderlich、Ali Hafizji 的文章《...
Cocos-code-ide使用入门学习地点:杭州滨江邮箱:appdevzw@1...
第一次開始用手游引擎挺激动!!!进入正题。下载资源1:从C...
    Cocos2d-x是一款强大的基于OpenGLES的跨平台游戏开发...
1.  来源 QuickV3sample项目中的2048样例游戏,以及最近《...
   Cocos2d-x3.x已经支持使用CMake来进行构建了,这里尝试...