项目中会使用坐标图来展示数据的变换,那么就会使用一些ios中的绘制线条的功能,例如:
//**两点之间画实线
-(void)drawLineFrom:(CGPoint)origion to:(CGPoint)endPoint context:(CGContextRef)context lineColor:(UIColor *)lineColor{
//**画线 指定背景 两点 和颜色
CGContextSetLineWidth(context, 2.0f);
CGContextSetStrokeColorWithColor(context, lineColor.CGColor);
CGContextMoveToPoint(context, origion.x,origion.y);
CGContextAddLineToPoint(context,endPoint.x,endPoint.y);
CGContextStrokePath(context);
CGContextClosePath(context);
}
//**两点之间画虚线
-(void)drawDashedLineFrom:(CGPoint)origion to:(CGPoint)endPoint context:(CGContextRef)context lineColor:(UIColor *)lineColor{
CGFloat lengths[] = { 3,3};
CGFloat lengthsEnd[]= { 3,0};
//**画线 指定背景 两点 和颜色
CGContextSetLineDash(context, 0, lengths, 2);
CGContextSetLineWidth(context, 0.5f);
CGContextSetStrokeColorWithColor(context, lineColor.CGColor);
CGContextMoveToPoint(context, origion.x,origion.y);
CGContextAddLineToPoint(context,endPoint.x,endPoint.y);
CGContextStrokePath(context);
CGContextClosePath(context);
//**关闭曲线
CGContextSetLineDash(context, 0, lengthsEnd, 2);
}
//**绘制Y轴上的文字标记
-(void)drawY_AxisDesc:(NSArray *)array origion:(CGPoint)zero heigh:(CGFloat)heigh context:(CGContextRef)ref{
if(!array||![array count])
return;
int max = [self maxNumerFrom:array];
self.maxValue = max;
//**Y轴上距离间隔
float lineDistance = (heigh-