new BuiltinExternalTileLayer(name, pluginName, customParameters)
This class extends TileLayer. It provides the basis for writing plugins that
can display map tiles served by third party tile services.
By extending this class and implementing the few required methods, any third
party map tile service API can be used to display their map tiles within
the V2 API framework and integrate seamlessly with other map layers.
A plugin extending this class must implement the three methods init
,pan
and setCenterAndZoomlevel
. Inside these
methods the plugin is free to call vendor specific APIs that interact with
the target tile service. For details on what type of contextual information
are provided to the plugin by the V2 API, please see the documentation of
the three required methods.
A plugin must also register itself to the V2 API, using the static method
OM.layer.BuiltinExternalTileLayer.register(). The registration consists of
the plugin name as well as the tile layer's zoom level configuration.
Finally it is the application's responsibility to ensure that all the vendor
specific dependent API libraries are imported prior to using the plugin.
Parameters:
Name | Type | Description |
---|---|---|
name |
String | A unique tile layer name. |
pluginName |
String | the registered name of the map tile layer plugin |
customParameters |
Object | an optional JSON object containing various |
Extends
Methods
-
bringForward()
-
Bring the layer to the front by one step (closer to the top of the map).
- Inherited From:
Returns:
The new z-index
- Type
- int
-
bringToTop()
-
Bring the layer all the way to the top of the map
- Inherited From:
Returns:
The new z-index
- Type
- int
-
enableInfoWindow(enable)
-
Enable or disable the feature info window.
Parameters:
Name Type Description enable
boolean Enable or disable feature info window. By default,
the info window is enabled.- Inherited From:
Returns:
- Type
- void
-
enableUTFGridInfoWindow(status)
-
Enable or disable the UTFGrid Info Window when applicable
Parameters:
Name Type Description status
boolean true or false to enable or disable the default (built-in) utfgrid info window
- Inherited From:
-
getCustomTags()
-
Get custom tags from tile layer
- Inherited From:
Returns:
An object defined custom tags if any
- Type
- Object
-
getEnableInfoWindow()
-
get the enable infowindow status: true for enabled and false otherwise
the info window is enabled.- Inherited From:
Returns:
true or false
- Type
- boolean
-
getName()
-
Get the layer name.
- Inherited From:
Returns:
The layer name
- Type
- String
-
getOpacity()
-
Get the layer's current opacity setting.
- Inherited From:
Returns:
The layer's opacity. Is a value between 0 and 1.
- Type
- float
-
getTileLayerConfig(callBack)
-
Get the tile layer configuration.
Parameters:
Name Type Description callBack
function Getting tile layer config is asynchronous. So
you need a callback fucntion to get result.- Inherited From:
Returns:
- Type
- void
-
getUTFGridResolution(res)
-
parse and return the utfgrid resolution
Parameters:
Name Type Description res
string The utfgrid resolution. Can be either a string or a number
- Inherited From:
Returns:
the utfgrid resolution
- Type
- number
-
getZIndex()
-
Get the layer's z-index.
- Inherited From:
Returns:
The z-index value. Returns -1 if the layer was not added to the map.
- Type
- int
-
init(container)
-
Abstract method to be implemented by a plugin. This method will be called
when the tile layer defined by the plugin is first created and added to the
OM.Map.The V2 API will provide a container DIV for the plugin to display its map
tiles. You can access the DIV object using this.container. If you just need
the ID of the DIV object, use this.container.id.The plugin may also wish to access the current map context info such as the map
center and zoom level. This is obtained through this.parentMap.getMapContext(),
which returns a MapContext instance.To transfrom the coordinate you can call this.parentMap.getMapContext().getCenterPoint().transform(8307) at client side
or call this.parentMap.getMapContext().getCenterPoint().transform(8307, function(geom){}) at server side;Parameters:
Name Type Description container
Object The HTML DIV element where the layer content is displayed.
- Overrides:
- OM.layer.TileLayer#init
Returns:
- Type
- void
-
isInZoomLevelRange(curLevel)
-
Checks if the current map zoom level is within this layer's visible zoom-level range.
Parameters:
Name Type Description curLevel
int Optional, the zoom level to check if it is within the minVisibleLevel and maxVisibleLevel
range. If not specified, then the current zoom level is used.- Inherited From:
Returns:
true if the current map level is within the layer's zoom level range for
it to be visible.- Type
- Boolean
-
isVisible(curLevel)
-
Get the visibility of the layer.
Parameters:
Name Type Description curLevel
int Optional, the zoom level to check if it is within the minVisibleLevel and maxVisibleLevel
range. If not specified, then the current zoom level is used.- Inherited From:
Returns:
True if the theme-based FOI layer is currently visible,
False if the theme-based FOI layer is currently not visible- Type
- Boolean
-
on()
-
A shorthand name for the member function addListener.
- Inherited From:
- Mixes In:
-
pan(xOffset, yOffset)
-
Abstract method. This method will be called on a map pan operation.
Parameters:
Name Type Description xOffset
int Move the map xOffset pixels on x axis
yOffset
int Move the map yOffset pixels on the y axis
- Overrides:
- OM.layer.TileLayer#pan
Returns:
- Type
- void
-
redraw()
-
Refresh the display of the layer's existing data.
- Inherited From:
Returns:
None
-
resize()
-
Abstract method. Resize the map.
Returns:
- Type
- void
-
sendBackward()
-
Sendthe layer to the back by one step (closer to the bottom of the map).
- Inherited From:
Returns:
The new z-index
- Type
- int
-
sendToBottom()
-
Send the layer all the way to the bottom of the map
- Inherited From:
Returns:
The new z-index
- Type
- int
-
setInfoWindowTrigger(status)
-
Enable or disable the UTFGridInfoWindow when applicable
Parameters:
Name Type Description status
boolean true or false to enable or disable the default (built-in) utfgrid info window
- Inherited From:
-
setMapCenterAndZoomlevel()
-
Set or change the map center and zoom level.
The new or modified center and zoom level are stored in and subsequently retrieved from the map context.
you can call "this.parentMap.getMapContext()" to get the map context.
To transfrom the coordinate you can call "this.parentMap.getMapContext().getCenterPoint().transform(8307)" at client side
or call "this.parentMap.getMapContext().getCenterPoint().transform(8307, function(geom){})" at server side;Returns:
- Type
- void
-
setName(newName)
-
Set the layer name with the given name.
Parameters:
Name Type Description newName
String The new layer name to be assigned to this layer.
- Inherited From:
Returns:
- Type
- None
-
setOpacity(opacity)
-
Set the layer's opacity. A value between 0 (transparnet) and 1 (opaque).
Parameters:
Name Type Description opacity
float It should be a number between 0 and 1. e.g. 0.5 means 50% opacity.
- Inherited From:
Returns:
- Type
- void
-
setVisible(visibility)
-
Sets the visibility of the layer.
Note that the visibility change will NOT be made if the current map zoom level is
outside the layer's 'visible zoom level range' which is set by setZoomLevelRange() method.Parameters:
Name Type Description visibility
Boolean A Boolean true (show the layer, i.e. make it visible) or false
(hide the layer).- Inherited From:
Returns:
void}
- Type
- None
-
setVisibleBound(bound)
-
Set a bound (MBR) for the layer visibility. Only content within the supplied bound will be rendered.
That is, the map client will only fetch and display map content within this bound.Parameters:
Name Type Description bound
OM.geometry.Rectangle Specifies the layer boundary
- Inherited From:
Returns:
- Type
- void
-
setZIndex()
-
Set the z-index for the layer.
Note: A valid layer z-index should be a number between 1 and n, where n is
the number of layers that are currently displayed in the map. When the newIndex
parameter of setZIndex is less than 1, it will be set to 1. If it is
greater than n, it will be set to n. If z-Index value, newIndex, is already assigned
to another layer, then it will still be assigned to the current layer (on which this function is invoked).
One or more of the other layer will be assigned a different z-index value. The changes will depend on
whether this layer was inserted into the current layer stack or just moved within the layer stack.- Inherited From:
Returns:
The old z-index
- Type
- int
-
setZoomLevelRange(minLevel, maxLevel)
-
Set the zoom level range within which this layer is visible. By default
a layer is set to be visible between a minmum zoom level of 0 and a maximum
(theoretical) zoom level of 100.Parameters:
Name Type Description minLevel
int Specifies the min level. The layer will not be
visible if the zoom level is lower than this vlaue.maxLevel
int Specifies the max level. The layer will not be
visible if the zoom level is higher than this value.- Inherited From:
Returns:
- Type
- None