What file for height data best to create 3D terrain?

Hi
V5
Just what data from UK terrain data sources is best to work with for creating terrain 3D files ?

To show e.g. a field, that sort of area, something like 500yds or 1/4 mile long, not a prairie !

Has anyone experience then of getting this into something like Bryce to add grass, trees buildings etc ?

can Rhino add such ‘nature’ in fact ? I have Bryce but cannot afford another prog unless its v affordable.

Steve

2 Likes

In general terrain data is available in several forms. The one that is most accessible to programs like Rhino is contour line data - most often just polylines - either in 2D or 3D. These are usually available as .dxf files. But you have to create the terrain “surface” yourself from the contour line data.

Other possibilities are various types of digital elevation models, generally supplied as pointcloud data, with either a regular square grid of points or more irregular distributions. The file types vary, but they are all point formats, such as.xyz, .asc, .txt etc. Each point is at the correct elevation, so a “surface” can be constructed by connecting the points with a mesh. Sometimes you can get the mesh directly, if not the only free alternative with Rhino is either MeshPatch for small data sets, or the Grasshopper Delaunay component for larger data sets. If it is a regular grid, such as ASCII Grid, then importers can be written (I have one) to import this data directly into Rhino and create a mesh or surface.

Lastly now coming online in a lot of places is LIDAR data - a very dense point cloud (in color) that is much more accurate than the other types. Lidar data can be pretty massive and there are no real tools native in Rhino to deal with it - yet. There are plug-ins and external programs that can help, but it’s somewhat complex.

If you are looking at a small area as you said, then you will need fairly dense data - and that will depend how the area in question has been surveyed by the local/national authorities. Satellite data which typically has a point every 90m (30m if you’re lucky) will be fairly useless, you would need a data point every 10m or less. Here we have data down to 2m available pretty much everywhere, but we’re a small country who is fairly advanced on the subject (as we have pioneered a lot of cartography methods) .

It is possible to extract data from GoogleEarth, but again, that is usually of poor quality and not dense enough for local needs.

In addition to the sort of national/worldwide methods mentioned above, if it’s a local field in a decent-sized town, perhaps it has been surveyed using classic on-the-ground methods and the data is available at the local surveyor’s office. That may be your best shot, and it will likely be some sort of .dxf data with all sorts of info in it.

Note as well that in many places this data is not free - you may have to pay for it.

I expect that once you actually have a terrain mesh, it should be transferable to Bryce without a problem.

–Mitch

1 Like

Hi,
attached is a sample data set, terrain is Lidar 2m , comes as a dxf.

buildings roads etc same area is a dsm file
EA_Lidar_DTM_2M-DXF.zip (342.5 KB)
EA_Lidar_DSM_2M.zip (382.9 KB)

certainly with buildings and their vertical sides, if it gets that detailed ? …what is the best way of ‘skinning’ these files up ?

three is also vector data available OSvectorMapLocal as dwg, I presume a simple ‘projection’ command would map this onto the terrain.
I see hatch as well as curve data in that.

file below is not same area, samples not intelligently supplied by website.
OS_VectorMap_Local.dwg (334.5 KB)

Then there is aerial photography, as a tiff or an ecw. Havent a clue what an ecw is. I am keen to know best way of mapping this onto the terrain, and best way of viewing this. Is it best to consider Bryce (not yet used) for this or can Rhino do this in as good a way or at least a useable way, as I intend to draw accurate buildings 3D and lay such onto the terrain etc ,being familiar with Rhino for such a task. need to get this done asap and no time to dabble with Bryce.

Steve

For starters here are the DSM and the DTM imported. The DSM has vegetation and “buildings”, the DTM shows the “natural” terrain without buildings or vegetation.

Steve_Terrain.zip (4.2 MB)

The OS Vector map does not seem to be georeferenced in the same way as the the rest, so one is pretty far from the other… Edit - I can’t find any logical correspondence between the two… :confounded:

If you have an orthophoto (I assume the .tiff will be that) and it is referenced correctly, it can be mapped onto the terrain mesh…

