algorithmic modeling for Rhino



This is the first release of an add-on which enables the import of GIS data from various sources into the Rhino/Grasshopper environment, located, scaled and cropped based on an Earth Anchor Point and a clipping polygon.  Sources of GIS data include Shapefiles, USGS IMG/HGT Elevation files and ArcGIS REST Services over the web.

The add-on includes eight components in two categories:


  • ESRI REST Service Geocode. Get a Decimal Degree coordinate from an address or Point-of-Interest with the Geocode service provided by ESRI.  
  • Get REST Service Layers. Discover data layers  from various data sources on the web. If the layers are a vector type, they return data similar to a shapefile, with geometry and associated data fields.  To be used with the Get REST Vector or Get REST Raster component depending on the data type.
  • Get REST Raster. Grabs JPGs of imagery from the specified web source.  Once downloaded to a folder the image can be located and scaled to match the boundary in real world units (meters) with the use of the image frame.
  • Get REST Vector.  Queries the web source for geometry and associated data fields.  For instance demographic information from the US Census can be referenced.

GIS Tools

  • Decimal Degrees to XY.  Convert Decimal Degrees to XY coorindates based on the EarthAnchorPoint.
  • Import SHP.  Imports Shapefiles using OGR Libraries. Output is in the form of points (for now) which can then be connected to form polylines.  For Shapefiles with Multipolygons (ie building footprints with courtyards), the component reads mulitple branches of points per Feature.  To get the footprint, you will need to draw a polyline for each branch, shift the branches and use the Boundary Surface component.
  • Import Topo.  Imports IMG and (STRM) HGT files using GDAL Libraries.  Output is in the form of a mesh.
  • Set EarthAnchorPoint.  Runs a macro to set the Earth Anchor Point in Rhino.  This is important to minimize distortion translating from the curved surface of the Earth to Euclidean coordinates.

Special thanks go to the vibrant GH community, the masterful guidance of Andrew Heumann and endless patience of George Waters.

Members: 118
Latest Activity: Aug 27, 2023

Discussion Forum

Export object from rhino to arcgis 1 Reply

if I have a drawing project anywhere in rhino, how can i export the .shp file of that project (with the attribute ) and put it in Qgis or Arcgis which has the correct gis coordinates. I have included…Continue

Started by theanh tran. Last reply by Brian Washburn Aug 7, 2023.

Export object from rhino to arcgis

if I have a drawing project anywhere in rhino, how can i export the .shp file of that project (with the attribute ) and put it in Qgis or Arcgis which has the correct gis coordinates. I have included…Continue

Started by theanh tran Aug 7, 2023.

CHANGE SCR FROM IMPORTED DATAS and others questions 3 Replies

Hello everyone,Thank you for this superb plugin! I have a few questions regarding its configuration, here they are in order:I managed to import GIS vector data from a specific server. However, the…Continue

Started by charly. Last reply by Brian Washburn Apr 23, 2023.

Export shp to projected SRS 12 Replies

Hi Brian,I glad to see the permanent progress of the plugin! I am back with my typical question on SRS, but this time in the context of the export to shp.I have a drawing that is in a right location…Continue

Started by Evgeny Shirinyan. Last reply by Evgeny Shirinyan Dec 15, 2022.

Comment Wall


You need to be a member of Heron to add comments!

Comment by Luis Gordillo on May 23, 2017 at 3:15pm

Hello, I am having trouble with a few components, I've used Heron in the past and it works wonders, however, with the RESTGeocode, it's returning the following error: 1. Solution exception:Input parameter index [-1] too low for Component ESRI REST Service Geocode

No matter the location I type I get no return from location or LAT & LONG.

Any idea what's going on?

Comment by Evgeny Shirinyan on February 16, 2017 at 10:46am

Hi Brian,

The first image is a comparison of the polygons from Heron (in red) and the meshes from InfraWorks (in yellow - selected)

The second image compares the polygons from Heron (in white) and the exported polygons from QGIS (selected hatches in yellow)

The CRS I have used is EPSG:32637 (the area of interest is located in Moscow). Here is the shape file with reprojected data

It would be great not to have this slight rotation. I see it originates from specific use of 3857 within the plugin. Thank you!

Comment by Brian Washburn on February 16, 2017 at 8:14am


What is the coordinate system of the original data before being reprojected?  Can you post a link to source?  What are the red lines the meshes are not matching to?  Apologies if I don't quite understand the issue.

Comment by Evgeny Shirinyan on February 14, 2017 at 2:08pm

Hi Brian!

I am back with my tiny wish list!

Here are two screenshots comparing InfraWorks export of reprojected data and QGIS one with the Heron result. A slight turn and a slight scale difference (~0.004) It would be great if Heron could switch off its 3857 reprojection and I will be able to send analysis results from Rhino to GIS!

I have checked ArcGIS Pro, InfraWorks and FME - all these tools produce meshes that are not suitable for analysis within Rhino. 

Comment by owe on February 8, 2017 at 1:26am

Anybody knows how to generate a shape file from Grasshopper?


Comment by Vittorio Paris on December 30, 2016 at 1:57am


Comment by Brian Washburn on December 29, 2016 at 1:42pm

Vittorio, Try replacing the REST Geocode component currently on the canvas with a new one from the Heron tab.

Comment by Vittorio Paris on December 29, 2016 at 3:15am


I am beginner,  I have a problem when i use heron compare this:

Comment by TJ on September 4, 2016 at 5:52pm

Hello, While importing a SHP file, the pointfeatures branch path doesn't match the atributes branch path.  After doing polylines with the points and extruding it using a height attribute from the values output, a buildings height is being applied to other building. What can be done to fix this?  

Comment by Evgeny Shirinyan on January 7, 2016 at 3:10am

Hi Brian!

Thank you for your answer. I will go deeper in details and settings in Heron. 

1) I'd like to use Heron to integrate GIS-data with Rhino and get the geometry for a draft microscale urban analysis, so geometry hasn't to be very precise. However I'd like to have a clear understanding what distortion will be if I use 3857 - because it is very different from CAD-geometry that is exported from QGIS (or other conventional GIS) with 3857 CRS. For example UTM Zone 37N 32637 (suitable for Moscow) and 3857 have ratio almost 2:1 if both are exported to CAD. With Heron the difference with 32637 is very slight

As it seems to me it is due to relocation of Earth Point in Heron. Could you clarify it?

2) I agree on geometry relocation - very large distances can cause bugs in calculations. 

3) "The GDAL libraries Heron uses, should be able to automatically handle reprojecting from any CRSs to EPSG 3857." - I don't need to reproject my data, I was trying to use it already reprojected to appropriate UTM zone. 


Members (118)






  • Add Photos
  • View All


  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service