AGSSymbol Class Reference


Description

A base class to represent symbols. Symbols describe how graphics look on the map. Different symbols are used for graphics with different geometry types. Marker symbols are used for point and multipoint graphics, Fill symbols are used for polygon graphics, and Line symbols are used for polyline graphics.

Defined in:
AGSSymbol.h ( ArcGIS library)
Since:
1.0
Inheritance diagram for AGSSymbol:
<AGSCoding> AGSCompositeLineSymbol AGSCompositeSymbol AGSFillSymbol AGSMarkerSymbol AGSSimpleLineSymbol AGSTextSymbol AGSPictureFillSymbol AGSSimpleFillSymbol AGSPictureMarkerSymbol AGSSimpleMarkerSymbol

List of all members.

Public Member Functions

(void) - decodeWithJSON:
(void) - drawGraphic:inContext:forEnvelope:atResolution:
(NSDictionary *) - encodeToJSON
(BOOL) - hitTestGraphic:withEnvelope:atResolution:
(id) - initWithJSON:
(BOOL) - shouldDrawGraphic:forEnvelope:atResolution:
(UIImage *) - swatchForGeometryType:size:

Static Public Member Functions

(CGPoint) + toScreenPointWithX:y:envelope:resolution:

Properties

UIColor * color
BOOL readyToDraw

Member Function Documentation

- (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) 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.

- (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

- (UIColor*) color [read, write, retain]

Symbol color.

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

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.