13 Poloautomatické číslování objektů
V QGIS můžete pole „treenumber“ postupně očíslovat v kalkulačce polí, počínaje určitým číslem a s počátečními nulami, kombinací funkcí rownumber()
a lpad()
.
Zde je příklad, jak by to mohlo vypadat:
Krok 1: Postupné číslování od určitého čísla
Chcete-li zahájit postupné číslování s určitým počátečním číslem, můžete použít funkci rownumber()
a přidat počáteční číslo. Například:
@row_number + 100
Tím se ke každému číslu řádku přidá 100, takže číslování začíná od 101.
Krok 2: Vedoucí nuly pro správné třídění
Pomocí funkce lpad()
můžete předřadit nuly, abyste zajistili správné zarovnání hodnot pro třídění. Funkce lpad()
má následující formát:
lpad(string, Länge, Zeichen)
string
: Hodnota, kterou chcete formátovat (např.@row_number + 100
).Délka
: Celková délka výsledku včetně nul.Charakteristika
: Znak, který chcete použít pro výplň (např.0
).
Krok 3: Kombinace obou funkcí
Kombinace funkcí pro postupné číslování, které začíná číslem 101, a dvoumístný výstup s počátečními nulami vypadá takto:
lpad(@row_number + 100, 5, '0')
To znamená:
- Číslování začíná na 101.
- Výsledek má délku 5 znaků.
- Pokud je číslo kratší než 5 znaků, vloží se před něj nuly.
Příklad:
Pokud má @číslo_řádku
hodnotu 1
, lpad(@číslo_řádku + 100, 5, '0')
vrátí hodnotu 00101
.
Kompletní příklad v polní kalkulačce:
Pokud chcete aktualizovat pole „treenumber“, můžete tento výraz zadat do kalkulačky pole:
lpad(@row_number + 100, 5, '0')
Tím se generuje pořadové číslování od 101, které má vždy 5 číslic (např. 00101
, 00102
, 00103
atd.).