Kendzi3D - 3D Viewer as plugin for JOSM.

For now only dormers type ‘a’ and ‘-’ are supported. I plan to support some more types in near future. I think that we can add roof window (skylight) as new type of dormer?

http://wiki.openstreetmap.org/wiki/DE:3D_building#Gaube

By plaster material I mean: http://en.wikipedia.org/wiki/Plaster
Yes I know that texture shouldn’t contain windows. But there isn’t any schema for tagging windows for now.

roof window (skylight) - good idea. Please do it.

Some changes:

  • tree models for type: unknown|broad_leaved|conifer

  • support for dormer type B

  • support for roof type word alias as 3dr:type=flat|gabled|gambrel|half hipped|hipped|pitched|pyramidal|skillion

  • support for building:part=yes

  • initial support for colors. They can’t be mix with tags: building:facade:material, building:roof:material. Hex values or color names from list: http://download.oracle.com/javase/6/docs/api/java/awt/Color.html

    • building:facade:color
    • building:roof:color

  • example of complex building polygon:

  • support for tags height, min_height for fence

  • support for tag building:color

  • support for tag roof:color

  • support for world alias in tag building:roof:shape=flat|gabled|gambrel|half hipped|hipped|pitched|pyramidal|skillion

  • support for world alias in tag roof:shape=flat|gabled|gambrel|half hipped|hipped|pitched|pyramidal|skillion

  • support for height, min_height, est_height in [m], [ft], [feet] for building

  • support for tag building:roof:orientation=along|across

  • support for tag direction on buildings (the name of tag change)

Several new things:

  • New texture from viw for facade plaster.

  • Forest and tree line:

  • Example of cloning relation (type=clone:height) for building parts, window and fence:

Example file:
http://openstreetmap.pl/kendzi/Kendzi3d/examples/example-clone-height.osm

Another example:
http://forum.openstreetmap.org/viewtopic.php?pid=206113#p206113

  • Custom models:
    From now you can use your own models to visualize nodes. Eg mail box or wind turbine:
    Example view:

    Configuration window:

Currently configuration window have not been completed yet and input values are stored only till JOSM is running. More information about configuration in xml file:
http://wiki.openstreetmap.org/wiki/JOSM/Plugins/Kendzi3D/Custom_models

Warszawa
http://www.openstreetmap.pl/kendzi/Kendzi3d/kendzi3dLayer/indexWarszawa.html

It is only example. It is not live. Unfortunately I don’t have time and server to continue it. Titles can be generated by command line program which as input can use xml data and title number.
Currently example titles are generated only for Nowe Kramsko and Warsaw at zooms 17, 18. As background it is used osmapa.pl.

Source codes are available here:
https://github.com/kendzi/kendzi3dTitleRenderer

Added:

  • skybox
  • roof type 5.6

action for load texture library
Now you can load texture configuration from xml file. Use menu “3d>Load texture library from file”. Format well be shortly described on page: http://wiki.openstreetmap.org/wiki/JOSM/Plugins/Kendzi3D/textures_configuration

Texture configuration can be used to setup single color buildings:

Example library configuration:
http://openstreetmap.pl/kendzi/Kendzi3d/examples/colorTextureLibrary.xml
You need to load example and answer Yes on question “Overwrite values“.

Cool! Thank You!
Marek

That doesn’t quite work for me. Loading the xml file causes an error:

javax.xml.bind.JAXBException: "kendzi.josm.kendzi3d.dto.xsd" doesnt contain ObjectFactory.class or jaxb.index

Happens as well when the plugin tries to load its built-in texture library, hence I only get placeholder textures. I tried the latest versions of Java 7 and 6 under both Windows 7 and Linux with no luck.

Send Kendzi eMail. I´m not sure how often he visit fhis topic.

Currently I don’t have access to my computer, I will investigate it at monday.

Thanks! :slight_smile:

Fixed in v84

Hm, I still have this error in version 88, when I try to load the textures from the wiki:

Any idea?

Best regards
André

Is there a todo-list or a better place than github issues list? In josm trac there’s so far just one “plugin crashed” ticket for kendzi3d. If there is some better place, I could write each of the things needing attention as a separate ticket somewhere, but I’ll start with some of them here. I know this is still in the early stages and already gives nice results with very few tags only, but communication shall make me tag them frantically…

I’ve been tagging facade colours, building:levels and roof shapes, and I already have identified lots of minor glitches in rendering - and inconsistent documentation on supported tags. Even the presets linked to in the other thread on this forum use roof:orientation=, but the plugin seems to respect building:roof:orientation= only. I would believe some of these “issues” have been discussed in the 3d workshop, but there’s little documentation of the results.