–Mitch

Hi,

How did you do that, what command to skin those points for the terrain map ?

DSM looks useless , not surprised, didnt reckon aircraft would manage bdg sides ! load of wigwams, terrain useful .

OS vector map was another area, they dont have all samples same area, nuts but there we go !

Tiff would be straight down though one sees a bit of the side of some bdgs.

What command to skin the terrain surface with the tiff ?

Cheers

Steve

Have you tried ELK for grasshopper? You can download a TIFF image from earthexplorer.usgs.gov and generate a topo with Elk’s components. If you google ELK2 for grasshopper there is a detailed tutorial.

Erik

There are not all that many points - a 250 x 250 square @ 2m per cell, so only 62,500 points in total MeshPatch works OK for that in only a couple of seconds. For larger numbers of points, you can use Grasshopper and its Delaunay component.

If it matches the terrain square exactly, I guess just applying the .tiff as a texture via Properties>Material and using a planar texture mapping method should work…

–Mitch

1 Like

Hi

any link to a video of this process most welcome as I cant find any.

I go properties and dont see a material tab. :frowning:

I wish I had a better way of finding tutorials, Mcneel found zero, and Vimeo search windows found nothing except Vray but I dont have Vray. or Grasshopper etc.

Can this be done without purchasing something to add into rhino ?

created a fictitious square tiff image to experiment with, (google screen dump done ! )
here is the tiff image should one wish to apply.

testTiffMapping.zip (1.7 MB)

Steve

Doesn’t look like the image in the post above really fits the terrain though. The DSM had a lot of buildings, the aerial photo has very few…

– Mitch

1 Like

Hi,
I am struggling to finds any videos on the steps involved, I couldnt see the material tab until I selected the 3dmesh, then with that appearing I select it, now what , i dont see an option for planar mapping ?
I see in a post mention of :-

In the Properties panel, Texture Mapping tab, select "Add Planar
Mapping" and select in the command prompt one of the proposed way to
define the plane.

but i dont see an option ‘add planar mapping’
just what are steps to take after clicking on material icon, do I have to import the tiff, then maybe I see Add planar mapping ?,. tried clicking new and browsing to tiff, no joy though.

googling planar mapping rhino finds nothing.

Steve

Complementation:

1 Like

Hi, thanks, now I have tiff mapped onto the terrain (it was only a fictitious area, grabbed from a screen dump)

It asks for pick of one corner, then the other, then I just hit enter at the uv part, without choosing any alternatives etc, it mapped it to the terrain.

How would I map a vector file, OSMastermapVector showing building and hedgerows, onto the terrain mesh ?
Its not raster so just wondering if its the same course of action as I need to do so and neet be sure I know what to do.

Steve

Is not known to me…logically, we must convert vector to bitmap.
OS_VectorMap_Local.zip (429.2 KB)
I have attached SVG file, drag it in to GIMP and render SVG with Your custom resolution, save as bitmap for material.

In theory, you don’t need to “map” it. It hopefully should be the right size/scale/georeferenced location to import directly in the correct place corresponding to your terrain file. If not, you’re going to need to first figure out if the scale is correct, then you will need to move the imported dwg file geometry to the proper location in your file to correspond with the terrain - probably “by eye”.

In the case of your posted dwg file, Rhino is not able to figure out what units it’s in, so start with a blank file using the most common terrain measurement unit where you are. Measuring the width of some of the roads in the file, they are around 16 units wide - so either they’re very wide at 16m, or pretty narrow at 16 feet… :smirk: (I suspect meters) If you have a reference building/object that you know the size of, it’s easier to figure out. Once you have the import in the right units and scaled correctly, you will need to move it into position.

Many of the elements in the dwg file are hatches, as it’s set up for printing purposes. But there is a lot of vector info, and it’s organized by type - all the building outlines are on the “building outlines” layer, etc… Turn off the “Backdrop” layer, otherwise all you see is one big square.

HTH, --Mitch

