OpenStreetMap

skorasaurus's Diary

Recent diary entries

How to mark a single point on OSM and share it with friends (Tutorial)

Posted by skorasaurus on 15 November 2011 in English. Last updated on 16 November 2011.

I wondered for a while, if I want to send a link to a friend of a that displays a specific point, for example, of a field (also known as a pitch here on OSM) that I want a few friends to play football or frisbee this weekend, how would I do it ?

It's a fairly simple request and it's one that I didn't know how to do until today and this deserves a lot more attention in order to make OSM more useful to users including myself.

There's a couple options:

A. Search for the address or name of the place, in nominatium, OSM's search tool, located on the left hand side of http://www.openstreetmap.org/
For specific places that do not have addresses or have not yet been added to OSM (and this is often the case here in the USA), this can be frustrating and you're out of luck.

You can add a marker almost anywhere you want:

B.
1. Move the map (you can move the map by left-clicking on the map and hold the left mouse button) so that the place that you want to 'mark' is in the middle of your map.
2. Right click on 'Shortlink' the bottom right-hand corner

You'll have a url like: http://osm.org/go/ZWb9DX4TV--

3. Add "?m" (without the quotation marks) to end of the URL.

Example: http://osm.org/go/ZWb9DX4TV--?m

Before double-checking that the URL points to the right place, be sure to copy this url to a plain text file or a new window, because after you load it in your browser, the URL is redirected and your new redirected (and much longer) URL in your address box won't have the marker.

4. Your URL - http://osm.org/go/ZWb9DX4TV--?m - is ready to go and to be sent to friends.

