Class GoogleMapsLayer
public class GoogleMapsLayer : WebBasedLayer
- Inheritance
-
GoogleMapsLayer
- Inherited Members
Remarks
This class uses Google Static Maps API to implement url request.
Constructors
GoogleMapsLayer()
This is the constructor the for the class. If you use this constructor, then you need to set the required properties manually.
public GoogleMapsLayer()
Remarks
None
GoogleMapsLayer(string)
This is the constructor the for the class.
public GoogleMapsLayer(string apiKey)
Parameters
apiKey
stringThe apiKey for the GoogleMapLayer.
Remarks
This constructor initializes a new layer and assgin a license key.
GoogleMapsLayer(string, string)
This is the constructor the for the class.
public GoogleMapsLayer(string apiKey, string uriSigningSecret)
Parameters
apiKey
stringThe apiKey for the GoogleMapLayer.
uriSigningSecret
stringThe uriSigningSecret for the GoogleMapLayer.
Remarks
This constructor initializes a new layer and assgin a license key and initilize a cache directory.
Properties
ApiKey
public string ApiKey { get; set; }
Property Value
ClientId
Gets or sets a value to access the special features of Google Maps API Premier, you must provide a client ID when accessing any of the Premier API libraries or services. When registering for Google Maps API Premier, you will receive this client ID from Google Enterprise Support. All client IDs begin with a gme- prefix.
public string ClientId { get; set; }
Property Value
CustomParameters
public Dictionary<string, string> CustomParameters { get; }
Property Value
Language
public string Language { get; set; }
Property Value
MapType
Gets or sets a value represents the map type of the GoogleMaps.
public GoogleMapsMapType MapType { get; set; }
Property Value
PictureFormat
Gets or sets a value represents the image format of the image.
public GoogleMapsPictureFormat PictureFormat { get; set; }
Property Value
PrivateKey
Gets or sets a value that is unique to your client ID, please keep your key secure.
public string PrivateKey { get; set; }
Property Value
TargetProjection
public Projection TargetProjection { get; set; }
Property Value
UriSigningSecret
public string UriSigningSecret { get; set; }
Property Value
Methods
CloseAsyncCore(CancellationToken)
This method closes the Layer and releases any resources it was using.
protected override Task CloseAsyncCore(CancellationToken cancellationToken)
Parameters
cancellationToken
CancellationToken
Returns
- Task
None
Remarks
This abstract method is called from the concrete public method Close. The close
method plays an important role in the life cycle of the Layer. It may be called after
drawing to release any memory and other resources that were allocated since the Open
method was called.
If you override this method, it is recommended that you take the following things
into account: This method may be called multiple times, so we suggest you write the method so
that that a call to a closed Layer is ignored and does not generate an error.
We also suggest that in the Close you free all resources that have been opened.
Remember that the object will not be destroyed, but will be re-opened possibly in the
near future.
DrawAsyncCore(GeoCanvas, Collection<SimpleCandidate>)
This method draws the Layer.
protected override Task DrawAsyncCore(GeoCanvas canvas, Collection<SimpleCandidate> labelsInAllLayers)
Parameters
canvas
GeoCanvasThis parameter is the view object or a NativeImage to draw on.
labelsInAllLayers
Collection<SimpleCandidate>This parameter represents the labels used for collision detection and duplication checking.
Returns
- Task
None
Remarks
This method is the concrete wrapper for the abstract method DrawCore. This
method draws the representation of the layer based on the extent you provided.
When implementing this abstract method, consider each feature and its column data
values. You can use the full power of the GeoCanvas to do the drawing. If you need
column data for a feature, be sure to override the GetRequiredColumnNamesCore and add
the columns you need to the collection. In many of the styles, we add properties that
allow the user to specify which field they need; then, in the GetRequiredColumnNamesCore,
we read that property and add it to the collection.
GetPictureFormat()
Get picture format string which will use for request url.
public string GetPictureFormat()
Returns
- string
Get picture format string which will use for request url.
OpenAsyncCore(CancellationToken)
This method opens the Layer so that it is initialized and ready to use.
protected override Task OpenAsyncCore(CancellationToken cancellationToken)
Parameters
cancellationToken
CancellationToken
Returns
- Task
None
Remarks
This abstract method is called from the concrete public method Open. The
open method plays an important role, as it is responsible for initializing the Layer.
Most methods on the Layer will throw an exception if the state of the Layer is not
opened. When the map draws each layer, the layer will be opened as one of its first steps;
then, after it is finished drawing with that layer, it will close it. In this way, we
are sure to release all resources used by the Layer.
When implementing the abstract method, consider opening the FeatureSource or
RasterSource. You will get a chance to close these in the Close method of the
Layer.
Exceptions
- InvalidOperationException
In the event you attempt to call this method on a Layer which has already been opened, it will throw an InvalidOperationException.