AGSPictureFillSymbol Class Reference


Description

Instances of this class represent picture fill symbols. Symbols describe how graphics look on the map. Different symbols are used for graphics with different geometry types. Fill symbols are used to display those graphics which are based on a polygon geometry. The symbol can fill the interior of a polygon graphic by repeating a given picture. In addition, the symbol can have an optional outline which is defined by a line symbol.

Defined in:
AGSPictureFillSymbol.h ( ArcGIS library)
Since:
1.8
Inheritance diagram for AGSPictureFillSymbol:
AGSFillSymbol AGSSymbol <AGSCoding>

List of all members.

Public Member Functions

(void) - applySymbolToContext:withGraphic:envelope:resolution:
(void) - decodeWithJSON:
(void) - drawGraphic:inContext:forEnvelope:atResolution:
(NSDictionary *) - encodeToJSON
(BOOL) - hitTestGraphic:withEnvelope:atResolution:
(id) - initWithImage:
(id) - initWithImageNamed:
(id) - initWithJSON:
(BOOL) - shouldDrawGraphic:forEnvelope:atResolution:
(UIImage *) - swatchForGeometryType:size:

Static Public Member Functions

(id) + pictureFillSymbolWithImage:
(id) + pictureFillSymbolWithImageNamed:
(CGPoint) + toScreenPointWithX:y:envelope:resolution:

Properties

float angle
UIColor * color
UIImage * image
NSString * imageName
AGSSimpleLineSymboloutline
BOOL readyToDraw
CGSize size
float xoffset
float xscale
float yoffset
float yscale

Member Function Documentation

- (void) applySymbolToContext: (CGContextRef)  context
withGraphic: (AGSGraphic *)  graphic
envelope: (AGSEnvelope *)  env
resolution: (double)  res 

This must be implemented by derived classes, don't implement drawGraphic:inContext:forEnvelope:withResolution, implement this instead.

Since:
2.2
- (void) decodeWithJSON: (NSDictionary *)  json   [optional, inherited]

Decode object from JSON representation.

Parameters:
json The JSON representation of the object to be decoded.
Since:
1.0
- (void) drawGraphic: (AGSGraphic *)  graphic
inContext: (CGContextRef)  context
forEnvelope: (AGSEnvelope *)  env
atResolution: (double)  resolution 

Method called by AGSGraphicsLayer to draw geometry onto context.

Since:
1.8
- (NSDictionary *) encodeToJSON   [optional, inherited]

Encode and return JSON representation for object.

Returns:
JSON representation of object.
Since:
1.0
- (BOOL) hitTestGraphic: (AGSGraphic *)  graphic
withEnvelope: (AGSEnvelope *)  envelope
atResolution: (double)  resolution 

Called to see if the geometry passes a hit test for this symbol.

Since:
1.8
- (id) initWithImage: (UIImage *)  image  

Initialize symbol with image.

Parameters:
image The image for the fill.
Since:
1.8
- (id) initWithImageNamed: (NSString *)  imageName  

Initialize symbol with name of image to draw in the fill.

Parameters:
imageName The name of the image to draw in the fill.
Since:
1.8
- (id) initWithJSON: (NSDictionary *)  json   [optional, inherited]

Initialize and return object from JSON representation.

Parameters:
json The JSON representation of the object to be created.
Returns:
Object decoded from JSON representation.
Since:
1.0

Reimplemented in AGSWebMapFeatureCollection.

+ (id) pictureFillSymbolWithImage: (UIImage *)  image  

Initialize autoreleased symbol with image.

Parameters:
image The image for the fill.
Since:
1.8
+ (id) pictureFillSymbolWithImageNamed: (NSString *)  imageName  

Initialize autoreleased symbol with name of image to draw.

Parameters:
imageName The name of the image to draw in the fill.
Since:
1.8
- (BOOL) shouldDrawGraphic: (AGSGraphic *)  graphic
forEnvelope: (AGSEnvelope *)  envelope
atResolution: (double)  resolution 

Called to see if the symbol should draw for a specific envelope.

Since:
1.8
- (UIImage *) swatchForGeometryType: (AGSGeometryType geometryType
size: (CGSize)  size 

Returns an image that represents a swatch for a particular geometry type.

Parameters:
geometryType The type of the geometry determines what kind of swatch is drawn.
size Size of the output swatch.
Returns:
UIImage of the drawn swatch.
+ (CGPoint) toScreenPointWithX: (double)  x
y: (double)  y
envelope: (AGSEnvelope *)  env
resolution: (double)  res 

A method that derived classes can call to help during drawing.

Since:
2.2

Property Documentation

- (float) angle [read, write, assign]

The rotation angle (in degrees) of the picture. The picture is rotated in a counter-clockwise direction by the amount specified.

Since:
1.8
- (UIColor*) color [read, write, retain, inherited]

Symbol color.

Since:
1.0
- (UIImage*) image [read, retain]

Image used as the fill.

Since:
1.8
- (NSString*) imageName [read, copy]

Name of the image to be used as the fill.

Since:
1.8
- (AGSSimpleLineSymbol*) outline [read, write, retain, inherited]

This outline of the symbol.

Since:
2.2
- (BOOL) readyToDraw [read, write, assign, inherited]

Property called by the framework. Most symbols should have this set to YES as soon as the symbol is init'ed. If a symbol needs to access a resource asynchronously before it's ready to draw then it should be set to NO initially then YES once it is ready. This is not as efficient as if a symbol is readyToDraw to begin with, however, so custom symbols should only set this to NO initially if absolutely necessary.

- (CGSize) size [read, write, assign]

Size in pixels. Default is 12x12.

Since:
1.8
- (float) xoffset [read, write, assign]

The offset on the x-axis in points, relative to the center of the image. Default is 0.0. For example, a value of -5 will shift the image left by 5 points.

Since:
1.8
- (float) xscale [read, write, assign]

Amount to scale the image along x-axis

Since:
1.8
- (float) yoffset [read, write, assign]

The offset on the y-axis in points, relative to the center of the image. Default is 0.0. For example, a value of -5 will shift the image down by 5 points.

Since:
1.8
- (float) yscale [read, write, assign]

Amount to scale the image along y-axis

Since:
1.8