Stupeň, do jakého se železniční trať zakřivuje podél své délky, je jedním z nejvýznamnějších faktorů omezujících maximální rychlost, kterou mohou vlaky po železniční síti jet. Existuje několik situací, kdy je důležité toto zakřivení změřit:<\/P>
1. Při původním návrhu konstrukce trati.
2. Po vybudování trati. (tj. měření zakřivení "as-built")<\/EM>
3. Pravidelně během provozu trati, podle požadavků politiky nebo předpisů.<\/P>
THE GEOMETRY CAR<\/STRONG><\/FONT><\/P>Co se týče bodu č. 3 výše, toto periodické měření provádí "Geometry Car<\/EM><\/A>", který je naplánován k jízdě po trati. Každá část železniční sítě dostává toto měření na místě alespoň dvakrát ročně, nebo častěji podle potřeby. Geometry Car má mnoho senzorů, které měří skutečné zakřivení trati, ale také její "cant" (tj. způsob, jakým je trať navržena tak, aby pomohla vlakům "naklonit se do" zatáčky). <\/EM>Geometry Car také obsahuje další senzory jako jsou obrazové snímače, lidar, ultrazvuk a další, aby zachytil vysokým rozlišením aktuální stav trati, kolejnic, pražců, štěrku, sloupů, trolejových vedení a dalšího.<\/P>
ZPĚT K ZAKŘIVENÍ<\/STRONG><\/FONT><\/P>ArcGIS lze použít ke srovnání aktuálních měření pocházejících z Geometry Car s měřeními z předchozích inspekcí, z původních as-built dokumentů a z původních stavebních plánů samotných. Tento druh detekce změn může pomoci vytvořit prioritní seznamy údržby nebo být zpětně vložen do Positive Train Control (PTC)<\/EM> systému ke snížení maximální povolené rychlosti na daném úseku trati.<\/P>V ArcGIS Pro není vestavěný nástroj pro toto, ale je poměrně jednoduché napsat skript, který tato měření provede za vás. Zde je příklad.<\/P> <\/P>
vizualizace zakřivení trati<\/span><\/span><\/P>
SKRIPT<\/STRONG><\/FONT><\/P>Zde je odkaz na skript na Githubu<\/A><\/EM>, který vytvořil tuto třídu prvků zakřivení.<\/P>
JAK TO FUNGUJE<\/STRONG><\/FONT><\/P>Koncepčně skript pro každý úsek trati, například polyline trasy, "prochází" podél polyline a umisťuje bod každých 50 stop, zapisuje tento bod do nové výstupní třídy bodových prvků. Poté pro každé 3 body změří úhel a zapíše ho do atributového záznamu prostředního bodu. Neprochází vrchol po vrcholu, ale vytváří nové body podél linie tak, aby každý byl 50 stop od předchozího bodu.<\/P>
měření úhlů zakřivení<\/span><\/span><\/P>
Každý bod nyní "zná<\/EM>" úhel zakřivení podél tohoto 100stopého úseku (50 stop před ním a 50 stop za ním)<\/EM>. Tato hodnota atributu zakřivení pak může být porovnána s předchozími vrstvami tras nebo jednoduše vizualizována jako výše, kde oblasti s nízkým zakřivením jsou vykresleny žlutě, vyšší zatáčky oranžově a nejvyšší zatáčky červeně. Toto je jen jeden způsob jak to udělat.<\/P>
VĚCI K PAMĚTI<\/STRONG><\/FONT><\/P>1. Třída prvků polyline, na které spouštíte tento skript, musí podporovat measures<\/STRONG>. Jinými slovy musí jít o PolylineM<\/EM> nebo PolylineZM<\/EM> trasové prvky, které již byly kalibrovány tak, že každý vrchol zná svou hodnotu M<\/EM>. Obvykle je tato hodnota M<\/EM> kilometrický nebo mílový sloupek podél železniční sítě, ale záleží na vás.<\/P>2. Pro fungování tohoto skriptu není nutné vytvářet LRS<\/STRONG> (lineární referenční systém)<\/EM>. Hodnoty measure podél polyline trasových prvků jsou pro tento účel dostatečné.<\/P>3. Definici toho, co představuje "zatáčku", jsem převzal z
US DOT FRA, což je úhlová změna směru trati přes každý 100stopý úsek. Některé železnice měří zakřivení jinak, takže skript je flexibilní. V první buňce je globální proměnná nazvaná CURVE_LENGTH_INTERVAL_FEET<\/EM>, kde můžete nastavit tuto hodnotu na 100 stop, 200 stop nebo ji převést na metrické jednotky. Cokoli potřebujete.<\/P>4. Je zde také globální proměnná nazvaná CURVE_TOLERANCE_PERCENT<\/EM>, která říká v podstatě to, že pokud 100stopý úsek trati naměří zakřivení nižší než 0,5 %, považujte tento úsek za "PŘÍMÝ<\/EM>". Tuto toleranci můžete upravit podle potřeby.<\/P> <\/P>ZÁVĚREM<\/STRONG><\/FONT><\/P>Snažil jsem se do skriptu přidat komentáře co nejlépe to šlo, ale možná jsem něco vynechal. Pokud máte nějaké otázky nebo připomínky, neváhejte mi napsat níže nebo založit nový Issue v mém Github repozitáři "arcpy-samples".<\/P> <\/P>