How to draw a wavy line on an iOS device

I have many points building a line. How can I draw a wavy line through these points?

+4
source share
3 answers

Use CGContextRef for iOS.

WavyView.h

#import <UIKit/UIKit.h> @interface WavyView : UIView { } @end 

WavyView.m

 #import "WavyView.h" @implementation WavyView - (id)initWithFrame:(CGRect)frame { self = [super initWithFrame:frame]; return self; } - (void)drawRect:(CGRect)rect { CGContextRef context = UIGraphicsGetCurrentContext(); CGContextSetLineWidth(context, 2.0); CGContextSetStrokeColorWithColor(context, [UIColor blueColor].CGColor); CGContextBeginPath(context); CGContextMoveToPoint(context, 100, 100); CGContextAddCurveToPoint(context,125,150,175,150,200,100); CGContextAddCurveToPoint(context,225,50,275,75,300,200); CGContextStrokePath(context); } - (void)dealloc { [super dealloc]; } @end 

Result:

The wave

+9
source

Example:

 - (void)drawRect:(NSRect)rect { NSBezierPath *curve = [NSBezierPath bezierPath]; [curve moveToPoint:NSMakePoint(0,50)]; [curve relativeCurveToPoint:NSMakePoint(150,50) controlPoint1:NSMakePoint(50,100) controlPoint2:NSMakePoint(100,0)]; [[NSColor redColor] set]; [curve stroke]; } 

Result:

Curve.png

+7
source

create an NSBezierPath and use your points as control points.

-1
source

All Articles