(PS - thanks to richlv in #osm for letting me know how to do this !)

After reading in Gizmondo about the odd structures in the Gobi Desert found by google earth aficionados http://gizmodo.com/5859081/why-is-china-building-these-gigantic-structures-in-the-middle-of-the-desert

Have any fellow OSMers have come across anything like this while browsing aerial imagery during their mapping/tracing ?

Feel free to tell your sketchiest, most suspicious things that you've aerial tracing or mapping !

[Mine: In a economically depressed neighborhood, I found about 15-20 Jaguars (the automobile, not the animal =p] , in all years and conditions, lined up next to each other at the end dead-end street, across the street, a unmarked building, surrounded by a chain-linked fence.

http://osm.org/go/ZWb9Q1ajC--?m

(thanks to richlv in #osm for showing me how to make a marker !)

Location: Stockyards, Cleveland, Cuyahoga County, Ohio, United States

How to create an OSM extract of your city.

Posted by skorasaurus on 8 November 2011 in English. Last updated on 19 April 2014.

Update:

Here's how to obtain all of the OSM data within your city's boundaries. This assumes you are a linux or Mac OS X user and have JOSM and [osmosis](http://wiki.openstreetmap.org/wiki/Osmosis) installed.

1. Download an extract of your state or country. Geofabrik posts extracts for each US state and Canadian Province on a [http://download.geofabrik.de/north-america.html](daily basis).

2. Obtain the OSM_id for the relation of your city's boundary. I do this by downloading a small area of my city and its border in JOSM, selecting part of your boundary, and then pressing cntrl + shift + i). This will open a new window in your web browser containing the tags for a portion of your boundary.
Now the way id that you brought up IS NOT the entire boundary for the city, it's only a part of it as ihighlighted in the map. You need the osm_id for the city's entire boundary. You can obtain this by going to the bottom of that webpage and find "Part of: Relation: Name of the city (THE_OSM_ID)" This is the_OSM_id of your city's entire boundary. For example, "Relation Cleveland (182130) (as outer)" Copy this You will need it for Step #2.

3. Obtain the .poly for your city's entire boundary. I prefer to use this tool by Jocelyn at http://osm102.openstreetmap.fr/~jocelyn/polygons/index.py
Paste in the THE_OSM_ID from step #1 into the uppermost text box and hit enter.
In the new window, right-click and save the .poly file and choose whatever you'd like.

This will new window will appear, copy its contents and choose its file name, name.poly

4. Use osmosis to filter out the administrative boundaries.

osmosis --read-pbf file=ohio-latest.osm.pbf --bounding-polygon file=cleveland.poly --used-node --write-pbf cleveland.osm.pbf

Customize the command above to the your file names. Make sure that the poly file is in the same directory as your PBF extract.

If you have a very small town and want to examine the data in JOSM first, you can
osmosis --read-pbf file=ohio.osm.pbf --bounding-polygon file=cleveland.poly --used-node --write-xml cleveland.osm

Voila, you have your extract :)

==========================================================================
Original post test, kept for posterity.

I have been rendering maps of my local city [Cleveland, Ohio] recently. Because of Cleveland's administrative borders, I had to extract the city of Cleveland using a large bounding box that included a lot of data outside of the city of Cleveland. As a result, I had to manually remove many ways and nodes (via josm) outside the city's borders before I later used this data within the city's boundaries for rendering in osmarender, and as a postgis db in tilemill and mapbik.

To automate this, I have been looking to create an extract of my city (and hopefully to be able to replicate this with other cities). This extract would only contain data within the city's administrative boundaries.

I found a similar project to mine,
https://github.com/migurski/Extractotron The Extractotron - which is a great project but its extracts are for cities including areas outside a city's administrative borders.

I have unsuccessfully tried the following:

1] Created an extract that contains the administrative borders of my city in its entirity from a larger extract (in my case, my state) from geofabrik

bzcat ohio.osm.bz2 | osmosis\
--read-xml enableDateParsing=no file=-\
--bounding-box top=41.606 left=-81.88 bottom=41.3903 right=-81.5323 clipIncompleteEntities=true --write-xml file=-\
| bzip2 > extracted.osm.bz2

2.] Filtered the extract again in osmosis to only contain the administrative boundaries [and highway motorway link as a reference for me]

Specifically I did:
osmosis --read-xml extracted.osm --way-key-value keyValueList="highway.motorway_link,boundary.administrative" --used-node --write-xml entireclevelandboundingbox.osm

4. Opened the file in josm, selected the multipolygon that consisted of the city's administrative boundary, and then right-clicked on it, Selected Members, and copied it to a new layer

5. In the new layer, Removed the tags from the city's boundaries and then combined all of them into one single way [in one direction] and saved it as a new osm file.

http://dl.dropbox.com/u/17003223/clevelandboundaryonly-dell.osm

6. Used osm2poly to create a polygon:
perl ./osm2poly.pl clevelandboundaryonly-dell.osm > clevelandboundaryonly-dell.poly

polygon can be found:

http://dl.dropbox.com/u/17003223/clevelandboundaryonly-dell.poly

7. Use the polygon as the boundary from the first large extract [from the state of ohio].

bzcat ohio.osm.bz2 | osmosis\
--read-xml enableDateParsing=no file=-\
--bounding-polygon file=clevelandboundaryonly-dell.poly clipIncompleteEntities=true --write-xml file=-\
| bzip2 > extracted.osm.bz2

http://dl.dropbox.com/u/17003223/extracted-dell.osm
This last osm file results in administrative boundaries are broken and incomplete.

An example of these broken boundaries can be can see in a screenshot of josm at http://i.imgur.com/Tw8Ba.png
In this screenshot, the underlying gray line is an inactive layer in josm and the same OSM file that I used to create the polygon in Step 5. The
administrative boundary, shown as orange dashed line in the screenshot, is from the extract in step 7 and should be over the gray line.

Any idea why the boundaries are broken in my new extract ?

Although we were unsuccessful, thank you to stereo in #osm for troubleshooting this with me yesterday

Location: Tremont, Cleveland, Cuyahoga County, Ohio, United States

Updates in Cleveland, Ohio

Posted by skorasaurus on 28 September 2011 in English. Last updated on 29 September 2011.

Since I became active in OSM over the past 10 months or so, I look back and see a bit of progress in Cleveland that I made.

There's a quite a few neighborhoods that are done (I'm using done loosely here, as having all of its ways verified and named, if applicable, with the exception of less than handful of streets in each): Ohio City, Brooklyn Centre, Downtown Warehouse District, Tremont, Old Brooklyn, Hough, and Detroit-Shoreway.

In fact, most ways west of downtown to W.100th are done. The TIGER edited map viewer - http://open.mapquestapi.com/tigerviewer/index.html?zoom=12&lat=41.47058&lon=-81.70815&layers=B highlights what has been edited since the TIGER import.

Pretty much there's just West Park/Kamm's Corner, Collinwood, the flats, mount pleasant, a part of slavic village (I hope to take that out in the next week or 2), and the Lee/harvard are.

I've also been through a lot of parts of Cleveland that I wouldn't have visited otherwise, found a couple cool businesses, picturesque views, nice houses, some Cleveland history, and met a couple people.

Location: Gateway District, Cleveland, Cuyahoga County, Ohio, 44115, United States

Since my last entry,http://www.openstreetmap.org/user/skorasaurus/diary/14830

I have been configuring the options in my osmosis filter so that Lake Erie would be rendered in my small bounding box area extract

bzcat ohio.osm.bz2 | osmosis\
--read-xml enableDateParsing=no file=-\
--bounding-box top=41.51245 left=-81.7291 bottom=41.49503 right=-81.69391 completeWays=yes --write-xml file=-\
| bzip2 > extracted.osm.bz2

Using the extract created from the above osmosis bounding box filter, I ran my additional osmosis filter (which removes most nodes and ways except for motorways and highways - I'll post it as a comment to this diary), and then close-areas.pl (a T@h module), I had been able to render Lake Erie using or/p ! I was excited !

This was the resulting image:
http://i.imgur.com/tgOew.jpg (fyi, imgur automatically converted the render png to a jpg)

I tried to replicate this same workflow with my larger bounding box (which covers all of the city of Cleveland for my Cleveland Neighborhood Map), otherwise the same osmosis filter:

bzcat ohio.osm.bz2 | osmosis\
--read-xml enableDateParsing=no file=-\
--bounding-box top=41.600 left=-81.85 bottom=41.4173 right=-81.5323 completeWays=yes --write-xml file=-\
| bzip2 > extracted.osm.bz2

Then, After applying my osmosis ways filter and close-areas.pl to this larger bounding box extract, I rendered the data and the Water was throughout the map :(
- seen here: http://imgur.com/hdeoM

Any suggestions of how to fix this so that I can render Lake Erie ?

As recommend in http://wiki.openstreetmap.org/wiki/Tiles@home/Dev/Interim_Coastline_Support#Debugging

I checked the coastline and found that the coastline was connected together.

With the past month or so spent trying to render Lake Erie with osmarender and seeing the very active development with mapnik and tilemill, I'm thinking about switching over to mapnik (or tilemill) to render the Cleveland neighborhood map.

Location: Ohio City, Cleveland, Cuyahoga County, Ohio, 44199, United States

I still haven't figured out how to render Lake Erie on the Cleveland neighborhood map http://skorasaurus.wordpress.com/cleveland-neighborhood-map/ just yet.

As I wrote earlier http://www.openstreetmap.org/user/skorasaurus/diary/14493, I tried to render Lake Erie through or/p first using a relatively small area, of top=41.51245 left=-81.7291 bottom=41.49503 right=-81.69391 of downtown cleveland and a relatively small portion of Lake Erie. I thought this small sample area would be a good candidate to establish the correct configuration files and workflow so I could later use the same processes and configurations on a larger bounding box that consisted of the entire city of Cleveland and Lake Erie.

I downloaded this smaller area/bounding box through the openstreetmap.org website (as OpenStreetMap XML Data, to create an .OSM file). After running osmosis on this file (to remove some highways and buildings), I
render the area but Lake Erie still did not appear. I later learned that I would need to run close-areas.pl on the file after running osmosis on my OSM file (as explained in my earlier diary entry) http://www.openstreetmap.org/user/skorasaurus/diary/14493.

Alas, the smaller area rendered with the lake erie but the larger area did not render Lake Erie. Why, I thought ? I made several guesses through trial and error (like removing clipIncompleteEntities=true - an option in my osmosis configuration), but it did not work. September 5th, I realized that the sources of the bounding boxes were different could be be the cause why Lake Erie could be rendered in the smaller area but did not render using the larger bounding box used in the Cleveland Neighborhood Map.

For the Cleveland Neighborhood Map, I have downloaded the larger area from an extract of the state of Ohio, hosted on geofabrik, and then extracted the bounding box using osmosis (included at the bottom of the post)
The smaller area which I have been debugging , I had simply downloaded directly from the OSM server's export interface. http://www.openstreetmap.org/export?lat=41.4843&lon=-81.7044&zoom=14&layers=M

On the sept. 5th, I tested this hypothesis by extracting the smaller area from the state of ohio extract through osmosis, then proceeded to run osmosis again (removing certain types of ways - this is included on the bottom), then close-areas.pl, and nope, it did not render correctly.

I then hypothesized that the reason the lake won't render is because that state of ohio extract does not have the Lake Erie data within it OR that I am not running the correct configuration in my initial osmosis filtering.

(extracting the bounding box used for the the cleveland neighborhood map through osmosis)
bzcat ohio.osm.bz2 | osmosis\
--read-xml enableDateParsing=no file=-\
--bounding-box top=41.6000 left=-81.85 bottom=41.4173 right=-81.5323 clipIncompleteEntities=true --write-xml file=-\
| bzip2 > extracted.osm.bz2

Location: Port of Cleveland, Cleveland, Cuyahoga County, Ohio, United States

When I locally render (using or/p and the default z15 tiles@home stylesheet) a portion of the Lake Erie lakefront, land that is not water is displayed as water the map, as shown at
http://i.imgur.com/iTjTB.png

In the above picture, the lake is also not rendered.

However, on openstreetmap.org, the coastline area is displayed correctly as land.
as shown in: http://www.openstreetmap.org/?lat=41.50955&lon=-81.69886&zoom=15&layers=O

Any ideas why the coastline is displaying as water in my local renderings ?

I am trying to have the coastline render correctly as land and and the lake to render (as blue) too.

Location: Port of Cleveland, Cleveland, Cuyahoga County, Ohio, United States

Map of Openstreetmap road verification in Cleveland, Ohio

Posted by skorasaurus on 18 July 2011 in English. Last updated on 22 July 2011.

As I began creating the Cleveland Neighborhood map - (see http://skorasaurus.wordpress.com/cleveland-neighborhood-map/ for more information),

Some of the OpenStreetmap data (as of Dec. 2010) in Cleveland, generated from TIGER data in 2007 was inaccurate. Some of this data had roads that no longer exist, were not at the same GPS coordinates as in real life, and did not have roads that were newly created, or had incorrect names. I’ve traveled on many of Cleveland’s roads to verify the existing data.

As I began editing the Cleveland area in OSM, the TIGER map on Mapquest - http://open.mapquestapi.com/tigerviewer/index.html?zoom=12&lat=41.47058&lon=-81.70815&layers=B displayed with relatively high accuracy of what I’ve verified
(red = not verified
green = verified)
However, the TIGER map on mapquest would change any way to green that had been edited in any way since the TIGER import. In many cases, I or another OSM user would make an edit but not necessarily verify, for example, a user or I would split the road, although the ways were still connected together, to verify one part but not the other). This edit would result in both roads marked as edited in the Mapquest TIGER map.

I created my own map and created my osmarender stylesheet to display what streets I and other OSM users have verified within the city of Cleveland. Each way contains multiple tags that describing the way. One of these tags ‘tiger:reviewed’ was automatically added to each way imported from TIGER. It’s a superfluous tag and I and some other OSM taggers around the US have removed the tag from the way to verify the rest of the tags in a way is correct and that the way is in a correct place.

The style was based off a TIGER map on Mapquest which marks in green the roads that have been edited in any way since they were first imported from TIGER and red which have not.

see http://skorasaurus.files.wordpress.com/2011/07/motoways-2011-07-10-100dpi.png to view the map (PNG, 10 MB) of what’s been verified so far by me (and a couple other OSM users), as of July 10, 2011.

The osmarender stylesheet can be found at http://pastebin.com/F87JdPH9

In a nutshell, I'm trying to merge two .OSM files. One of them consists of only administrative boundaries and the other consists of a bunch of data (motorways) without any administrative boundaries.

I plan to merge the two files together.

Here's the osmosis command that I was using:
osmosis --read-xml largermessedbaroundaries.osm --read-xml boundariesonly.osm --merge conflictResolutionMethod=lastSource --write-xml boundariesrestored.osm

(I realize that I misspelled boundaries in one of the files' names but have decided to not rename it for consistency).

I'm trying this diary out for the heck of it and there's OSM news.

Since I started editing the Cleveland area in OSM in late December, no one else locally had made edits to the Cleveland area, with the exception of 2-3 people who edited once.

Just in the past 7 days, there has been a sudden explosion of new users, who are contributing within the City of Cleveland and nearby: adding local businesses, parking lots, and schools to the map [something that I have only did a little of, because there's so much to be done in Cleveland].

Days after joining osm, I was shocked to find other cities: Chicago, Cincy, Philly, and countless ones in Europe, to have maps so much richer than the rest of the city of Cleveland.

Cleveland just got a lot stronger and welcome new users =)

Location: Goodrich-Kirtland Park, Cleveland, Cuyahoga County, Ohio, United States