Calibrate lat/long with elevation data that's in metres using Meerkat

unhandled

#1

Hi,

I’m using Meerkat for Grasshopper to import a shapefile of contours based on this video tutorial by Christopher McAdams.

The problem I’m having is that the contour point data is in latitude and longitude, whereas the elevation / altitude data is in metres. This creates a massive scale distortion with the extent of the contours being only 0.31m wide along the x axis, yet spaced at 10m intervals vertically along the z axis.

Does anyone know if there is a way to calibrate lat/long with elevation data in metres?

Thanks in advance for any advice,
Matthew

170414_Meerkat_Contours.3dm (26.2 KB)
170414_Meerkat_Contours.gh (14.1 KB)


(Luis Fraguada) #2

You need to convert from Geodetic System Coordinates (lat,lon) to Cartesian Coordinates (x,y,z): http://stackoverflow.com/questions/1185408/converting-from-longitude-latitude-to-cartesian-coordinates

gHowl has some components to do that, but it is something I put together a while back and might not be the most accurate since it just remaps given two reference points. The above StackOverflow link has several decent answers and links to .Net libraries which might do the job more accurately.


#3

Hi @fraguada,
Thanks for your quick reply.

The gHowl uses WSG84, whereas I’m in Australia so the projection is GDA94.

The thing I don’t get is that all the tutorials I’ve found on the net simply import the shapefile using Grasshopper and it projects to the correct scale within Rhino allowing to move contours up or extrude buildings to height. Mike Foster from MIT, Dep. of Urban Studies and Planning has a tutorial that is another example of the kind of thing I’m trying to do.

I’m wondering if I’m exporting the contours incorrectly from ArcMap…?

By the way, here’s the contents of the projection [.prj] file:
GEOGCS[“GCS_GDA_1994”,
DATUM[“D_GDA_1994”,
SPHEROID[“GRS_1980”,6378137.0,298.257222101]],
PRIMEM[“Greenwich”,0.0],
UNIT[“Degree”,0.0174532925199433]]


#4

Hi @Matthew_Kneale

Are you trying to generate a terrain surface of the Alpine National Park?


#5

Hi @djordje, yes that’s the plan. But more broadly I’m just really keen to learn the workflow of bringing GIS data into Rhino.


#6

Hi @Matthew_Kneale. Thank you for the reply.
You can try the Gismo plugin. It’s free.
It will automatically generate the terrain for the given address or latitude/longitude and radius. Also 2d shapes as building footprints, roads, rivers, and 3d buildings as well:

Here are installation instructions.

Once you install it, open the example file attached below.
Falls_Creek_Victoria_terrain_3dbuildings_roads.gh (180.4 KB)


#7

Hi @djordje,

Wow, what a fantastic tool! I wish this plugin existed during my undergrad study. Once I’ve had time to play and test things out, I’ll provide feedback or questions via your Grasshopper Gismo group.

Thanks again :smiley:
Matthew


#8

Hi @Matthew_Kneale,

Glad you might find it useful.
Hope to get some feedback from you, soon!

Regards,
Djordje


#9

If anyone is interested, I recently solved the problem I was having with Shapefiles importing into Rhino at the wrong scale.

In ArcMap I was working in the Australian geographic coordinate system of GDA94, meaning that each point was importing as a latitude / longitude decimal degree. In other words, a rectangle a few km in size:[-36.998714, 147.085991 by -36.845834, 147.264519] was importing into Rhino at only 0.15m tall by 0.17m wide

To solve this I re-projected the Shapefiles as Universal Transverse Mercator, using the GRS80 ellipsoid
Map Grid of Australia 1994 [MGA94]
. This is a Cartesian Coordinates system [x,y,z in metres] as suggested by @fraguada

For sites in Western Victoria the projection is MGA Zone 54 and for Eastern Victoria the projection is MGA Zone 55. See image below:

Image source