/MapView/Map/RMCircle.h
C Header | 67 lines | 31 code | 10 blank | 26 comment | 0 complexity | e9f06ea7f444a093b2fa90c0b1d9a968 MD5 | raw file
1// 2// RMCircle.h 3// 4// Copyright (c) 2008-2010, Route-Me Contributors 5// All rights reserved. 6// 7// Redistribution and use in source and binary forms, with or without 8// modification, are permitted provided that the following conditions are met: 9// 10// * Redistributions of source code must retain the above copyright notice, this 11// list of conditions and the following disclaimer. 12// * Redistributions in binary form must reproduce the above copyright notice, 13// this list of conditions and the following disclaimer in the documentation 14// and/or other materials provided with the distribution. 15// 16// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 17// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 18// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 19// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 20// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 21// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 22// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 23// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 24// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 25// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 26// POSSIBILITY OF SUCH DAMAGE. 27 28#import <Foundation/Foundation.h> 29#import "RMFoundation.h" 30#import "RMLatLong.h" 31#import "RMMapLayer.h" 32 33@class RMMapContents; 34 35 36@interface RMCircle : RMMapLayer <RMMovingMapLayer> { 37@private 38 RMMapContents* mapContents; 39 CAShapeLayer* shapeLayer; 40 41 RMLatLong latLong; 42 RMProjectedPoint projectedLocation; 43 BOOL enableDragging; 44 BOOL enableRotation; 45 46 UIColor* lineColor; 47 UIColor* fillColor; 48 CGFloat radiusInMeters; 49 CGFloat lineWidthInPixels; 50 BOOL scaleLineWidth; 51 52 CGMutablePathRef circlePath; 53} 54 55@property (nonatomic, retain) CAShapeLayer* shapeLayer; 56@property (nonatomic, assign) RMProjectedPoint projectedLocation; 57@property (assign) BOOL enableDragging; 58@property (assign) BOOL enableRotation; 59@property (nonatomic, retain) UIColor* lineColor; 60@property (nonatomic, retain) UIColor* fillColor; 61@property (nonatomic, assign) CGFloat radiusInMeters; 62@property (nonatomic, assign) CGFloat lineWidthInPixels; 63 64- (id)initWithContents:(RMMapContents*)aContents radiusInMeters:(CGFloat)newRadiusInMeters latLong:(RMLatLong)newLatLong; 65- (void)moveToLatLong:(RMLatLong)newLatLong; 66 67@end