Ocena wątku:
  • 0 Głosów - 0 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
profil terenu po obiekcie liniowym
06-08-2010, 15:15,
#1
profil terenu po obiekcie liniowym
Czy jest taka możliwość w Grassie, aby uzyskać profil wysokości terenu na podstawie obiektu liniowego, np drogi?
07-08-2010, 18:40,
#2
RE: profil terenu po obiekcie liniowym
Z tego co wiem, nie ma jednej komendy która realizuje takie zadanie.
Ale oczywiście, w zależności od tego co chcemy uzyskać, można całość poskładać z różnych klocków.

1. Linię wektorową zamieniamy na punkty.
Wektor > Utwórz punkty > Utwórz punkty wzdłuż linii (jeszcze z błędem orto Smile ale poprawimy to)
v.to.points -v -t input=linia output=punkty
-v to "Write line vertices"
-t to "Nie twórz tabeli atrybutów"
''Maximum distance between points in map units" możemy usunąć.

2. Punkty zapisujemy w pliku tekstowym.
Plik > Eksport mapy wektorowej > Eksport punktów ASCII do wektorów GRASS ASCII
v.out.ascii input=punkty output=punkty.txt fs=,
fs=, znakiem rozdzielającym będzie przecinek

3. Wydobywamy wysokości z DEM w punktach zapisanych w pliku punkty.txt.
Tutaj jest jednak jeden problem. W wersji GUI, komenda r.profile nie jest przystosowana do zasilania danymi zewnętrznymi (a może jest?). Musimy więc uruchomić ją bezpośrednio z terminala, nie zaś z menu albo okienka Cmd na dole Layer Managera.
cat punkty.txt | r.profile input=elevation.dem output=profil.txt
Oczywiście do plików należy podać odpowiednie ścieżki.

W efekcie otrzymujemy plik tekstowy z profilem terenu, próbkowanym z rozdzielczością rastra, wzdłuż zadanej linii wektorowej.


Skocz do: