ANALYTICKÁ KARTOGRAFIE přednáška 3.10. •http://sourceforge.net/apps/mediawiki/jump-pilot/index.php?title=Index •generalizační nástroje většinou založené na algoritmu Douglase-Peuckera (D-P) •parametrem je vzdálenost bodu od základní (kotevní) linie • • • • • • • • OpenJUMP C:\Users\Bilbo\Documents\MU\PHD\VYUKA\Analyticka\DP1.png http://www.codeproject.com/Articles/1711/A-C-implementation-of-Douglas-Peucker-Line-Approxi Tools - Generalization •Simplify Polygon Coverage –zjednodušení polygonové vrstvy (sousedící polygony – administrativní jednotky) –parametr: maximální vzdálenost bodů od základní linie (mapové jednotky) •Simplify (JTS Algorithm) –nevhodné pro administrativní jednotky –parametr: maximální vzdálenost bodů od základní linie (mapové jednotky) • • Tools – Analysis – Geometry Functions •Simplify (D-P) –nezachovává topologii (rozdělení, zhroucení polygonů) •Simplify (Preserve Topology) –výsledkem je validní geometrie stejného typu jako byl vstup –založen na principu vzdálenosti od dané linie podobně jako D-P –pomalejší Plugins – Map Generalisation Scale Dependent Algorithms •BuildingSpreadNarrowParts •EnlargeBuildingToRectangle •SquareBuilding •EliminateSmallBuilding •EliminatePointsInLineOfBuilding •SimplifyBuilding • •DisplaceLines BuildingSpreadNarrowParts •vybrané budovy ð 2 nové vrstvy: upravené budovy + konflikty •prahová hodnota určena podle měřítka (0,25 mm na mapě – podle Swiss Society of Cartography) • minwidthparts150dpi EnlargeBuildingToRectangle •vybrané budovy ð upravená vrstva budov (nevytvoří novou vrstvu) •příliš malé budovy ð nahrazeny pravoúhelníkem (min. šířka 0,25 mm, min. plocha 0,35 x 0,35) enlarge2rectangle SquareBuilding •vybrané budovy ð upravená vrstva budov (nevytvoří novou vrstvu) •„zpravoúhelnění“ – jako základní se bere nejdelší hrana •parametry: maximální úhlová změna, maximální bodový posun (3 x 0,2 mm) • • • squarewalls150dpi EliminateSmallBuilding •vybrané budovy ð 2 nové vrstvy: vrstva bez eliminovaných budov + vrstva eliminovaných budov eliminatebdg_150dpi EliminatePointsInLineOfBuilding •vybrané budovy ð nová vrstva budov •bod může být odstraněn, pokud se v něm příliš nemění směr linie •dalším parametrem je maximální posun bodu (0,2 mm) C:\Users\Bilbo\Documents\MU\PHD\VYUKA\Analyticka\obrazky\EllimPoints2.png SimplifyBuilding •vybrané budovy ð 2 nové vrstvy: zjednodušené budovy + vrstva konfliktů •odstraňuje příliš krátké hrany (< 0,25 mm) simplifyoutline_150dpi DisplaceLines •posun linií za účelem zachování jejich rozpoznatelnosti ve výsledné mapě •vybrané linie ð 2 nové vrstvy: vrstva s posunutými liniemi + vrstva bufferů (šířka signatury + 0,2 mm) linedisplacement Plugins – Map Generalisation Not Scale Dependent Algorithms •SimplifyBuildingToRectangle •ChangeElongation • •LineSmoothingSimpleVersion •LineSimplifyJTS15Algorithm • •Merge Polygons SimplifyBuildingToRectangle •vybrané budovy ð upravená vrstva budov (nevytvoří novou vrstvu) •nezadávají se žádné parametry •nejprve vypočítá min. BB, vymaže díry (dvory), zachovává velikost simplifytorectangle_150dpi ChangeElongation •roztáhnutí/smrštění budovy (polygonu) •vybrané polygony ð nová vrstva •parametr: 0 - 1 smrštění, větší než 1 roztažení •změna velikosti se děje vzhledem k centroidu ve směru nejdelší hrany BB changeelongation_150dpi LineSmoothingSimpleVersion •vybrané linie ð upravená vrstva linií (nevytvoří novou vrstvu) •využívá splinové fce •parametrem je maximální odsun bodu, případně segmentace linesmoothing_150dpi LineSimplifyJTS15Algorithm •vybrané linie ð upravená vrstva linií (nevytvoří novou vrstvu) •parametrem je maximální odsun bodu •eliminace bodů na základě algoritmu D-P linesimplifydpeucker_150dpi Merge Polygons •spojené polygony v nové vrstvě –spojení dvou vybraných polygonů –spojení dotýkajících se polygonů –spojení polygonů na základě – podobnosti atributů polysbeforemerge_150dpi polysaftermerge_150dpi ArcMap – Cartography Tools Generalization •Aggregate Points •Aggregate Polygons •Collapse Dual Lines To centerline •Merge Divided Roads •Simplify Building •Simplify Line •Simplify Polygon •Smooth Line •Smooth Polygon •Thin Road Network Aggregate Points •bodová vrstva ð nová polygonová vrstva •agregace nejméně 3 bodů na základě zadané vzdálenosti • •vhodnější pro generalizaci bodové vrstvy by bylo? Aggregate Polygons •polygonová vrstva ð nová polygonová vrstva •zadává se agregační vzdálenost, minimální plocha agregovaného polygonu •lze zadat také, jak velké „díry“ se mají v polygonu zachovat ( min. velikost) •můžeme zvolit, zda výsledný polygon bude ortogonální (budovy) či ne Aggregate Polygons illustration Simplify Building •polygonová vrstva ð nová polygonová vrstva •zadává se minimální délka, kterou musí splňovat všechny hrany budovy •možnost zadat minimální plochu budov, které budou zachovány •lze kontrolovat potenciální konflikty (překrývající se budovy) • Simplify Building illustration Simplify Line •liniová vrstva ð nová liniová vrstva •intenzita zjednodušení na základě zadané tolerance (délka) •varianty: –Point Remove: aplikace algoritmu D-P, tolerance odpovídá polovině šířky signatury na výsledné mapě –Bend Simplify: pro lepší zachování tvaru linie, rozkládá linii na sérii oblouků, tolerance udává délku základny oblouku (jak ji zvolit?) Simplify Line illustration Simplify Polygon •polygonová vrstva ð nová polygonová vrstva •intenzita zjednodušení na základě zadané tolerance (délka) •Point Remove, Bend Simplify •možnost zadat minimální velikost výsledných • Polygon simplification Smooth Line •liniová vrstva ð nová liniová vrstva •PAEK (Polynomická aproximace s exponenciálním jádrem) –výsledná linie neprochází vstupními body •Bezier Interpolation –Beziérovy křivky prochází vstupními body • Smooth Line illustration Smooth Polygon •polygonová vrstva ð nová polygonová vrstva •PAEK •Bezier Interpolation • Smooth Polygon illustration ArcMap vs. OpenJUMP •A používá spíše komplexní nástroje (simplify building) •O má nástroj téměř pro každou generalizační operaci (SpreadNarrowParts, EliminateSmall, EliminatePoints, SquareBuilding), ale i komplexní nástroje (SimplifyBuilding) •A více variant u zjednodušujících i shlazujících algoritmů •O využívá pouze D-P resp. splinové funkce