I would like to try to show a proposed building in a web-browser such that the user can interact with it in a way similar to google maps streetview.

Is it possible to do this, in any platform?

I can produce the building format in any geospatial format known to humanity, but as far as I can tell, Google Streetview only allows points to be inserted using their API. I don't want to force users to download a plugin to view this (which is why I would prefer not to use the Google Earth plugin).

One thought I had was to try to make a panorama using static images of the building in some other tool that would be scrollable to give the appearance that it was embedded in a map. I presume this would be against the terms of service of Google, but I'm mainly curious how this can be done.

I'm also open to using any paid service for this functionality, or considering any new technology such as Kartograph, WebGL or perhaps a 3D javascript library such as http://threejs.org/


7 Answers 7


Have you looked at OpenWebGlobe (which uses WebGL in background) Here is the demo with some buildings loaded:


And accoring to forums you can convert Collada/KMZ models to be loaded into this:



A lot depends on the sort of interactivity you want.

If you can convert your model to a georeferenced KML or KMZ file (perhaps using Sketchup or Blender) then you can open it in the same way as any other KML and see your 3D model in Google Earth (I've done this with wind turbines and it can be reasonably effective, Google's coarse terrain resolution notwithstanding).

If you want to show a lot of detail in high quality, you may want to consider some 'heavy-duty' applications. For instance you could try Unity, Panda3D or Blender (Blender's web-plugin is called 'Burster') - all of which have 3D viewer plugins for the web

Somebody mentioned VRML. VRML is a little old-hat now and was superseded by X3D, though this also requires the user to install a plugin.

Flash 3D (Stage3D) is another option and most people already have an up to date Flash plugin installed so this would be the minimum m of fuss for your end-users.

If you want something more light-weight then OSM3D may be worth a punt, which uses XNavigator. The latter can be provided as an integrated component so your end-user would not need to install anything (though they do need to wait for the viewer to load).


One example of this approach can be seen here: www.arcgis.com/apps/CEWebViewer/ This is from ArcGIS using CityEngine 3D where you can zoom around a set of buildings.

I've been searching around for more examples and found an interesting one which focuses on city visualizations, called http://vizicities.com/ There is an explanation of how they made their visualization here: http://rawkes.com/articles/vizicities-dev-diary-1

Two other examples of interesting 3D interactive objects can be seen here:

Another promising WebGL approach could be to use Cesium: http://cesium.agi.com/demos.html which can handle KML output.


You are talking about two different things. Street view isn't really a 3D building, its more like a panorama. If you are looking at showing a 3D building in a web browser, you might want to have the Google Earth web plugin installed, and then save your 3D building model as a .KMZ, or even load it to the 3D Warehouse (old Google Warehouse).


There is a plugin for Sketchup called the Sketcup Web Exporter that will export your building as a series of jpegs of each angle as well as a small piece of JS code that brings them all together. It's not a true 3D solution but allows users to rotate around the model at a fixed elevation and doesn't require any plugin. http://www.youtube.com/watch?v=j0Tmlko5YTU I'd be tending towards a Google Earth Plugin solution if you wanted proper 3D and geo-context.


I suggest you take a look into AreaCAD-GIS open source project hosted on GitHub. Repository facilitates a project related to INOVA AreaCAD-GIS concept - a set of software tools for design, maintenance and analysis of urban spatially-related structures. Based on popular CAD, GIS and BIM platforms, project integrates expert knowledge on spatial planning and infrastructure networks design using Unity 3D, Autodesk Revit and AutoCAD applications and related APIs. The goal is to create beforementioned platform bindings using INSPIRE data specifications, while leveraging game-like ease of use when it comes to design, simulation and reporting workflows.


Threejs has very good options of loading 3D objects in web browsers. One such example of a plane flying past Mt. Everest is shown in this link.

enter image description here

This examples uses threejs library for generating 3D using a plane as a Collada object and Mt everest has been made using .bin format created from SRTM DEM and texture from Bluemarbel (250m) image. This examples is an extract from blog.thematicmapping.org.

This just require to have a browser enabled for WebGL (which will use the client's GPU) and no plugins.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.