//绘制矩形  (‘起始点’ , ‘目标点’ , ‘填充颜色’)

auto rect=DrawNode::create();

rect->drawRect(Vec2(0,0),Vec2(100,150), Color4F(1.0,0,0,1.0));

this->addChild(rect);

//绘制指定曲率的曲线  ('点数组','张力','段落','颜色')

//参数说明:

//congfig:点数组

//tension:张力

//segments:段落

//color:颜色

auto cardinalspline=DrawNode::create();

auto array = PointArray::create(4);

array->addControlPoint(Vec2(20, 20));

array->addControlPoint(Vec2(40, 10));

array->addControlPoint(Vec2(-10, 10));

array->addControlPoint(Vec2(60, -10));

array->addControlPoint(Vec2(10, 50));

cardinalspline->drawCardinalSpline(array, 3, 10, Color4F(1.0,1.0,1.0,1));

this->addChild(cardinalspline);

//绘制默认曲率的曲线

auto cat=DrawNode::create();

cat->drawCatmullRom(array, 20, Color4F(1.0, 1.0, 1.0, 1.0));

this->addChild(cat);

//绘制圆  参数说明: (‘原点’,‘半径’,‘弧度’,‘分段(越大越接近圆)’,‘原点到弧度的线(bool)’,‘线条x缩放’,‘线条y缩放’,‘颜色’)

auto circle=DrawNode::create();

circle->drawCircle(Vec2(0, 0), 100, 45, 100, false, 1.0, 1.0, Color4F(1.0,1.0,1.0,1));

this->addChild(circle);

//绘制线段          (‘起点’ , ‘终点’ , ‘半线宽’ , ‘填充颜色’)

auto segment=DrawNode::create();

segment->drawSegment(Vec2(0, 0), Vec2(20, 20), 3.0, Color4F(0.4,0.6,0.8,1));

this->addChild(segment);

//绘制三角形         (‘顶点1′ , ‘顶点2′ , ‘顶点3′ , ‘填充颜色’)

auto triangle=DrawNode::create();

triangle->drawTriangle(Vec2(20,11), Vec2(133,44), Vec2(44,133), Color4F(0.5,0.6,0.7,1));

this->addChild(triangle);

//绘制多边形        (‘顶点数组’ , ‘顶点个数’ , ‘填充颜色’ , ‘轮廓粗细’ , ‘轮廓颜色’)

auto polygon=DrawNode::create();

Vec2 verts[]={Vec2(12,22),Vec2(56,66),Vec2(88,98),Vec2(124,54),Vec2(144,88)};//顶点数组

polygon->drawPolygon(verts, 5, Color4F(1.0,0,0,1), 2, Color4F(0,0,1.0,1));

this->addChild(polygon);

//绘制二次贝塞尔图形        (‘起点’ , ‘控制点’ , ‘终点’ , ‘分段数’ , ‘填充颜色’)

auto quad=DrawNode::create();

quad->drawQuadBezier(Vec2(12,10), Vec2(22,33), Vec2(111,111), 20, Color4F(0.1,1.0,0.2,1));

this->addChild(quad);

//绘制三次贝塞尔图形    (‘起点’ , ‘控制点1′ , ‘控制点2′ , ‘终点’ , ‘分段数’ , ‘填充颜色’)

auto cubic=DrawNode::create();

cubic->drawCubicBezier(Vec2(0,0), Vec2(33,23), Vec2(75,96), Vec2(44,33), 22, Color4F(0.7,0,0,1));

this->addChild(cubic);

//绘制线段  ('起点','终点','宽度','颜色')

auto dsegment=DrawNode::create();

dsegment->drawSegment(Vec2(20, 22), Vec2(20,100), 2, Color4F(1.0,0.1,0.8,1));

this->addChild(dsegment);

//绘制线   ('起点','终点','颜色')

auto line=DrawNode::create();

line->drawLine(Vec2(33,33), Vec2(222,222), Color4F(1.0,1.0,0.2,1));

this->addChild(line);

//绘制圆点      (‘位置’ , ‘圆点半径’ , ‘填充颜色’)

auto dot=DrawNode::create();

dot->drawDot(Vec2(0,0), 5, Color4F(1.0, 1.0, 1.0, 1.0));

rect->addChild(dot);

//设置坐标位置

rect->setPosition(visibleSize/2);//设置矩形位置居中

dot->setPosition(Vec2(0, 0));//设置圆点的位置

cardinalspline->setPosition(visibleSize/2);//设置曲线位置

circle->setPosition(visibleSize/2);

segment->setPosition(visibleSize/2);

triangle->setPosition(visibleSize/2);

polygon->setPosition(visibleSize/5);

quad->setPosition(Vec2(230,20));

cubic->setPosition(visibleSize/2);

dsegment->setPosition(Vec2(22,22));

line->setPosition(Vec2(44,22));

cat->setPosition(Vec2( visibleSize.width/2+50,visibleSize.height/2+20));

