移动应用软件开发综合实训(基于iOS平台)-2017 Quart2D绘图 Quartz 2D 绘图基础.docx

移动应用软件开发综合实训(基于iOS平台)-2017 Quart2D绘图 Quartz 2D 绘图基础.docx

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Quartz 2D 绘图基础 Quartz 2D是一个二维绘图引擎。Quartz 2D的API是C语言,来自于CoreGraphics框架。 Quartz 2D以PDF的规范为基础的图形库,用来绘制二维文字和图形,允许相同的绘图指令在任何装置上,使用可以得到的最佳分辨率,产生相同的输出。这里介绍一下一些基本绘图操作。 一. 绘制直线? ? 代码如下(这些需要重写的drawRect方法中调用): CGContextRef context = UIGraphicsGetCurrentContext();// 1. 获取一个与视图相关联的上下文 // 2. 构建路径 CGContextBeginPath(context); // 2.1 设置上下文路径起点 CGContextMoveToPoint(context, 50, 50); // 2.2 增加路径内容 CGContextAddLineToPoint(context, 150, 150); // 3. 保存当前上下文 CGContextSaveGState(context); // 4. 设置上下文状态 // 4.1 设置边线颜色 CGContextSetRGBStrokeColor(context, 1, 0, 0, 1); // 4.2 设置线宽 CGContextSetLineWidth(context, 10); // 4.4 设置线段连接样式 CGContextSetLineJoin(context, kCGLineJoinBevel); // 4.5 设置线段收尾样式 CGContextSetLineCap(context, kCGLineCapRound); // 5. 绘制路径 // 与上一行等效 CGContextStrokePath(context); // 6. 恢复上下文 CGContextRestoreGState(context); // 7. 再次绘制 CGContextSetRGBStrokeColor(context, 0, 0, 1, 1); CGContextMoveToPoint(context, 50, 200); CGContextAddLineToPoint(context, 200, 200); CGContextStrokePath(context); 二.画圆弧? 1.画不填充圆,效果如图? ? 代码如下: CGContextRef context = UIGraphicsGetCurrentContext(); [[UIColor redColor] set]; CGContextAddArc(context, 160, 230, 100, M_PI, -M_PI, 0); CGContextStrokePath(context); 2.画实心圆弧,效果如图? ? 代码如下: // 1. 获取一个与视图相关联的上下文 CGContextRef context = UIGraphicsGetCurrentContext(); // 设置颜色 [[UIColor greenColor]setFill]; // 2. 增加圆形的路径 CGContextAddEllipseInRect(context, CGRectMake(50, 50, 200, 200)); // 3. 画圆 CGContextFillPath(context); 三:绘制渐变? 效果如图:? 代码如下: // 定义渐变引用CGGradientRef CGGradientRef gradient; // 定义色彩空间引用 CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB(); //定义渐变颜色组件 //每四个数一组,分别对应r,g,b,透明度 CGFloat components[8] = {1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 1.0}; //定义颜色渐变位置 // 第一个颜色开始渐变的位置 // 第二个颜色结束渐变的位置 CGFloat locations[2] = {1,0}; //创建颜色渐进 gradient = CGGradientCreateWithColorComponents(colorSpace, components, locations, 2); /

文档评论(0)

WanDocx + 关注
实名认证
内容提供者

大部分文档都有全套资料,如需打包优惠下载,请留言联系。 所有资料均来源于互联网公开下载资源,如有侵权,请联系管理员及时删除。

1亿VIP精品文档

相关文档