Caribou is a Grasshopper plugin for parsing downloaded Open Street Map data into Rhino geometry.
Caribou is currently in an beta state. Feedback, issues, and pull-requests are encouraged.
- ✅ Windows and MacOS are both fully supported
- ✅ Very fast parsing of even very large files
- ✅ Data-rich GUI interface provided for understanding and filtering OSM metadata
- ✅ Parsing is performed asynchronously so Grasshopper remains responsive
- ✅ Parse multiple OSM files simultaneously with de-duplication of geometry
- ✅ Allows for querying for arbitrary data outside of the primary OSM features/sub-features taxonomy
- ✅ Outputs are tree-formatted and organised per data-type to allow for downstream filtering, tagging, baking, etc
- 🕘 Documentation and examples
- 🕘 Further speed optimisations
- 🕘 Component to help construct queries for arbitrary Metadata
- 🕘 Parsing of
<relation>
type data - 🕘 Integration with Rhino's
EarthAnchorPoint
- Plugin installation
- For now, releases are available by searching for Caribou in the Rhino package manager only.
- Data gathering
- Go to https://www.openstreetmap.org
- Locate the general area you wish to model and hit
export
, thenmanually select an area
- Click the
OVERPASS API
link to download thexml
file
- Grasshopper setup
- Place Caribou's
Extract Nodes
orExtract Ways
component (or both) - Place a standard Grasshopper
File Path
component, reference yourxml
file(s), and connect the outputs to theOSM File
input parameter - Place Caribou's
Specify Features
component. - Click the button at the bottom of the
Specify Features
component and select the types of features you want to extract. - Connect the
OSM Features
output to theOSM Features
input.
- Place Caribou's
See examples/Simple.ghx
for a definition the contains a completed example of the above steps as well as components to provide a Legend and categorised baking.
Thanks to:
- Timothy Logan, author of Elk, for LatLon conversion math and for an example of feature-picker form.
- Dimitrie Stefanescu and the authors of the GrasshopperAsyncComponent repo.
- Povl Filip Sonne-Frederiksen, author of the Yak package manager action.