Re: [Talk-cz] diakritika v centru Prahy

2008-09-01 Tema obsahu Stanislav Brabec
Pavel Machek píše v Po 01. 09. 2008 v 01:46 +0200:
 Ahoj!
 
  Za pomoci sileneho tagovaciho skriptu (a pak rucni kontroly/editace v
  emacsu) jsem opravil cestinu ve jmenech ulic v centru prahy -- PSC
  110XX. To co se lisilo jen ve zkratkach nebo velikosti pismen jsem
  nechaval na pokoji, ale mozna by stalo zato opravit i to podle
  oficialnich dat.
 
 No, a kdyz uz jsem mel po ruce ten sileny skript, tak jsem v centru
 doplnil chybejici jmena ulic. Ze 71 highway=residential se podarilo
 najit jmeno pro 57.

Když jsem se na to díval, připadá mi jako velký problém, že ulice v této
oblasti byla síť ulic kreslena bez ohledu na jejich pojmenování.

Například:

Část ulice Husova byla pojmenována již dříve jako Na Perstyne.
Nyní byla upravena na Na Perštýně. Skript ovšem neřešil, že ulice Na
Perštýně je výrazně kratší.

Retezova byla správně přejmenována na Řetězová, nicméně přes ulici
již zůstal název Retezova (Jsem přesvědčen, že tam ve skutečnosti
žádná ulice není, tak jsem jí smazal všechny tagy. Až to někdo ověří,
tak se buď doplní správně anebo se smaže úplně.)

Nemáš někde seznam podobných konfliktů? Mohl bys totéž zkusit i na
Prahu 2, kde jsem se pokoušel podobné problémy likvidovat ručně (na
12800).


Možná by šlo přidat pravidlo:
Na mapě se ulice jmenuje A. V UIR-ADR se jmenuje B. V UIR-ADR existuje A
i B = rozděl ulici.

-- 
Stanislav Brabec
http://www.penguin.cz/~utx


___
Talk-cz mailing list
Talk-cz@openstreetmap.org
http://lists.openstreetmap.org/listinfo/talk-cz


Re: [Talk-cz] diakritika v centru Prahy

2008-09-01 Tema obsahu Pavel Machek
Ahoj!

   Za pomoci sileneho tagovaciho skriptu (a pak rucni kontroly/editace v
   emacsu) jsem opravil cestinu ve jmenech ulic v centru prahy -- PSC
   110XX. To co se lisilo jen ve zkratkach nebo velikosti pismen jsem
   nechaval na pokoji, ale mozna by stalo zato opravit i to podle
   oficialnich dat.
  
  No, a kdyz uz jsem mel po ruce ten sileny skript, tak jsem v centru
  doplnil chybejici jmena ulic. Ze 71 highway=residential se podarilo
  najit jmeno pro 57.
 
 Když jsem se na to díval, připadá mi jako velký problém, že ulice v této
 oblasti byla síť ulic kreslena bez ohledu na jejich pojmenování.
 
 Například:
 
 Část ulice Husova byla pojmenována již dříve jako Na Perstyne.
 Nyní byla upravena??? na Na Perštýně. Skript ovšem neřešil, že ulice Na
 Perštýně je výrazně kratší.
 
 Retezova byla správně přejmenována na Řetězová, nicméně přes ulici
 již zůstal název ???Retezova (Jsem přesvědčen, že tam ve skutečnosti
 žádná ulice není, tak jsem jí smazal všechny tagy. Až to někdo ověří,
 tak se buď doplní správně anebo se smaže úplně.)
 
 Nemáš někde seznam podobných konfliktů? Mohl bys totéž zkusit i na
 Prahu 2, kde jsem se pokoušel podobné problémy likvidovat ručně (na
 12800).
 
 
 Možná by šlo přidat pravidlo:
 Na mapě se ulice jmenuje A. V UIR-ADR se jmenuje B. V UIR-ADR existuje A
 i B = rozděl ulici.

Muzes zkusit ;-). Ale zas _tak_ dobra ta statistika neni.

(Jinak 12800 jsem projel, viz jiny mail, vysledek by mel byt v
databazi).

Pavel

Index: Way.cpp
===
--- Way.cpp (revision 10302)
+++ Way.cpp (working copy)
@@ -63,9 +63,12 @@
 {
 
if (hasTags() || segments.size()) {
-   strmway id='  id  '  endl;
+   strmway id='  id  ';
+   if (changed)
+   strm   action='modify';
+   strmendl;
for(int count=0; countsegments.size(); count++)
-   strm   seg id='  segments[count]  '/  
endl;
+   strm   nd ref='  segments[count]  '/  
endl;
tagsToXML(strm);
strm/way  endl;
} else {
Index: Way.h
===
--- Way.h   (revision 10302)
+++ Way.h   (working copy)
@@ -38,14 +38,18 @@
vectorint segments;
 
 public:
+   int changed;
+
Way()
{
id = 0;
+   changed = 0;
}
 
Way(int id)
{
this-id=id;
+   changed = 0;
}
 
void addSegment (int s)
Index: Components.cpp
===
--- Components.cpp  (revision 10302)
+++ Components.cpp  (working copy)
@@ -17,7 +17,6 @@
 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
 
  */
-// 180306 updated for 0.3
 #include Components.h
 #include iostream
 #include fstream
@@ -355,7 +354,7 @@
 
 void Components::toXML(std::ostream strm)
 {
-   strm  ?xml version='1.0'?endlosm version='0.3'  endl;
+   strm  ?xml version='1.0'?endlosm version='0.5'  endl;
rewindNodes();
while(hasMoreNodes())
{
Index: Parser.cpp
===
--- Parser.cpp  (revision 10302)
+++ Parser.cpp  (working copy)
@@ -45,23 +45,6 @@

 
}
-   else if(!strcmp(element,segment))
-   {
-   curID=0;
-   inSegment = true;
-   for(int count=0; attrs[count]; count+=2)
-   {
-   if(!strcmp(attrs[count],from))
-   from = atoi(attrs[count+1]);
-   if(!strcmp(attrs[count],to))
-   to = atoi(attrs[count+1]);
-   if(!strcmp(attrs[count],id))
-   curID = atoi(attrs[count+1]);
-   }
-
-   curObject = new Segment(curID,from,to);
-   components-addSegment ((Segment*)curObject);
-   }
else if (!strcmp(element,way))
{
curID=0;
@@ -74,13 +57,13 @@
curObject  =  new Way(curID);
components-addWay((Way*)curObject);
}
-   else if (!strcmp(element,seg)  (inWay))
+   else if (!strcmp(element,nd)  (inWay))
{
int segID;
 
for(int count=0; attrs[count]; count+=2)
{
-   if(!strcmp(attrs[count],id))
+   if(!strcmp(attrs[count],ref))
{