Symbolizér čar

Symbolizér čar

Jednoduchý symbolizér čar vykreslí čáru s přizpůsobitelným stylem. Toto je výchozí symbolizér pro 1-dimenzionální geometrie (čáry). 

Podporované možnosti stylingu:

Vlastnost Popis
Barva Specifikuje barvu a průhlednost čáry.
Šířka Specifikuje šířku čáry
LineJoin Určuje, jak se vykreslují čáry v průsečíkách segmentů čar.
Styl Specifikuje, jak by měl být symbol linework kreslen.
DashPattern Specifikuje pole vzdáleností, které určují délky střídavých pomlček a mezer v čárkovaných čarách.
DashOffset Specifikuje vzdálenost od začátku čáry k začátku vzoru pomlček.
CapStyle

Specifikuje, jak se vykreslují konce čar.

- Butt - ostrá hranatá hrana

- Round - zaoblená hrana

- Square - mírně protáhlá hranatá hrana

Offset Specifikuje odsazení od původní čáry. Pro kladnou vzdálenost bude odsazení na levé straně vstupní čáry (vzhledem k směru čáry). Pro zápornou vzdálenost bude na pravé straně.

Typy geometrií

 Symbolizér lze aplikovat na geometrie jakéhokoli typu.

Dimenze geometrie Typy geometrií Vykreslovací chování
Bod Bod, MultiPoint Kreslí čáru malé délky s horizontální orientací centrovanou na bodu se dvěma koncovými víčky.
Čára LineString, CircularString, CompoundCurve, LinerRing, MultiCurve, MultiLineString Kreslí čáru.
Plocha Polygon, CurvePolygon, MultiPolygon, MultiSurface Uzavřený obrys geometrie se používá jako řetězec čar (bez koncových víček)

Pro GeometryCollections je vykreslovací chování určováno samostatně pro každou geometrii uvnitř kolekce. Vrstvy s Mixed geometry type sledují logiku pro GeometryCollections.

Použijte MixedGeometrySymbolizer k omezení symbolizéru na specifické typy geometrií.

Příklady

Ve výchozím nastavení symbolizér čar kreslí černé čáry:

Zde je postup změny barvy čáry na modrou:

todo:image_alt_text
// For complete examples and data files, please go to https://github.com/aspose-gis/Aspose.GIS-for-.NET
using (var map = new Map(500, 317))
{
var symbolizer = new SimpleLine { Width = 1.5, Color = Color.FromArgb(0xAE, 0xD9, 0xFD) };
map.Add(VectorLayer.Open(dataDir + "lines.geojson", Drivers.GeoJson), symbolizer);
map.Render(dataDir + "lines_out.svg", Renderers.Svg);
}

Pro pokročilejší scénáře můžete chtít upravit styl čáry dynamicky na základě hodnot atributů prvků. Zde je postup:

todo:image_alt_text
// For complete examples and data files, please go to https://github.com/aspose-gis/Aspose.GIS-for-.NET
using (var map = new Map(500, 317))
{
var lineSymbolizer = new SimpleLine { Width = 1.5, Color = Color.FromArgb(0xae, 0xd9, 0xfd) };
lineSymbolizer.FeatureBasedConfiguration = (feature, symbolizer) =>
{
if (feature.GetValue<string>("NAM") == "UNK")
{
symbolizer.Width = 1;
symbolizer.Style = StrokeStyle.Dash;
}
};
map.Add(VectorLayer.Open(dataDir + "lines.geojson", Drivers.GeoJson), lineSymbolizer);
map.Render(dataDir + "lines_out.svg", Renderers.Svg);
}

Můžete také chtít přidat popisky ke svým čarám. Navštivte Příklady popiskování čar pro příklady.