Hi,
V5
Top view.


I have my raster image, an applicants site plan, which came in as a landscape shape bigger scale than the terrain 3D object I have then had to scale it down a bit as it was not to same scale, (architect at fault) , then I had to rotate it a good 30degrees clockwise so as to align its hedgerows etc with the map data on the terrain which was skinned with MeshPatch. I have another map for the rest of the site, it will be the same scenario for that.

mockup shown.

I select the skin (created from MeshPatch on the lidar points), go properties>toothpaste icon (material) then select object from dropdown,
browse to the tiff, select and ok it, then with terrain still selected (video above sees deselection then reselection, not sure why), choose curly red chequer icon ( texture mapping) and choose Planar mapping.

It asks for first corner of plane ?
Q1. what is this corner, as my tiff is bigger than the terrain, architects plans have white areas beyond the mappy bit !
Is this corner where in plan view the lower left corner of the now angled tiff projected downwards meets the terrain, if so my corner misses it bigtime !

Q2. It then asks for other corner or length, is this the lower right corner of the tiff, or upper right ?

either way it misses the terrain. lower right has data panel date drawn scale etc.

Q3. Am I supposed to crop the tiff with the shape of the terrain ? How and where ?

The terrain isnt a perfect rectangle, the corners are not 90deg corners but where the lidar data points are.,** i.e ‘blunt corners.’**

Q4. What about the fact that the tiff I browse to is not at an angle and the scaled down size.

Should the tiff I browse to match exactly the scaled down and angled one in rhino ?
or is it ok that it is just the source of that tiff ?
Should I rescale the original and rotate it in photoshop to match that done in Rhino ? I would never get it the exact same amount it was scaled and rotated, certainly the latter. If it is then saved it still takes on a horizontal rectangular form, you cant save angled tiffs any other way. It gains new white areas.

What if the tiff is smaller than the terrain, does one click on the corners in top view making sure the terrain is being clicked on, by locking the tiff layer ?

To test that, I did a test with a tif smaller than the terrain, selecting lower left then upper right in top view, it mapped to the terrain, but some of the image shows under the skin and consequently some of the ‘skin’ shows above the tiff.

Q5. Why didnt it fully take to the surface ?

Steve

Unless you’re using georeferenced terrain models and orthophotos with geodata software to put them together, you’re going to have to place the images by eye. As you noticed, the chances that they are going to be at the same location, scale and rotation are relatively slim. So, you are going to need to move, scale, and rotate the image until it matches.

The Mapping Widget is what helps you do this, along with any helpers like the Gumball. You can turn it on in the same panel as when you applied the planar mapping, and then move it around to suit by dragging etc. If you select it and hit F10, the widget also has control points. You can imagine that the widget outline is your original image, and you are moving it around over the terrain. If you move, rotate or scale the widget, the image it carries will do the same. You will need to experiment.

In general you want the image to be larger than your terrain area, otherwise it will tile (repeat itself) - you don’t want that. You may need to do some adjusting of the image in photoshop beforehand.

–Mitch

Hi,
placing the image over the terrain is done, what I was referring to was as follows,…I have the image exact placed as per terrain features, its just the steps of the planar mapping, it asks for first corner, my corner is well clear of the mesh, it then asks for second corner, is that top right or lower right, and again if its on or off terrain.
terrain has blunt corners anyway.

Just what do I pick for each of these two picks, as shown my image is not over the terrain at its corners.

Am I supposed to crop the image to the shape of the terrain in pshop, even if I do, saving it makes it with vert and horiz edges so they still end up off the terrain.

Steve

Doesn’t matter. Just make a rectangle somewhat bigger than your terrain, or use the command line BoundingBox option. You’re going to resize it later anyway.

No. But the image should be big enough to cover the entire terrain, you can’t map a partial image onto it and leave part of the surface without any image mapped onto it. The image will automatically tile if it’s smaller than the surface, and you don’t want that. If the image does not cover all of the terrain, then you might need to add some white space in areas in Photoshop so it does.

–Mitch