Also; for a long time the osm wiki page listed the shape pitched (and still does), but it’s now “gabled” at least in the plugin; is this an agreement between other osm 3d-stuff developers, that is, from the workshop?

If I model a building with several building:part=yes ways (as horizontal slices), and I also have the building=apartments way, at the moment the JOSM plugin does not recognize this and draws both the building=* way and the building:parts, with them partially covering each other. I also think that the building=* way should have the total number of floors in the building:levels=* tag, to classify the building as having that number of floors. Currently, it just changes how much of the building gets this overlapping walls problem. So will the plugin eventually supress the building=* way automatically, or if it is tagged with building:parts=horizontal?

Where a building has one wall with a different colour, how should it be modelled (as in how it might be eventually supported)? Just an extra way with plain building:facade:color=#fffff? Doesn’t work yet. Another common case I’ve come across is that the longer walls are one colour and the “ends” of a building are of another colour?

Hello Alv,
i would say - lets write tickets together on the separate wiki subpage. I hope we can find helpers for this tool. Let´s comunicate together- if possible in german language.

The specification (roof table) from the wiki page is still incomplete because i have not enough time for finishing the description of all that 3D aspects like texturing+ multitexturing specification, street area in 3d, OSM4D specification for the developers etc.etc.

What I would suggest is the detailed specification of user interface and description of wishful functions for the new version of the Plug In.
What do You think about? Best regards,
Marek

It was problem with classloader. It was solved in v88

“Official” todo and issues list is on github, but you can write proposal wherever you like I will try to answer.

Most of agreements from workshop is write here [1] .

On 3d workshop we agree for using roof:orientation (fixed in v100)

We agree to use name gabled but both should work in plugin. But for me pitched roof have only one surface like this [2]

From the meeting. All parts and outlines from single building should be added to relation type=building . This allow to render building outline or building parts if they exist. So one of both will be rendered outlines or parts. But this hasn’t been implemented yet. Read [3] and [4]

We didn’t discuss on this. So it isn’t implemented. But probably in future it will be done by splitting building outline (or part) to single walls and connecting them together using relation.

[1] - http://wiki.openstreetmap.org/wiki/Simple_3D_Buildings
[2] - http://wiki.openstreetmap.org/wiki/File:Roof1_0_parm.svg
[3] - http://wiki.openstreetmap.org/wiki/Simple_3D_Buildings#Building_parts
[4] - http://wiki.openstreetmap.org/wiki/Simple_3D_Buildings#Building_relation

I have solution for walls with different colors and textures but please, wait a few days and I specify this in the wiki.
And Alv - thank You for all sugestions, comments, and angagement. Please help to make it better: Kendzi do really great job, but it is really lot to do. Support is helpful, ideas are helpful.
Best regards,
Marek

[delete]

I see there’s a possible problem with the current use of building:levels=. High, pitched roofs, and the points below are not in the wiki, except for a mention of building:cullis:height= at a page that describes itself as a proposal.

This came up when I was tagging an office building with two different parts; the higher part is a bit narrower and several floors higher. Say that the lower part has 4 levels and a “gabled” roof on top of that, but the apex is about, or less than, a half level’s height higher than the cullis, and that the same roof continues “around” the higher part. If I then draw a second building:part=yes way for the higher, narrower part, and I add a building:min_level=4 tag to it, it appears as floating above the gabled roof. This happens, because the said gabled roof is drawn as sloping down from the “floor roof” height of the 4th level.

Composite image of a photo, and how the plugin shows it now: http://wiki.openstreetmap.org/wiki/File:Is_the_gabled_roof_a_level.png

On the other hand, I know that for many single family houses the roof does slope down from the second floor ceiling at the apex, to possibly even to the ceiling height of the first floor at the side walls and the cullis. However, all it takes is one tag, if such is agreed upon, to tell whether the roof’s lowest edge, or the apex is at the “height” specified by building:levels=*.

Or, the alternative is to draw yet one more way just for the building:part=roof and to use maybe just (in this case) building:min_level=4; although at the moment that makes it think that the ceiling is still at somewhere just above “level 1”.

You can specify height of building using tags “height” and “min_height” this tags should solve problem with building ending on middle floor. To describe how many floors are inside roof you can use tag “roof:levels” [1] (but this hasn’t been implemented yet.). And for roof height you can use tags: roof:angle in degrees or roof:height (this is calculated from building top to cullis)

[1] - http://wiki.openstreetmap.org/wiki/Simple_3D_Buildings#Roof

New features:

  • debug view - now it is remember settings
  • support for roof type 8.0 (it is implemented little different then description on wiki)
    8.0

8.0.3

8.0.6

8.0
with set up heights

  • tag emergency=fire_hydrant

  • tag roof:shape=onion

  • fix for loading resource on linux

  • new version of JOGL it should work now on mac, can anyone test it?