cocos2d-x中DrawNode常见的图像绘制函数的更多相关文章

  1. Quartz2D常见图形的绘制:线条、多边形、圆

    UI高级 Quartz2D http://ios.itcast.cn  iOS学院 掌握 drawRect:方法的使用 常见图形的绘制:线条.多边形.圆 绘图状态的设置:文字颜色.线宽等 图形上下文状 ...

  2. 学习PHP中好玩的Gmagick图像操作扩展的使用

    在 PHP 的图像处理领域,要说最出名的 GD 库为什么好,那就是因为它不需要额外安装的别的什么图像处理工具,而且是随 PHP 源码一起发布的,只需要在安装 PHP 的时候添加上编译参数就可以了. G ...

  3. iOS开发中一些常见的并行处理

    本文主要探讨一些常用多任务的最佳实践.包括Core Data的多线程访问,UI的并行绘制,异步网络请求以及一些在运行态内存吃紧的情况下处理大文件的方案等.??其实编写异步处理的程序有很多坑!所以,本文 ...

  4. iOS开发中一些常见的并行处理(转)

    本文主要探讨一些常用多任务的最佳实践.包括Core Data的多线程访问,UI的并行绘制,异步网络请求以及一些在运行态内存吃紧的情况下处理大文件的方案等.

其实编写异步处理的程序有很多坑!所以,本文 ...

  5. iOS:quartz2D绘图(处理图像,绘制图像并添加水印)

    绘制图像既可以重写drawRect:方法并在该方法中绘制,也可以不用重写该方法,它有封装好的函数获取自己的图像绘制上下文,即UIGraphicsBeginImageContext(CGSize siz ...

  6. DICOM中几个判断图像方向的tag

    在DICOM标准里,有三个TAG与成像的方向相关. 参考来源:Kitware关于DICOM方向的说明 http://public.kitware.com/IGSTKWIKI/index.php/DIC ...

  7. Python的工具包[2] -> matplotlib图像绘制 -> matplotlib 库及使用总结

    matplotlib图像绘制 / matplotlib image description  目录 关于matplotlib matplotlib库 补充内容 Figure和AxesSubplot的生 ...

  8. Opencv在视频中静态、动态方式绘制矩形框ROI

    Opencv视频处理中的目标跟踪经常用到要在视频上画一个矩形框ROI,标注出要跟踪的物体,这里介绍两种在视频中绘制矩形框的方法,一种是"静态的",一种是"动态的" ...

  9. 从单一图像中提取文档图像:ICCV2019论文解读

    从单一图像中提取文档图像:ICCV2019论文解读 DewarpNet: Single-Image Document Unwarping With Stacked 3D and 2D Regressi ...

随机推荐

  1. WPF随手小记之二 ——改变DataGrid样式

    大部分时候我们并不需要手动改变DataGrid的样式,因为用默认的其实也看得过去,而且在DataGrid中的数据也远比外观重要. 但总有时候,我们需要做点必要的UI修改来使DataGrid更美观. 一 ...

  2. Linux下查看MySQL的安装路径

    Linux下查看mysql.apache是否安装,并卸载. 指令 ps -ef|grep mysql 得出结果 root               ?        :: /bin/sh /usr/ ...

  3. idea中output log4j中文乱码

    1.设置tomcat中的VM optins:-Dfile.encofing=UTF-8 2.idea安装目录bin文件夹中idea.exe.vmoptions.idea64.exe.vmoptions ...

  4. Object instanceof Function和Function instanceof Object

    首先需要确定的是,instanceof是根据原型链来判断是否为某引用类型的实例.所以需要明白Object和Function之间的关系,以下为引用某博客的图片,阐述了javascript对象体系的关系 ...

  5. 简话ASP.NET Web API

    简话ASP.NET Web API 在vs2012中,我们很容易在根据选择的ASP.NET MVC Web应用程序来新建一个Web API应用,聪明的你一定想见得到,Web API和MVC有着某种联系 ...

  6. 凝结时光:ImageMagick 制作 gif

    从去年12.12开始,工作日都会从单位的落地窗向外拍一张照片,有点每日打卡的意思.weekday 是一天不落的,weekend 不是每次都到单位,落了几次. 想法来自上学的时候,有同学在同一个地方,拍 ...

  7. WCF基于MSMQ的事件代理服务

    前言 公司目前楼主负责的项目正在改版升级,对之前的服务也在作调整,项目里有个操作日志的模块,就决定把日志单独提取出来,做个日志服务,所以就有了这篇文章 正文 MSMQ作为消息队列,B/S项目调用日志服 ...

  8. smartcn与IKanalyzer

    开源中文分词框架分词效果对比smartcn与IKanalyzer 项目背景: 某银行呼叫中心工单数据挖掘和分析项目,旨在利用文本计算实现热点聚焦和舆情分析. 一.引言: 中文分词一直是自然语言处理的一 ...

  9. json序列化NHibernate的实体

    在使用nhibernate时,想将实体对象序列化成json字符串,然后打印在日志中. 序列化时会出现问题,应该是因为这个实体被hibernate管理的原因.具体原因没有分析. 解决方案:为实体创建一个 ...

  10. ioc和aop

      IOC容器的基本原理 ioc又称为控制反转.或者依赖注入.为什么叫控制反转呢? 可以这样来看.软件开发中会有很多的类,这些类在一起完成复杂的功能.这些类之间存在了耦合的关系.就如同很多的齿轮,啮合 ...