Přidání vrstvy čáry do mapy
Vrstvu čáry lze použít k vykreslení LineString
a MultiLineString
funkcí jako cest nebo tras na mapě. Vrstvu čáry lze také použít k vykreslení obrysu Polygon
funkcí a MultiPolygon
. Zdroj dat je připojený k spojnicové vrstvě a poskytuje mu data, která se mají vykreslit.
Tip
Vrstvy čar ve výchozím nastavení vykreslují souřadnice mnohoúhelníků i čar ve zdroji dat. Chcete-li omezit vrstvu tak, aby vykreslovat pouze funkce LineString, nastavte filter
vlastnost vrstvy na ['==', ['geometry-type'], 'LineString']
hodnotu nebo ['any', ['==', ['geometry-type'], 'LineString'], ['==', ['geometry-type'], 'MultiLineString']]
pokud chcete zahrnout také funkce MultiLineString.
Následující kód ukazuje, jak vytvořit řádek. Přidejte čáru do zdroje dat a pak ji vykreslete s vrstvou řádku pomocí třídy LineLayer .
//Create a data source and add it to the map.
var dataSource = new atlas.source.DataSource();
map.sources.add(dataSource);
//Create a line and add it to the data source.
dataSource.add(new atlas.data.LineString([[-73.972340, 40.743270], [-74.004420, 40.756800]]));
//Create a line layer to render the line to the map.
map.layers.add(new atlas.layer.LineLayer(dataSource, null, {
strokeColor: 'blue',
strokeWidth: 5
}));
Následující snímek obrazovky ukazuje ukázku výše uvedených funkcí.
Vrstvy čar lze stylovat pomocí výrazů stylu LineLayerOptions a Use data-driven.
Přidání symbolů podél čáry
Následující ukázka ukazuje, jak přidat ikony šipek podél čáry na mapě. Pokud používáte vrstvu symbolů, nastavte placement
možnost na line
. Tato možnost vykreslí symboly podél čáry a otočí ikony (0 stupňů = doprava).
function InitMap()
{
var map = new atlas.Map('myMap', {
center: [-122.135, 47.65],
zoom: 11,
view: "Auto",
//Add authentication details for connecting to Azure Maps.
authOptions: {
authType: 'subscriptionKey',
subscriptionKey: '{Your-Azure-Maps-Subscription-key}'
}
});
var datasource;
//Wait until the map resources are ready.
map.events.add('ready', function () {
//Load the custom image icon into the map resources.
map.imageSprite.add('arrow-icon', 'https://s3-us-west-2.amazonaws.com/s.cdpn.io/1717245/purpleArrowRight.png').then(function () {
//Create a data source and add it to the map.
datasource = new atlas.source.DataSource();
map.sources.add(datasource);
//Create a line and add it to the data source.
datasource.add(new atlas.data.Feature(new atlas.data.LineString([
[-122.18822, 47.63208],
[-122.18204, 47.63196],
[-122.17243, 47.62976],
[-122.16419, 47.63023],
[-122.15852, 47.62942],
[-122.15183, 47.62988],
[-122.14256, 47.63451],
[-122.13483, 47.64041],
[-122.13466, 47.64422],
[-122.13844, 47.65440],
[-122.13277, 47.66515],
[-122.12779, 47.66712],
[-122.11595, 47.66712],
[-122.11063, 47.66735],
[-122.10668, 47.67035],
[-122.10565, 47.67498]
])));
//Add a layers for rendering data.
map.layers.add([
//Add a line layer for displaying the line.
new atlas.layer.LineLayer(datasource, null, {
strokeColor: 'DarkOrchid',
strokeWidth: 3
}),
//Add a symbol layer for rendering the arrow along the line.
new atlas.layer.SymbolLayer(datasource, null, {
//Specify how much space should be between the symbols in pixels.
lineSpacing: 100,
//Tell the symbol layer that the symbols are being rendered along a line.
placement: 'line',
iconOptions: {
image: 'arrow-icon',
allowOverlap: true,
anchor: 'center',
size: 0.8
}
})
]);
});
});
}
Tento kód vytvoří mapu, která se zobrazí takto:
Tip
Sada Azure Maps Web SDK poskytuje několik přizpůsobitelných šablon imagí, které můžete použít s vrstvou symbolů. Další informace najdete v dokumentu Jak používat šablony obrázků .
Přidání přechodu tahu na čáru
U čáry můžete použít barvu jedním tahem. Čáru můžete také vyplnit přechodem barev a zobrazit tak přechod z jednoho segmentu čáry na další. Například přechody čar se dají použít k reprezentaci změn v průběhu času a vzdálenosti nebo různých teplot ve spojených řádcích objektů. Aby bylo možné tuto funkci použít na čáru, musí mít lineMetrics
zdroj dat možnost nastavenou na true
a potom se výraz barevného přechodu může předat strokeColor
možnosti čáry. Výraz přechodu tahů musí odkazovat na ['line-progress']
datový výraz, který zpřístupňuje metriky počítaných řádků výrazu.
Plně funkční ukázku, která ukazuje, jak použít přechod tahů na čáru na mapě, najdete v tématu Čára s přechodem tahů v Azure Maps Ukázky. Zdrojový kód pro tuto ukázku najdete v tématu Zdrojový kód Line with Stroke Gradient.
Přizpůsobení vrstvy čáry
Vrstva Čára má několik možností stylů. Plně funkční ukázku, která interaktivně demonstruje možnosti čáry, najdete v části Možnosti vrstvy čáry v Azure Maps Ukázky. Zdrojový kód pro tuto ukázku najdete v tématu Zdrojový kód možností vrstvy řádků.
Další kroky
Další informace o třídách a metodách použitých v tomto článku:
Další ukázky kódu, které můžete přidat do map, najdete v následujících článcích: