Skip to Content.
Sympa Menu

freegeocz - Re: [FreeGeoCZ] v.net.path, split, geokod

freegeocz AT fsv.cvut.cz

Předmět: Svobodná geoinformační infrastruktura

List archive

Re: [FreeGeoCZ] v.net.path, split, geokod


Chronological Podle vláken 
  • From: "Jachym Cepicky" <jachym.cepicky AT gmail.com>
  • To: "Dan Barta" <barta.kon AT seznam.cz>
  • Cc: freegeocz AT fsv.cvut.cz
  • Subject: Re: [FreeGeoCZ] v.net.path, split, geokod
  • Date: Thu, 22 Mar 2007 10:13:04 +0100
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=CrqjOV5TLlkXzhNXSeI1W3JF2vIxL2Stj1asUx0Jtw/g6QP5HayMXE2N624Q9fh+FFCoJ7XqpCLTGnCnm1Npa7o8G9yUHyyIpADjFI5tJb1sRXR2cYcOOD9iPEvMK9Tedek1GLm6rkgxdP8bLqwIwUdf0CyaXBi5MJUWkR55xMQ=
  • List-archive: <http://mailman.fsv.cvut.cz/pipermail/freegeocz>
  • List-id: Svobodná geoinformační infrastruktura <freegeocz.fsv.cvut.cz>

ahoj, něco skusím:

21.3.07, Dan Barta <barta.kon AT seznam.cz>:
Zdravim konferenci opet zavatou pod snehem
(zda se, ze do ni pisi jen tehdy kdyz i v nizinach se objevi ta bila mouka)


K veci - teoreticky ted resim nasledujici problem, jak by se delal v grassu:

Hledam cestu z A do B pomoci v.net.path najdu optimalni trasu, jenze:

Legenda:
o, A, B bod
o----o usek
2 id cislo useku


trasa je:
A------------->B

a data o silnicich, na nichz je dotaz delan, jsou:
o------o-----o---------o
1 2 3


a) ukol 1 rozsekat zdrojova data o silnicich na useky odpovidajici A->B:
(nyni pomineme ze ani A ani B nelezi geometricky na silnici)

o---A--o-----o-----B---o
11 12 2 31 32

Chtělo by to asi nějaký nástroj na převod Uzlů na body (něco jako
v.to.points ale s neexistující volbou "-n Write only line nodes").

pak by šlo spustit něco jako

# vytovření nových kategorií - unikátních pro každou linii
v.category in=roads out=cesty option=del
v.category in=cesty out=cestycat option=add

# vytvoření křižovatek z počátečních bodů linií (koncové jsou
"opomenuty", snad by to šlo pomocí v.to.db ... option=end|v.in.ascii
out=krizovatky2; v.patch && v.clean tool=rmdupl )
v.to.db -p map=cestycat col=foo option=start|v.in.ascii out=krizovatky
--o skip=1 cat=1 x=2 y=3

# v.net.path, lze použít buď body nebo křižovatky
echo "1 591768.11884375 4927037.94053125 602730.20339063
4916232.90590625"|v.net.path in=cestycat out=nejcesta

# rozlamani nejcesty
tady se přiznám, že jsem se poněkud ztratil nenapadá mě žádný způsob,
jak rozlámat "nejcesta" podle bodů z "krizovatky".. zebychom meli
rozsirit funkcionalitu v.edit?



b) ukol 2 geokodovat do nejake tabulky informaci, ze trase A->B
odpovidaji useky 12,2,31


no, to si dovedu predstavit jako
echo "create table cesty (z_do varchar(10), cats varchar(50))"|db.select

a ulozit do ni data ve formatu
echo "insert into cesty 'A,B', '34,23,5,45,'"|db.execute

samozrejme je potreba pred tim ty retezce vytvorit, ale to by snad
nemel byt takovy problem.

jestli se ti to podari vyresit, rad bych to nekde videl jako skript,
nejlepe na http://grass.gdf-hannover.de/wiki/GRASS_AddOns

jachym
-----

add 1) to si predstavuji tak ze vysledek v.net.path rozlozim na body a o
ty, ktere neexistuji jako vertexy v silnicich, zlomim useky silnice.
Precisluji indexy na unikatni.

add 2) asi jednoducha vec, nicmene si nedokazu predstavit jak se to
zapise do radku: tedy vyber shodne useky trasy a silnic a zapis do radku
neco takoveho: bunka1="AB" bunka2="12,2,31"

No a ted je ten problem, ze nevim jak teorii uvest alespon elementarne
do praxe. Nemuze mne nekdo nakopnout?



S pozdravkem

Dan Barta
z roviny na jihu moravy

_______________________________________________
FreeGeoCZ mailing list
FreeGeoCZ AT fsv.cvut.cz
http://mailman.fsv.cvut.cz/mailman/listinfo/freegeocz




--
Jachym Cepicky
e-mail: jachym.cepicky gmail com
URL: http://les-ejk.cz
GPG: http://www.les-ejk.cz/pgp/jachym_cepicky-gpg.pub





Archivace běží na MHonArc 2.6.19+.

Top of Page