Quartz2D-二维画图引擎 、自己定义UI控件
//
// MyDraw.m
// 绘图 #import "MyDraw.h" @implementation MyDraw //Quartz2D 是一个二维绘图引擎
//自己定义UI控件
//裁剪图片 - (void)drawRect:(CGRect)rect { draw4Rect();
//drawTriangle(); } void draw4Rect()
{
//获得图形上下文
CGContextRef ctx = UIGraphicsGetCurrentContext(); //绘图形
CGContextAddRect(ctx, CGRectMake(10, 10, 100, 100)); //绘制图形
//CGContextStrokePath(ctx); //设置主要的颜色
CGContextSetRGBFillColor(ctx, 0, 0, 1, 1); //结合UI 能够更简单的设置颜色
[[UIColor redColor]setFill]; //set :同一时候设置实心 空心颜色
//setStroke 设置空心颜色
// setFill 设置实心颜色
[[UIColor whiteColor]set]; //实的图形
CGContextFillPath(ctx);
}
void drawTriangle()
{ // Drawing code
//1.获得图形上下文
CGContextRef ctx = UIGraphicsGetCurrentContext(); //设置头尾部样式
CGContextSetLineCap(ctx, kCGLineCapRound); //2.拼接图形
CGContextMoveToPoint(ctx, 10, 10); //加入一条线段到
CGContextAddLineToPoint(ctx, 100, 100); //设置转折点的样式
//CGContextSetLineJoin(ctx, kCGLineJoinBevel);
CGContextSetLineJoin(ctx, kCGLineJoinRound); CGContextMoveToPoint(ctx, 200, 190); CGContextAddLineToPoint(ctx, 150, 40);
CGContextAddLineToPoint(ctx, 110, 60);
//设置线条的宽度 CGContextSetLineWidth(ctx, 10); //设置颜色
CGContextSetRGBStrokeColor(ctx, 1, 0, 0, 1); //CGContextAddLineToPoint(ctx, 10, 10); //连接起点和终点
//CGContextClosePath(ctx);
//CGContextMoveToPoint(ctx, 20, 20); //3.渲染显示到view 上面
//以空心的形式画出来
CGContextStrokePath(ctx);//仅仅记录当前的颜色状态 我们要是向让两根线条不一样
//那么我们须要渲染两次
//分开几个图形 多渲染几次就能够了 } //设置颜色 @end
Quartz2D-二维画图引擎 、自己定义UI控件的更多相关文章
- Quartz2D二维画图引擎
Quartz2D二维画图引擎 这个二维画图引擎的功能很强大 一般苹果公司xcode 提供给我们的一些UI控件不能满足我们的需求 所以我们会自己定义控件 xcode 提供的全部控件都是由这个画图引擎画出 ...
- Agg vs. Cairo 二维绘图引擎之比较和选择 .
Agg vs. Cairo 二维绘图引擎之比较和选择 cheungmine 当今时代对于作为二维图形软件开发者, 是幸运的.因为除了Windows GDI/GDI+之外,我们还有很多其他的选择.而且这 ...
- 微信二维码引擎OpenCV开源研究
<微信二维码引擎OpenCV开源研究> 一.编译和Test测试 opencv_wechat_qrcode的编译需要同时下载opencv(https://github.com/ ...
- grootJS ui控件定义
index13.html <html><head> <title>ui控件定义</title> <script src="jquery- ...
- AppleWatch___学习笔记(二)UI布局和UI控件
1.UI布局 直接开发,你会发现Apple Watch并不支持AutoLayout,WatchKit里有个类叫做WKInterfaceGroup,乍一看像是UIView,但是这货其实是用来布局的.从 ...
- 《深入理解Windows Phone 8.1 UI控件编程》基于最新的Runtime框架
<深入理解Windows Phone 8.1 UI控件编程>本书基于最新的Windows Phone 8.1 Runtime SDK编写,全面深入地论述了最酷的UI编程技术:实现复杂炫酷的 ...
- 【Unity】8.1 Unity内置的UI控件
分类:Unity.C#.VS2015 创建日期:2016-04-27 一.简介 Unity 5.x内置了-套完整的GUI系统,提供了从布局.控件到皮肤的-整套GUI解决方案,因此可直接利用它做出各种风 ...
- Silverlight项目笔记1:UI控件与布局、MVVM、数据绑定、await/async、Linq查询、WCF RIA Services、序列化、委托与事件
最近从技术支持转到开发岗,做Silverlight部分的开发,用的Prism+MVVM,框架由同事搭好,目前做的主要是功能实现,用到了一些东西,侧重于如何使用,总结如下 1.UI控件与布局 常用的主要 ...
- Android4.0 -- UI控件之 Menu 菜单的的使用(三)
上一讲 [Android 开发]:UI控件之 Menu 菜单的的使用(二) 我们讲解了创建上下文菜单的第一种使用方式:Creating a floating context menu [创建悬浮的上下 ...
随机推荐
- [leetcode tree]96. Unique Binary Search Trees
Given n, how many structurally unique BST's (binary search trees) that store values 1...n? For examp ...
- BZOJ 2118 墨墨的等式(最短路)
[题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=2118 [题目大意] 求a1x1+a2y2+…+anxn=B在B的取值范围,有多少B可以 ...
- 让screen帮助你协同工作
Screen是系统管理员手中的一件利器,下面我把它介绍给你,相信你会和我一样,认可这个非常棒的软件 一,什么情况下会用到screen? 比如说,我们在运行一个非常费时间的程序,注意:可能我们是在通 ...
- python及其模块下载集合
1)python平台 https://www.python.org/downloads/ 2)打包工具 cx-freeze(python3以上版本打包工具) http://cx-freeze.sour ...
- opencv hog算子
梯度直方图特征(HOG) 是一种对图像局部重叠区域的密集型描述符, 它通过计算局部区域的梯度方向直方图来构成特征.Hog特征结合SVM分类器已经被广泛应用于图像识别中,尤其在行人检测中获得了极大的成功 ...
- poj 1218 THE DRUNK JAILER
THE DRUNK JAILER Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 23358 Accepted: 1472 ...
- SyncTrayzor -- Windows tray utility / filesystem watcher / launcher for syncthing
SyncTrayzor is a little tray utility for Syncthing on Windows. It hosts and wraps Syncthing, making ...
- IDA Supported Processors
IDA supports more than 50 families of processors. The source code of some of the processor modules i ...
- perf 工具介绍3
http://blog.chinaunix.net/uid-10540984-id-3854969.html http://blog.csdn.net/zhangskd/article/details ...
- Windows程序调试系列: 使用VC++生成调试信息 转
Windows程序调试系列: 使用VC++生成调试信息 ZhangTao,zhangtao.it@gmail.com, 译自 “Generating debug information with Vi ...