15.5. Drawing Lines

Problem

You simply want to be able to draw lines on a graphics context.

Solution

Retrieve the handle to your graphics context and then use the CGContextMoveToPoint and the CGContextAddLineToPoint functions to draw your line.

Discussion

When we talk about drawing shapes in iOS or OS X, we are implicitly talking about paths. What are paths, you may ask? A path is constructed from one or more series of points drawn on a screen. There is a big difference between paths and lines. A path can contain many lines, but a line cannot contain many paths. Think of paths as series of points—it’s as simple as that.

Lines have to be drawn using paths. Specify the start and end points, and then ask Core Graphics to fill that path for you. Core Graphics realizes that you have created a line on that path, and will paint that path for you using the color that you specified (see Recipe 15.3).

We will be talking about paths more in-depth later (see Recipe 15.6), but for now let’s focus on using paths to create straight lines. To do this, follow these steps:

  1. Choose a color on your graphics context (see Recipe 15.3).

  2. Retrieve the handle to the graphics context, using the UIGraphicsGetCurrentContext function.

  3. Set the starting point for your line using the CGContextMoveToPoint procedure.

  4. Move your pen on the graphics context using the CGContextAddLineToPoint procedure to specify the ending point of your line.

  5. Create the path that you have laid out using the CGContextStrokePath procedure. This procedure ...

Get iOS 5 Programming Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.