OpenStreetMap

GSoC Diary: Conclusion

Posted by n42k on 25 September 2017 in English.

Google Summer of Code is over, and the 3D model repository was successfully completed, with great results: all the requirements are accounted for, and there were a few extra features implemented.

In August, many crucial features were added: model uploading, map, nightlies, administration of the models, comments and users, and finishing both documenting and implementing the API. I’ve also done lots of polishing, namely in the documentation, caching the models, layout improvements and fixed lots of issues in general, from bugs to simple color changes. The extra features that were added are model editing and revising, letting users alter the submitted models.

Screenshot of the model upload page The model uploading page, allowing users to add new models to the repository, and specify their metadata, including title, description, their coordinates (which they can pick on a Leaflet map), license and transformations.

Screenshot of the model page, showing map view The most noticeable feature here is the marker map, showing the position of the model, as well as the models around it. This is also available as a full page in the ‘Map’ page. The revising feature allows users to upload a new revision of a model they own, keeping its metadata, and the editing feature allows them to edit the model’s metadata. Admins can hide/unhide models. Hidden models are still viewable by other admins. Comments can be hidden in the same way as models. There is also a ‘3D View’ tab, which is displayed by default, which has been the subject of the previous diary entry.

Screenshot of an excerpt of the API docs page An excerpt of the API docs, showing the live testing of the full search endpoint, so that anyone using the API can test the most complex features right in their browser, speeding up development time.

Stay tuned for the next diary entry for the upcoming launch!

Discussion

Comment from Polyglot on 26 September 2017 at 10:26

I must admit I didn’t follow this project closely, so maybe this is a dumb question…

Is there a tag on the OSM side that indicates a model is available for a feature on the map?

Jo

Comment from n42k on 26 September 2017 at 10:34

We’re working on it, in preparation for the launch.

Comment from dcp on 30 September 2017 at 05:50

This is a real dumb question. What software do yo need to create these 3D models fit for OSM?

Comment from Polyglot on 30 September 2017 at 06:08

In a previous diary entry n42k mention he used https://www.blender.org/ to convert the model of the Eiffel tower to Wavefront OBJ format.

I guess it would be possible to use it directly, but most of us probably need some tutorials first, before we can do anything useful.

Comment from n42k on 30 September 2017 at 07:24

dcp:

Any software that exports files in the Wavefront OBJ format should work fine.

For testing purposes, I imported a model into Sketch Up from the 3D Warehouse (here), exported it to the OpenCOLLADA file format, then converted it to Wavefront OBJ in Blender.

Using Blender directly is sure to work, and most (if not all!) other programs that also export in Wavefront OBJ will work.

Comment from dcp on 30 September 2017 at 10:57

n24k: Thanks. I have downloaded Blender and it seems I have a lot of leaning before me. I would like to model the most important buildings in my small town and add them to OSM. I assume that Blender is suitable for this purpose. As I am a complete novice it will take time of course. Have you any further hints. Note: I see there are tutorials so I assume that it would be wise to start with them.

Comment from dcp on 1 October 2017 at 10:52

n24k:

  1. I am a bit confused. What has a “Google summer of code” got to do with OSM?

  2. If I do create Wavefront OBJ in Blender, how do I add them to OSM?

  3. What renderers are available that would recognize and render them? Would F4 demo do the job?

I would like to understand if the whole chain of events is possible before I start learning how to create OBJs in Blender.

Comment from Polyglot on 1 October 2017 at 11:11

Google has a project where they pay a stipend to students to improve Free Software projects.

So our software is improved and Google is paying for it, so that’s nice of them.

You add the OBJ to the website and declare there to which OSM object it belongs. Pointing in the other direction comes later, if I understood correctly.

Don’t know the answer to question 3. It’s all fairly ‘cutting edge’ :-)

Jo

Comment from n42k on 3 October 2017 at 06:42

Thank you for the early response, Polyglot!

dcp:

Polyglot said it all, except linking OSM and the model repository: you would use a tag in OSM to declare the model id of the model. We’re still working on this tag.

There are currently no renderers that work with the repository, and the repository hasn’t been launched yet, but we’re working on both of these.

Comment from dcp on 5 October 2017 at 05:58

To Polyglot and n42k.

Thanks to both of you for your response. I’ll just have to be patient, won’t I?

Comment from Polyglot on 5 October 2017 at 06:21

For the time being you can start to learn how to create models and create some. You might also want to document your “learning path”, so others can follow more easily. (Myself included, I have no idea how to get started with Blender for drawing models of buildings and structures either)

I realise it’s less attractive to do so, if the models aren’t readily accessible, but it’s good to know that that’s in the pipeline.

Cheers,

Jo

Log in to leave a comment