IOS 绘制三角形的实例详解
先上效果图

上面三角形的代码
?| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
- (void)ljTestView
{
CGPoint piont1;
piont1.x = 170;
piont1.y = 100;
CGPoint piont2;
piont2.x = 50;
piont2.y = 200;
CGPoint piont3;
piont3.x = 220;
piont3.y = 200;
ljDrawRect *_ljView = [[ljDrawRect alloc]initStartPoint:piont1 middlePoint:piont2 endPoint:piont3 color:[UIColor redColor]];
_ljView.frame = CGRectMake(0, 64, kDEVICEWIDTH, kDEVICEHEIGHT - 64);
_ljView.backgroundColor = [UIColor yellowColor];
[self.view addSubview:_ljView];
}
|
画三角形的类
?| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
#import "ljDrawRect.h"
@interface ljDrawRect ()
{
CGPoint _startPoint;
CGPoint _middlePoint;
CGPoint _endPoint;
UIColor *_color;
}
@end
@implementation ljDrawRect
#pragma mark -
#pragma mark - method
- (instancetype)initStartPoint:(CGPoint)startPoint
middlePoint:(CGPoint)middlePoint
endPoint:(CGPoint)endPoint
color:(UIColor*)color
{
self = [super init];
if (self)
{
_startPoint = startPoint;
_middlePoint = middlePoint;
_endPoint = endPoint;
_color = color;
self.backgroundColor = [UIColor clearColor];
}
return self;
}
- (void)drawRect:(CGRect)rect
{
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextBeginPath(context);//标记
CGContextMoveToPoint(context, _startPoint.x, _startPoint.y);
CGContextAddLineToPoint(context,_middlePoint.x, _middlePoint.y);
CGContextAddLineToPoint(context,_endPoint.x, _endPoint.y);
CGContextClosePath(context);//路径结束标志,不写默认封闭
[_color setFill]; //设置填充色
[_color setStroke];//边框也设置为_color,否则为默认的黑色
CGContextDrawPath(context, kCGPathFillStroke);//绘制路径path
}
@end
|
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
原文链接:http://blog.csdn.net/robinson_911/article/details/74012446








发表评论
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。