Composant Delphi / Google Maps / OpenStreetMap / Leaflet  / Mappilary / Native Maps 100% Delphi 0% WebBrowser 0% Javascript

Layers

Vous êtes ici :TECMap > Overlays

BicyclingLayer

Affiche les pistes cyclables uniquement avec l'api Google

// Delphi map component ECMap

// show bicyclinglayer
map.BicyclingLayer := true;

Fig. 43 BicyclingLayer

Pour le moment le layer n'est pas très développé surtout en europe, vous pouvez le remplacer par une carte OpenMapStreet CycleMap qui à l'avantage de fonctionner avec toutes les apis.

// Delphi map component ECMap

// show bicyclinglayer
map.BicyclingLayer := true;

Fig. 44 OpenMapStreet CycleMap

TrafficLayer

Affiche l'état du traffic, ne semble pas activé sur toutes les régions, uniquement avec l'api Google

// Delphi map component ECMap

// show bicyclinglayer
map.BicyclingLayer := true;

Fig. 45 TrafficLayer

TrafficArea

La procedure TrafficArea(const dLatSW,dLngSW,dLatNE,dLngNE:double) détermine les incidents ayant lieux dans une zone donnée.

Vous devez vous brancher sur l'évenement OnTraffic du composant pour utiliser la réponse

// Delphi map component ECMap

// show bicyclinglayer
map.BicyclingLayer := true;

Les propriétés TrafficIconLowImpact, TrafficIconMinor, TrafficIconModerate, TrafficIconSerious et TrafficIconRoadClosed vous permettront d'utiliser vos propres icones.

TrafficArea utilise les services de Bing Traffic, vous devez obtenir votre propre clef Bing pour utiliser cette fonction.

FusionTablesLayer

Affiche des données depuis une table Google Fusion uniquement avec l'api Google

Vous gérer vos layers au travers de la propriété FusionTablesLayers de type TECMapFusionTablesLayers

// Delphi map component ECMap

// show bicyclinglayer
map.BicyclingLayer := true;

TECMapFusionTablesLayers

Voir la documentation de google sur FusionTablesLayer
function Add(const Column,Id,Style,Clause:string):integer;

Ajoute un layer et retourne son index

Column est la colonne de la table, correspond à select dans la doc google

Id est l'identifiant de la table, correspond à from dans la doc google

Style est le style applicable au layer

Clause est la requète SQL qui vous permet de filtrer vos données, correspond à where dans la doc google

procedure Clear;
Efface l'ensemble des layers
function Count:integer;
Retourne le nombre de layers
procedure Delete(index:integer);
Supprime le layer dont on passe l'index
property FusionTablesLayer[index:integer]: TECMapFusionTablesLayer
Tableau permettant l'accès aux layers, c'est la propriété par défaut donc vous pouvez y accéder directement par map.FusionTablesLayers[index] au lieu de map.FusionTablesLayers.FusionTablesLayer[index]
property ToTxt: string ;
Propriété en lecture/écriture qui donne accès à la liste des FusionTablesLayer dans un format texte.

En écriture il s'agit d'un ajout et non d'un remplacement, si vous ne souhaitez pas conserver les anciennes valeurs faites un Clear avant l'ajout

42

TECMapFusionTablesLayer

Classe contrôlant un FusionTablesLayer

procedure update;
Mise à jour des propriétés, vous devez y faire appel pour répercuter les modifications des propriétés
property TableId : string

identifiant de la table, correspond à from dans la doc google

property LocationColumn : string

colonne de la table, correspond à select dans la doc google

property Clause : string

Requète SQL qui vous permet de filtrer vos données, correspond à where dans la doc google

property Style : string

style applicable au layer

property Heat : boolean

correspond à heatmap dans la doc google

property SuppressInfoWindow : boolean

Permet d'activer ou non l'affichage d'une infoWindow lors d'un clic sur un élément du layer

property Visible : boolean

Affiche ou non le layer

property ToTxt : string
Propriété en lecture/écriture qui donne accès au layer dans un format texte.

OnFusionTablesLayerClick

TECMap dispose d'un évènement pour intercepter un click sur un élément du layer.

procedure OnFusionTablesLayerClick(sender: TObject;const idLayer:integer;const htmlInfoWindow:string;dLatitude,dLongitude:double);
idLayer le numéro du layer dans la liste FusionTablesLayers
htmlInfoWindow une chaîne contenant le contenu Html de l'info bulle de l'élément, s'il existe
dLatitude,dLongitude coordonnées du point clické

KmlLayer

Vous pouvez importer des fichiers Kml/Kmz dans vos cartes et les afficher en surcouche, ne fonctionne pas sous Leaflet.

Les fichiers Kmz ne sont pas supportés par CloudMade, par contre il supporte le format GeoXml (extension .xml)

13
Les layers Kml disposent des propriétes et méthodes
Id : integer
Index du layer, accessible en lecture seule
Url : string
Url du fichier kml, accessible en lecture seule
Visible : boolean
Visibilité du layer, accessible en lecture/écriture
ToTxt : string
propriété en lecture/écriture permettant d'exporter/importer au format texte l'ensemble des éléments
procedure Show;
Affiche la zone par défaut du layer si elle a été spécifiée

OnKmlLayerClick

TECMap dispose d'un évènement pour intercepter un click sur un élément du layer.

CloudMade ne répond pas à cet évènement

14
procedure OnKmlLayerClick(sender: TObject;const idKmlLayer:integer;const htmlDescription,htmlInfoWindow:string;dLatitude,dLongitude:double);
idKmlLayer le numéro du layer dans la liste KmlLayers
htmlDescription une chaîne contenant le contenu Html de l'élèment, s'il existe
htmlInfoWindow une chaîne contenant le contenu Html de l'info bulle de l'élément, s'il existe
dLatitude,dLongitude coordonnées du point clické

// Delphi map component ECMap

// show bicyclinglayer
map.BicyclingLayer := true;

TECMap permet d'exporter la majorité de ses données, y compris les layers kml, au format KML.

43

// Delphi map component ECMap

// show bicyclinglayer
map.BicyclingLayer := true;

WeatherLayer

Disponible uniquement avec l'api Google

15

// Delphi map component ECMap

// show bicyclinglayer
map.BicyclingLayer := true;

Fig. 46 WeatherLayer

OnWeatherLayerClick

TECMap dispose d'un évènement pour intercepter un click sur un élément du layer.

procedure OnWeatherLayerClick(sender: TObject;const htmlInfoWindow:string;dLatitude,dLongitude:double);
htmlInfoWindow une chaîne contenant le contenu Html de l'info bulle de l'élément, s'il existe
dLatitude,dLongitude coordonnées du point clické

DemoLayer

Le programme DemoLayer vous permet de voir comment utiliser ces différents layers ainsi que Panoramio qui est lui aussi une surcouche

Fig. 47 DemoLayer
Fig. 47 DemoLayer
Aller à la page
Composant Delphi / Google Maps / OpenStreetMap / Leaflet  / Mappilary© 2016 ESCOT-SEP Christophe - Réalisé avec Help&Web - RSS - RSS - Google+