ios-绘图的方式
来源:互联网 发布:软件社区 编辑:程序博客网 时间:2024/06/05 16:04
以下方法都是在drawRect方法中调用的
纯C的方式1
//获取当前绘图上下文 CGContextRef ctx=UIGraphicsGetCurrentContext(); //拼接路径 同时把路径添加到上下文中 CGContextMoveToPoint(ctx, 50, 50);//到这里的时候相当于你笔只是停留在这个位置的上面 CGContextAddLineToPoint(ctx, 100, 100);//已经开始画了笔还没有抬起来 //描边渲染,上下文还在上下文的路径已经拖给了UIView了 CGContextStrokePath(ctx);纯C的方式2
//1、获取当前绘图上下文 CGContextRef ctx = UIGraphicsGetCurrentContext(); //2、拼接路径,这个是可变路径 CGMutablePathRef path=CGPathCreateMutable(); CGPathMoveToPoint(path, NULL, 50, 50); CGPathAddLineToPoint(path, NULL, 100, 100); //3、把路径添加到上下文当中,这个路径是复制出来的也就是说你线在外面先画好,在复制到上下文中 CGContextAddPath(ctx, path); //4、渲染 CGContextStrokePath(ctx); //释放 CGPathRelease(path); //也可以这样 CFRelease(path);C+OC的方式1
//1、获取当前上下文 CGContextRef ctx=UIGraphicsGetCurrentContext(); //2、拼接路径(oc的方式) UIBezierPath * path=[[UIBezierPath alloc]init]; [path moveToPoint:CGPointMake(50, 50)]; [path addLineToPoint:CGPointMake(100, 100)]; //3、把路径添加到上下文当中(oc中的path转成c的path就是加个.CGpath) CGContextAddPath(ctx, path.CGPath); //4、渲染 CGContextStrokePath(ctx);
C+OC的方式2
//1、获取当前上下文 CGContextRef ctx=UIGraphicsGetCurrentContext(); //2、拼接路径(c) CGMutablePathRef path=CGPathCreateMutable(); CGPathMoveToPoint(path, NULL, 50, 50); CGPathAddLineToPoint(path, NULL, 100, 100); //3、拼接路径,接着上面停下来的那个点接着画线,这里把C的path转换成OC的path UIBezierPath * path1=[UIBezierPath bezierPathWithCGPath:path]; [path1 addLineToPoint:CGPointMake(150, 50)]; //4、把路径添加到上下文当中 CGContextAddPath(ctx, path1.CGPath); //5、渲染 CGContextStrokePath(ctx);纯OC的方式
UIBezierPath * path=[UIBezierPath bezierPath]; //拼接路径 [path moveToPoint:CGPointMake(50, 50)]; [path addLineToPoint:CGPointMake(100, 100)]; //渲染,在这里就会自动的帮你获取图形上下文了,帮你把路径添加到上下文当中 [path stroke];
阅读全文
0 0
- ios-绘图的方式
- iOS中自定义绘图的两种实现方式
- iOS --- CoreGraphics中三种绘图context切换方式的区别
- ios (Quartz 2D绘图)各种绘图方式及相机的使用
- ios (Quartz 2D绘图)各种绘图方式及相机的使用
- 用多态的方式绘图???
- iOS的绘图机制
- iOS的绘图机制
- iOS的绘图机制
- iOS 基本的绘图
- iOS绘图详解-多种绘图方式、裁剪、滤镜、移动、CTM
- 绘图的几种方式
- 绘图的五种方式
- IOS 绘图的奇怪现象
- iOS绘图上下文的理解。
- iOS绘图API的使用
- 使用的iOS绘图方法
- IOS绘图的基本步骤
- TensotFlow 应用实例:06-使用matplotlib可视化训练过程
- Relatives 【poj-2407】【欧拉函数】
- Android studio中gradle配置
- Ajax
- spring boot之如何优雅的使用mybatis
- ios-绘图的方式
- TensotFlow 应用实例:07-优化器 Optimizer 介绍
- 图片之间边距消除
- 凸包--Graham扫描法
- ListView使用详解
- Spring系统学习第二篇
- TensotFlow 应用实例:08-使用tensorboard可视化神经网络结构和训练结果
- CSU-ACM2017暑期训练5-三分 E
- CT数据处理