12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- /*
- * BMKOverlayPathView.h
- * BMapKit
- *
- * Copyright 2011 Baidu Inc. All rights reserved.
- *
- */
- #import <UIKit/UIKit.h>
- #import "BMKOverlayView.h"
- /// 该类定义了一个基本的OverlayView
- @interface BMKOverlayPathView : BMKOverlayView {
- @package
- UIColor *_fillColor;
- UIColor *_strokeColor;
-
- CGFloat _lineWidth;
- CGLineJoin _lineJoin;
- CGLineCap _lineCap;
- CGFloat _miterLimit;
- CGFloat _lineDashPhase;
- NSArray *_lineDashPattern;
-
- CGPathRef _path;
- }
- /// 填充颜色
- @property (strong) UIColor *fillColor;
- /// 画笔颜色
- @property (strong) UIColor *strokeColor;
- /// 画笔宽度,默认为0
- @property CGFloat lineWidth;
- /// LineJoin,默认为kCGLineJoinRound
- @property CGLineJoin lineJoin;
- /// LineCap,默认为kCGLineCapRound
- @property CGLineCap lineCap;
- /// miterLimit,在样式为kCGLineJoinMiter时有效,默认为10
- @property CGFloat miterLimit;
- /// lineDashPhase, 默认为0
- @property CGFloat lineDashPhase;
- /// lineDashPattern,一个NSNumbers的数组,默认为nil
- @property (copy) NSArray *lineDashPattern;
- /**
- *生成要绘制的path,子类需要重写此函数,并且对path属性赋值:self.path = newPath;
- */
- - (void)createPath;
- /// path对象
- @property CGPathRef path;
- /**
- *刷新path,调用该函数将会使已经缓存的path失效,将会重新调用createPath来生成新的path对象
- */
- - (void)invalidatePath;
- /**
- *应用画笔属性
- *@param context CGContext对象
- *@param zoomScale 当前的zoomScale
- */
- - (void)applyStrokePropertiesToContext:(CGContextRef)context
- atZoomScale:(BMKZoomScale)zoomScale;
- /**
- *应用画刷属性
- *@param context CGContext对象
- *@param zoomScale 当前的zoomScale
- */
- - (void)applyFillPropertiesToContext:(CGContextRef)context
- atZoomScale:(BMKZoomScale)zoomScale;
- /**
- *绘制path
- *@param path 要绘制的CGPath
- *@param context CGContext对象
- */
- - (void)strokePath:(CGPathRef)path inContext:(CGContextRef)context;
- /**
- *填充path
- *@param path 要绘制的CGPath
- *@param context CGContext对象
- */
- - (void)fillPath:(CGPathRef)path inContext:(CGContextRef)context;
- @end
|