iOS开发之利用链式编程和贝瑟尔曲线来画图
程序员文章站
2022-08-21 14:15:16
ios开发之利用链式和贝瑟尔曲线来画图,关于什么是链式编程思想以及链式编程的好处,网上相关资料很多,这里就不赘述了。著名的ios自动布局库masonry,就是利用链式编程,使用起来简洁,可读性好。仿...
ios开发之利用链式和贝瑟尔曲线来画图,关于什么是链式编程思想以及链式编程的好处,网上相关资料很多,这里就不赘述了。著名的ios自动布局库masonry,就是利用链式编程,使用起来简洁,可读性好。仿照masonry,我写了一个利用链式编程和贝瑟尔曲线实现绘图的分类,使用如下:
- (void)drawrect:(cgrect)rect { [super drawrect:rect]; //画黄线 uibezierpath.wd_path.wd_maker.wd_moveto(30,50).wd_addlineto(100,70).wd_color(uicolor.yellowcolor).wd_linewidth(10).wd_stroke(); //画蓝线 uibezierpath.wd_path.wd_maker.wd_moveto(100,30).wd_addlineto(150,30).wd_color(uicolor.bluecolor).wd_linewidth(3).wd_stroke(); //画红线 uibezierpath.wd_path.wd_maker.wd_moveto(20,200).wd_addlineto(200,200).wd_addlineto(130,300).wd_addlineto(130,450).wd_addlineto(90,380).wd_addlineto(50,200).wd_addlineto(250,450).wd_addlineto(250,450).wd_addlineto(300,380).wd_linewidth(7).wd_linecapstyle(kcglinecapround).wd_linejoinstyle(kcglinejoinround).wd_color(uicolor.redcolor).wd_stroke(); }
效果图:
从上述代码中可以看到,我们利用链式编程可以做到用一行代码实现绘图,有兴趣的小伙伴可以star。