Grasshopper is an incredibly versatile tool that in recent years has expanded into fields far beyond the origins in three-dimensional parametric design. One of these fields is that of GIS analysis, which has traditionally been approached through software such as QGIS. The advantages of Grasshopper and Rhinoceros3D over QGIS include the versatility and customisability of Grasshopper definitions as well as the three-dimensional setup of the programme. There are however also drawbacks to the current setup of Grasshopper when it comes to urban analysis and urban design. One of these is that the lack context that is readily available in the rhino modelling space. The results of the analysis are often only defined by the geometries that Grasshopper outputs, and while powerful, these graphics may not speak to the imagination in the same way as the cartographically sophisticated materials that users of for example QGIS are able to produce. There is in other words a need for a new Grasshopper component that generates context directly into the rhino 3d modelling space.
![](https://blog.iaac.net/wp-content/uploads/2024/05/Urban-Context-Generator.png)
In order to download the required datasets into the rhino 3d modelling space, we make use of the hops component in Grasshopper. Hops allows us to host python scripts in Grasshopper and thus becomes the central linking point from where we can make API requests to various online data sources.
We want to make the components accessible to a wide array of users and therefore chose to work with providers of context that are free of charge. Firstly, Mapbox is a cartography visualisation tool with a user friendly user interface. The service is available for free after registration and allows downloads of tiles via a python API. Secondly, Bing Maps offers open building footprints around the world. The dataset contains 1.3B buildings from Bing Maps imagery between 2014 and 2023 including Maxar, Airbus, and IGN France imagery.
Our library of components allows users to download a number of different types of contexts. The fundamental component downloads a base map from Mapbox with customizable style and resolution. In addition to this component, we also created two components that download elevation data and the outlines of buildings, directly into Grasshopper.
Our components download the information in the form of a mesh. While this means that the running time of the component can sometimes be quite high, it allows for analysis and post-processing once the mesh has been downloaded. For instance, the mesh can be analysed for local slope and be recoloured accordingly.
After completing our component, we decided to compare our product to the available competitors on the market.
![](https://blog.iaac.net/wp-content/uploads/2024/05/Urban-Context-Generator-1-1.png)