加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Cocos2d-x 绘制基本图形

发布时间:2020-12-14 20:22:45 所属栏目:百科 来源:网络整理
导读:在Cocos2d-x中,CCObject都重写了draw函数,我们如果想绘制一个基本类型的图形,可以在此类函数中实现。 在头文件中重写draw函数: virtual void draw(); 在源文件中实现draw函数: void HelloWorld::draw(){ CCSize winSize = CCDirector::sharedDirector()

在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));
    
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读