`
zl4393753
  • 浏览: 339078 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

iphone 绘图 虚线的画法

阅读更多
虚线:
CGContextSetStrokeColorWithColor(myContext, [UIColor blackColor].CGColor);
CGContextSetLineDash (myContext,phase,lengths,2);
CGContextClosePath(myContext);
CGContextStrokePath(myContext);


切线:
An arc may be drawn by specifying two tangent points and a radius using the CGContextAddArcToPoint() function:
- (void)drawRect:(CGRect)rect {

        CGContextRef context = UIGraphicsGetCurrentContext();

        CGContextSetLineWidth(context, 2.0);

        CGContextSetStrokeColorWithColor(context, [UIColor blueColor].CGColor);

        CGContextMoveToPoint(context, 100, 100);
        CGContextAddArcToPoint(context, 100,200, 300,200, 100);
        CGContextStrokePath(context);
}





Drawing an Ellipse or Circle
Circles and ellipses are drawn by defining the rectangular area into which the shape must fit and then calling the CGContextAddEllipseInRect() function:
- (void)drawRect:(CGRect)rect {

        CGContextRef context = UIGraphicsGetCurrentContext();

        CGContextSetLineWidth(context, 2.0);

        CGContextSetStrokeColorWithColor(context, [UIColor blueColor].CGColor);

        CGRect rectangle = CGRectMake(60,170,200,80);

        CGContextAddEllipseInRect(context, rectangle);

        CGContextStrokePath(context);
}






Drawing a Cubic Bézier Curve
A cubic Bézier curve may be drawn by moving to a start point and then passing two control points and an end point through to the CGContextAddCurveToPoint() function:
- (void)drawRect:(CGRect)rect {

        CGContextRef context = UIGraphicsGetCurrentContext();

        CGContextSetLineWidth(context, 2.0);

        CGContextSetStrokeColorWithColor(context, [UIColor blueColor].CGColor);

        CGContextMoveToPoint(context, 10, 10);

        CGContextAddCurveToPoint(context, 0, 50, 300, 250, 300, 400);

        CGContextStrokePath(context);
}






Drawing a Quadratic Bézier Curve
A quadratic Bézier curve is drawn using the CGContextAddQuadCurveToPoint() function, providing a control and end point as arguments having first moved to the start point:
- (void)drawRect:(CGRect)rect {

        CGContextRef context = UIGraphicsGetCurrentContext();

        CGContextSetLineWidth(context, 2.0);

        CGContextSetStrokeColorWithColor(context, [UIColor blueColor].CGColor);

        CGContextMoveToPoint(context, 10, 200);

        CGContextAddQuadCurveToPoint(context, 150, 10, 300, 200);

        CGContextStrokePath(context);
}





Dashed Line Drawing
So far in this chapter we have performed all our drawing with a solid line. Quartz also provides support for drawing dashed lines. This is achieved via the Quartz CGContextSetLineDash() function which takes as its arguments the following:
context – The graphics context of the view on which the drawing is to take place
phase - A floating point value that specifies how far into the dash pattern the line starts
lengths – An array containing values for the lengths of the painted and unpainted sections of the line. For example an array containing 5 and 6 would cycle through 5 painted unit spaces followed 6 unpainted unit spaces.
count – A count of the number of items in the lengths array
For example, a [2,6,4,2] lengths array applied to a curve drawing of line thickness 5.0 will appear as follows:
The corresponding drawRect code that drew the above line reads as follows:
- (void)drawRect:(CGRect)rect {

        CGContextRef context = UIGraphicsGetCurrentContext();

        CGContextSetLineWidth(context, 5.0);

        CGContextSetStrokeColorWithColor(context, [UIColor blueColor].CGColor);

        CGFloat dashArray[] = {2,6,4,2};

        CGContextSetLineDash(context, 3, dashArray, 4);

        CGContextMoveToPoint(context, 10, 200);

        CGContextAddQuadCurveToPoint(context, 150, 10, 300, 200);

        CGContextStrokePath(context);
}





















  • 大小: 12.7 KB
  • 大小: 17 KB
  • 大小: 17.1 KB
  • 大小: 16.2 KB
  • 大小: 15 KB
分享到:
评论

相关推荐

    NXDrawKit, NXDrawKit是一款简单而简单但实用的iPhone绘图工具.zip

    NXDrawKit, NXDrawKit是一款简单而简单但实用的iPhone绘图工具 它刚开始为我的个人iPhone应用。 但是,它不能像你所需的那样定制,你可以使用平滑徒手绘制视图查看。 我为使用 Canvas 制作了 Palette 和 ToolBar,...

    iPhone/iPad 绘图应用 Brushes.zip

    iPhone/iPad 绘图应用 Brushes ,Brushes 是一个绘图应用,支持 iPhone, iPod touch 和 iPad。

    iphone绘图iphone绘图

    ### 关于Quartz 2D在iPhone应用开发中的应用 #### 一、Quartz 2D概述 Quartz 2D是一种高级的二维图形引擎,适用于iPhone应用程序开发以及所有Mac OS X应用程序环境(内核之外)。它提供了低级别的轻量级2D渲染,...

    swift-NXDrawKit是一个简单和易于使用的iPhone绘图工具

    Swift-NXDrawKit 是一款专为 iPhone 设计的轻量级绘图库,它提供了丰富的功能,让开发者能够轻松地在 iOS 应用程序中集成画板功能。这个库是用 Swift 语言编写的,因此它充分利用了 Swift 的强大特性和易用性,使得...

    iphone开发的绘图软件

    C 开发的绘图程序, 包括直线,椭圆 ,矩形,曲线,撤销,清屏,颜色和线性设定,图片保存,以及相册中的图片处理功能(图片移动,放大,缩小),以及其他各种功能,集各种功能与一身,代码清晰,简洁易懂,非常适合iphone初学者.

    iPhone狂:约会iPhone

    根据提供的标题“iPhone狂:约会iPhone”以及描述“iPhone狂:约会iPhone”,我们可以理解这篇文章主要聚焦于iPhone的相关内容。然而,由于正文部分并未提供具体的信息或数据,我们将基于标题和描述来探讨与iPhone...

    Beginning iPhone Development: Exploring the iPhone SDK

    ### 关于《Beginning iPhone Development: Exploring the iPhone SDK》的知识点总结 #### 一、书籍简介与适用对象 《Beginning iPhone Development: Exploring the iPhone SDK》是一本面向初学者的iPhone应用程序...

    c#绘图源代码

    【标题】"C#绘图源代码"涵盖了C#编程语言在图形绘制方面的应用,主要集中在使用C#的图形库和API进行图形界面的设计与实现。C#是一种面向对象的编程语言,它提供了丰富的功能来支持图形用户界面(GUI)的创建,包括...

    axure iphone手机元件库原型库

    此外,这个库可能还包含了iPhone的屏幕尺寸适配元素,例如针对不同尺寸的iPhone(如iPhone SE、iPhone 8、iPhone X系列)的布局和组件。 使用这个元件库,原型设计师无需从零开始绘制每个组件,可以直接拖放这些...

    《Iphone开发基础教程》第十二章实用Quartz和OpenGL绘图(之Quartz绘图)

    《Iphone开发基础教程》第十二章实用Quartz和OpenGL绘图(之Quartz绘图),源代码下载!具体的讲解在我的blog上面,blog.sina.com.cn/wanmeiguanjun.欢迎指点!

    iPhone 11维修资料

    《iPhone 11维修资料详解》 在当今的科技时代,智能手机已经成为我们日常生活的重要组成部分,尤其是像iPhone 11和iPhone 11 Pro这样的高端设备。这些设备集成了先进的技术,为用户带来了卓越的体验。然而,随着...

    axureiPhone机型元件库

    对于iPhone元件库,其涵盖了多种iPhone机型,例如iPhone SE、iPhone 6/6S/7/8系列、iPhone X/XS系列、iPhone XR、iPhone 11系列、iPhone 12系列以及iPhone 13系列等。这些模型不仅包括手机的外观,还可能包括屏幕...

    iPhone提示音大全

    在IT领域,特别是移动设备部分,苹果公司的iPhone一直以其独特的用户体验和设计著称。其中,iPhone的提示音是用户日常操作中不可或缺的一部分,它们为用户提供了一系列声音反馈,以告知用户各种事件的发生。在这个名...

    iphone13 ios ipcc52.0.zip

    标题 "iphone13 ios ipcc52.0.zip" 暗示了这可能是一个针对iPhone 13设备的iOS更新文件,其中包含了IPCC(International Provider Configuration)文件。IPCC文件是苹果设备用于设置运营商配置的重要文件,它通常...

    Axure元件库iPhone

    "Axure元件库iPhone"是专门为设计iPhone应用原型而定制的一套元件集合。该库不仅提高了设计效率,还确保了设计的准确性和一致性,因为这些元件都是按照iOS设备的界面规范和设计风格制作的。 首先,我们来看一下...

    iphone X iphone 8 原型框

    iphone X iphone 8 原型框 iphone X iphone 8 原型框

    电脑免费发表iPhone说说

    想在普通电脑上让你发表的空间说说显示来自iPhone嘛?火狐专用浏览器就可以实现这个效果!不但可以显示发布的说说来自iPhone触屏版,还可以显示iPad或android,绝对给力,不管你信不信,反正我是信了,我已经测试100%...

    Iphone XS 电路原理图.pdf

    iPhone XS 电路原理图 iPhone XS 电路原理图是苹果公司生产的 iPhoneXS 手机的电路原理图。该图纸详细介绍了 iPhoneXS 手机的电路设计,包括电源管理、射频组件、天线设计、存储器设计、处理器设计等方面的技术细节...

    iphone4完整电路图PCB

    《iPhone 4 完整电路图PCB详解》 iPhone 4是苹果公司在2010年推出的一款标志性智能手机,其设计与技术在当时堪称业界领先。本篇将深入解析iPhone 4的完整电路图PCB(Printed Circuit Board),帮助读者理解这款设备...

Global site tag (gtag.js) - Google Analytics