Thread View: pl.comp.gis
7 messages
7 total messages
Started by wizard
Tue, 16 Jun 2009 06:15
Algorytm Line Marge
Author: wizard
Date: Tue, 16 Jun 2009 06:15
Date: Tue, 16 Jun 2009 06:15
5 lines
1177 bytes
1177 bytes
Witam Szukam algorytmu Line marge (łączenie elemenów liniowych) w C++ Znalazłem na GEOS-ie, ale wchodzia tablica wektorów x,y,z a ja potrzebuję jeszcze na wektorze jakiś wskaźnik (np. atrybut), oczywiście z wyjściem. Może ktoś miał podobny problem i wie jak go rozwiązać?
Re: Algorytm Line Marge
Author: Mateusz Loskot
Date: Tue, 16 Jun 2009 11:23
Date: Tue, 16 Jun 2009 11:23
18 lines
1609 bytes
1609 bytes
"wizard" <gggg@wp.pl> wrote in message news:h17dhg$5or$1@nemesis.news.neostrada.pl... > Witam > Szukam algorytmu Line marge (��czenie elemen�w liniowych) w C++ > Znalaz�em na GEOS-ie, ale wchodzia tablica wektor�w x,y,z a ja potrzebuj� > jeszcze na wektorze jaki� wska�nik (np. atrybut), oczywi�cie z wyj�ciem. > Mo�e kto� mia� podobny problem i wie jak go rozwi�za�? Jakie atrybuty? To operacja na geometrii, więc nie kumam po co Ci atrybuty opisowe. p.s. Popraw kodowanie wiadomości na iso-8859-2 albo utf-8 -- Mateusz Loskot, http://mateusz.loskot.net pl.comp.lang.c FAQ: http://pl.cpp.wikia.com/wiki/FAQ C++ FAQ: http://parashift.com/c++-faq-lite
Re: Algorytm Line Marge
Author: wizard
Date: Tue, 16 Jun 2009 12:19
Date: Tue, 16 Jun 2009 12:19
3 lines
1176 bytes
1176 bytes
ok ale musze miec przynajmniej identyfikatory obiektów aby odtworzyc ich atrybuty opisowe np. laczenie drog ale tak by pamietac ich numery po zlaczeniu
Re: Algorytm Line Marge
Author: Mateusz Loskot
Date: Tue, 16 Jun 2009 12:54
Date: Tue, 16 Jun 2009 12:54
32 lines
2337 bytes
2337 bytes
"wizard" <gggg@wp.pl> wrote in message news:h182rs$7mc$1@nemesis.news.neostrada.pl... > ok ale musze miec przynajmniej identyfikatory > obiekt�w aby odtworzyc ich atrybuty opisowe > np. laczenie drog ale tak by pamietac ich numery po zlaczeniu GEOS to biblioteka do geometrii obliczeniowej. Geometria obliczeniowa nic nie wie o elementach GIS, jak powiązanie geometrii z atrybutami opisowymi. GEOS nie jest biblioteką GIS. (Podobnie jak CGAL - http://www.cgal.org/ czy inne GGL - http://trac.osgeo.org/ggl/) Natomiast OGR z GDAL (http://gdal.org/ogr) jest to GIS. OGR z GDAL używa GEOS do operacji geometrycznych. I tak klasa OGRFeature powiązuje geometrię z atrybutami opisowymi. Jeśli masz dwa obiekty OGRFeature reprezentują Twoje dwie drogi, to możesz na nich zaaplikować na nich operację union (OGRGeometry::Union) i np. utworzyć nowy obiekt OGRFeature który reprezentuje nową drogę powstałą z poprzednich o numerach takich a takich. W skrócie, na bazie egzampla z OGR, sam sobie implementujesz wsparcie dla powiązania atrybutów z geometrią (albo używasz OGRFeature), i w tej implementacji używasz GEOS jedynie do operacji na geometriach. Pozdrawiam -- Mateusz Loskot, http://mateusz.loskot.net pl.comp.lang.c FAQ: http://pl.cpp.wikia.com/wiki/FAQ C++ FAQ: http://parashift.com/c++-faq-lite
Re: Algorytm Line Marge
Author: wizard
Date: Wed, 17 Jun 2009 05:45
Date: Wed, 17 Jun 2009 05:45
41 lines
2739 bytes
2739 bytes
Dzięki za obszerne wyjaśnienia to jest dla mnie bardzo pomocne i tego właśnie szukałem pozdrawiam Użytkownik "Mateusz Loskot" <mateusz@loskot.net> napisał w wiadomości news:h184lk$d6i$1@inews.gazeta.pl... > "wizard" <gggg@wp.pl> wrote in message > news:h182rs$7mc$1@nemesis.news.neostrada.pl... >> ok ale musze miec przynajmniej identyfikatory >> obiekt?w aby odtworzyc ich atrybuty opisowe >> np. laczenie drog ale tak by pamietac ich numery po zlaczeniu > > > GEOS to biblioteka do geometrii obliczeniowej. > Geometria obliczeniowa nic nie wie o elementach GIS, jak powiązanie > geometrii z atrybutami opisowymi. GEOS nie jest biblioteką GIS. > (Podobnie jak CGAL - http://www.cgal.org/ czy inne GGL - > http://trac.osgeo.org/ggl/) > > Natomiast OGR z GDAL (http://gdal.org/ogr) jest to GIS. OGR z GDAL używa > GEOS do > operacji geometrycznych. I tak klasa OGRFeature powiązuje geometrię z > atrybutami opisowymi. > > Jeśli masz dwa obiekty OGRFeature reprezentują Twoje dwie drogi, to > możesz na nich zaaplikować na nich operację union (OGRGeometry::Union) > i np. utworzyć nowy obiekt OGRFeature który reprezentuje nową drogę > powstałą z poprzednich o numerach takich a takich. > > W skrócie, na bazie egzampla z OGR, sam sobie implementujesz > wsparcie dla powiązania atrybutów z geometrią (albo używasz OGRFeature), > i w tej implementacji używasz GEOS jedynie do operacji na geometriach. > > Pozdrawiam > -- > Mateusz Loskot, http://mateusz.loskot.net > pl.comp.lang.c FAQ: http://pl.cpp.wikia.com/wiki/FAQ > C++ FAQ: http://parashift.com/c++-faq-lite
Re: Algorytm Line Marge
Author: wizard
Date: Wed, 17 Jun 2009 06:57
Date: Wed, 17 Jun 2009 06:57
51 lines
3000 bytes
3000 bytes
Ale jeszcze jedno wyjasnienie w GEOS mam cos takiego LineMerger lm; lm.add(geoms); vector<LineString *> *mls = lm.getMergedLineStrings(); i sprawa prost bo dostaje zlaczone geometrie dla obiektow liniowych w GDAL -u tego nie widze a metoda Union (z tego co wyczytalem) sluzy do laczenia obszarow czy bilbioteke geos nalezy podlaczyc do gdal ? nie bardzo wiem jak to ugryzc Użytkownik "Mateusz Loskot" <mateusz@loskot.net> napisał w wiadomości news:h184lk$d6i$1@inews.gazeta.pl... > "wizard" <gggg@wp.pl> wrote in message > news:h182rs$7mc$1@nemesis.news.neostrada.pl... >> ok ale musze miec przynajmniej identyfikatory >> obiekt?w aby odtworzyc ich atrybuty opisowe >> np. laczenie drog ale tak by pamietac ich numery po zlaczeniu > > > GEOS to biblioteka do geometrii obliczeniowej. > Geometria obliczeniowa nic nie wie o elementach GIS, jak powiązanie > geometrii z atrybutami opisowymi. GEOS nie jest biblioteką GIS. > (Podobnie jak CGAL - http://www.cgal.org/ czy inne GGL - > http://trac.osgeo.org/ggl/) > > Natomiast OGR z GDAL (http://gdal.org/ogr) jest to GIS. OGR z GDAL używa > GEOS do > operacji geometrycznych. I tak klasa OGRFeature powiązuje geometrię z > atrybutami opisowymi. > > Jeśli masz dwa obiekty OGRFeature reprezentują Twoje dwie drogi, to > możesz na nich zaaplikować na nich operację union (OGRGeometry::Union) > i np. utworzyć nowy obiekt OGRFeature który reprezentuje nową drogę > powstałą z poprzednich o numerach takich a takich. > > W skrócie, na bazie egzampla z OGR, sam sobie implementujesz > wsparcie dla powiązania atrybutów z geometrią (albo używasz OGRFeature), > i w tej implementacji używasz GEOS jedynie do operacji na geometriach. > > Pozdrawiam > -- > Mateusz Loskot, http://mateusz.loskot.net > pl.comp.lang.c FAQ: http://pl.cpp.wikia.com/wiki/FAQ > C++ FAQ: http://parashift.com/c++-faq-lite
Re: Algorytm Line Marge
Author: Mateusz Loskot
Date: Wed, 17 Jun 2009 13:11
Date: Wed, 17 Jun 2009 13:11
36 lines
2114 bytes
2114 bytes
"wizard" <gggg@wp.pl> wrote in message news:h1a3ug$koh$1@atlantis.news.neostrada.pl... > Ale jeszcze jedno wyjasnienie > w GEOS mam cos takiego > > LineMerger lm; > lm.add(geoms); > vector<LineString *> *mls = lm.getMergedLineStrings(); > > i sprawa prost bo dostaje zlaczone geometrie dla obiektow liniowych > > w GDAL -u tego nie widze Pobierz z OGRGeometry geometrię w formie obiektu zjadliwego przez GEOS: OGRGeometry::exportToGEOS Pamiętaj, że dostajesz tu wskaźnik na GEOSGeometry, czyli "wraper" na geometrię GEOS na poziomie GEOS C API. Mergera używasz przez funkcję GEOSLineMerge, a więc używasz GEOS C API nie C++ API. > a metoda Union (z tego co wyczytalem) sluzy do laczenia obszarow Racja, umkneło mi. > czy bilbioteke geos nalezy podlaczyc do gdal ? Nie wiem skąd masz binaria GDAL, ale jesli to jedne z oficjalnych, to GEOS jest włączony Pozdrawiam -- Mateusz Loskot, http://mateusz.loskot.net pl.comp.lang.c FAQ: http://pl.cpp.wikia.com/wiki/FAQ C++ FAQ: http://parashift.com/c++-faq-lite
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads