Jump to content

 
Photo

3D terrain visualization

- - - - -

  • Please log in to reply
13 replies to this topic

#1
Jake See

Jake See

    Contributor

  • Validated Member
  • PipPip
  • 11 posts
  • Singapore

hi everyone,

I completely new to this forum and to maps but i hope i can get some help here. Thanks for letting me in!

Now I am a student on a project to do terrain visualisation using data from GPS. I need to write a program to parse terrain info and display it in 3D. I need some starting point to getting the map input data at this stage. May I ask:

- are there are any such data available to download free or buy? I am expecting some file with many terrain xyz/lat-long coords? USGS seems to have, but i really cannot find. Most are rendered top down view of the geo area.

- is there a standard map file/data format for such data and purposes? How about popular software/data formats people are using in the indutry?

- I searched around and keep getting stuff related to USGS, MapPoint, MapX, MapInfo etc but I do not understand their relationship. Can someone explain or point to somewhere I can better understand what they do? Is there a video introduction or something?

- Furthermore, can someone explain what exactly is a "mapping" or "mapping software"? I figured it is a drawing program to draw maps that are not necessary real-world, plus various annotation features, however, none of the features are real time. Is that what is it?

Sorry for long post... hope someone can guide me abit. Thanks!

#2
Hans van der Maarel

Hans van der Maarel

    CartoTalk Editor-in-Chief

  • Admin
  • PipPipPipPipPipPipPip
  • 3,881 posts
  • Gender:Male
  • Location:The Netherlands
  • Interests:Cartography, GIS, history, popular science, music.
  • Netherlands

Hi Jake, and welcome to Cartotalk!

- are there are any such data available to download free or buy? I am expecting some file with many terrain xyz/lat-long coords? USGS seems to have, but i really cannot find. Most are rendered top down view of the geo area.


Yes, there is 3d terrain data available, both free and commercial. In general terms, the more detailed data you want, the more expensive it gets. It can also vary per region. If you can tell us more about the scope and level of detail of your project I'm sure somebody can suggest some suitable datasets.

- is there a standard map file/data format for such data and purposes? How about popular software/data formats people are using in the indutry?


There's actually several data formats that are being used. The geo-world isn't too keen on standards I suppose. Most of the popular software will support most of the popular formats and if not, there's always ways to convert it.

- I searched around and keep getting stuff related to USGS, MapPoint, MapX, MapInfo etc but I do not understand their relationship. Can someone explain or point to somewhere I can better understand what they do? Is there a video introduction or something?


Well, the USGS is the United States Geological Service, the national mapping agency of the USA. They collect and publish data. MapPoint is a sort of a business mapping software by Microsoft, can't really imagine it being useful for your purpose. I haven't heard of MapX but it appears to be part of the MapInfo family, and MapInfo is a full-featured GIS software (note that I did not call it mapping software).


- Furthermore, can someone explain what exactly is a "mapping" or "mapping software"? I figured it is a drawing program to draw maps that are not necessary real-world, plus various annotation features, however, none of the features are real time. Is that what is it?


Pretty much, yes.

Now, if you want to display terrain data in 3d, and I assume you're wanting a birds-eye view somewhat like this there's a few software products, ranging from free to rather expensive (and fairly easy to very complex) that you can check out:

And there's probably more.
Hans van der Maarel - Cartotalk Editor
Red Geographics
Email: hans@redgeographics.com / Twitter: @redgeographics

#3
dsl

dsl

    Master Contributor

  • Validated Member
  • PipPipPipPip
  • 225 posts
  • Gender:Male
  • Location:Denver
  • United States

In addition to what Hans said...

Terrain data comes in a raster format, which is a grid of cells similar to a matrix array of data. The centre of each cell is the elevation value. The smaller the cell sizes (e.g. 500 x 500m) the better the resolution...if you didn't already know that bit.

The easiest file format of terrain data that you could parse would be an ARC ASCII grid (either *.asc and or *.txt). It is open, and you can view it in a text editor assuming it isn't too large. The first 7 or so lines is the header information that provides you with the cell size, and the upper left (don't recall if it is the upper or lower) coordinate of the grid. From that you can calculate the x and y values for each cell. The cells with their value are below those lines, arranged by their row and column.

A GPS file is going to be different. Unlike the raster terrain file, the GPS file is just a series of coordinates. They could be in any order depending on how they were sampled. If you want to go from these points to a raster, you would need to interpolate the values using something like Inverse Distance Weighting or the more sophisticated Kriging.

Presuming you will use something like DirectX or OpenGL...The 3D coordinate systems are different, meaning z points towards the camera in opengl and z points up in terrain data. Anyway, this link explains it better than I could: http://www.codeguru....e.php/c9187__3/ .

If you end up using Latitude and Longitude you will need to convert these from spherical to cartesian coordinates.

This is what I've read for a project, and it wasn't to visualise terrain data, so you will need to verify some of these things, but I hope that gives you a good start.

Cheers,
David

#4
Jake See

Jake See

    Contributor

  • Validated Member
  • PipPip
  • 11 posts
  • Singapore

I realised all new posts are manually approved before it shows up, so, thanks moderator!

Now that a ton of very useful information from Hans and dsl, thanks =)

If you can tell us more about the scope and level of detail of your project I'm sure somebody can suggest some suitable datasets.


Ultimately, we want to display real-world terrain data gathered from our own GPS recievers. Part of my job is to suggest a data file format, which, thanks to your help, I now know it is called GIS file format. I was also told (from other sources) to take reference from MapX. However, I am confused because MapX / MapInfo seems to only display maps in 2D top down. There seems to be another type of 2D map with data for relief shading, that again is probably not what I want. From your replies, I believe I need elevation data. I am looking to get hold such a dataset/file for my parsing and 3D programming. So, what formats does MapInfo uses?

The smaller the cell sizes (e.g. 500 x 500m) the better the resolution


500x500m is huge! What usually is the smallest to largest cell sizes for typical GIS files? Because in time to come, my program will be required to include 3D models such as prominent structures like tracks, buildings etc..

As for the rest of the information I think I need more time to self study before I come back with slightly more intelligent questions, and I could start with the ARC ASCII first.. but hmm... where do I get those files... I'll google more after this. Thanks again.

#5
Nick H

Nick H

    Legendary Contributor

  • Validated Member
  • PipPipPipPipPip
  • 307 posts
  • Gender:Male
  • Location:Caversham, Reading, England.
  • United Kingdom

Now I am a student on a project to do terrain visualisation using data from GPS. I need to write a program to parse terrain info and display it in 3D. I need some starting point to getting the map input data at this stage.

Forgive me (I'm not very bright) but I'm not sure what you want to do. From what you write it appears that you have GPS data in the form of map coordinates with spot-heights (xyz data, in other words) and you want to use this to make a 3D model of the surface in question. Have I got this right?

Regards, N.
Caversham, Reading, England.

#6
Jake See

Jake See

    Contributor

  • Validated Member
  • PipPip
  • 11 posts
  • Singapore

Forgive me (I'm not very bright) but I'm not sure what you want to do. From what you write it appears that you have GPS data in the form of map coordinates with spot-heights (xyz data, in other words) and you want to use this to make a 3D model of the surface in question. Have I got this right?
Regards, N.


Hi Nick =)

This project is being worked on by several groups. One side is on the GPS device itself. The other (my side) is data processing into 3D terrain visualisation. In order to accomplish my job, I have to suggest what data I need the GPS to collect; on the other hand, the device side will tell us whether it is possible. So I do not have the data yet, I do not even know what existing data the current GPS / GIS technology can provide.

Hence as a starting point, I am looking into existing GIS formats and try to work from there. As of now, I am looking to download a reliable ARC ASCII viewer so that I can better understand what data can be stored in this format.

#7
Hans van der Maarel

Hans van der Maarel

    CartoTalk Editor-in-Chief

  • Admin
  • PipPipPipPipPipPipPip
  • 3,881 posts
  • Gender:Male
  • Location:The Netherlands
  • Interests:Cartography, GIS, history, popular science, music.
  • Netherlands

Just wondering, how big is the area that you're going to map?
Hans van der Maarel - Cartotalk Editor
Red Geographics
Email: hans@redgeographics.com / Twitter: @redgeographics

#8
Jake See

Jake See

    Contributor

  • Validated Member
  • PipPip
  • 11 posts
  • Singapore

Just wondering, how big is the area that you're going to map?


That's a tough one... because I am not in charge of this... I'm guessing at this stage defnitely smaller than size of Singapore.

#9
Nick H

Nick H

    Legendary Contributor

  • Validated Member
  • PipPipPipPipPip
  • 307 posts
  • Gender:Male
  • Location:Caversham, Reading, England.
  • United Kingdom

I do not even know what existing data the current GPS /GIS technology can provide.

Really expensive surveying kit like GPS Total Stations can provide data good to a centimetre or better. At the other end of the scale, if you're talking about recreational GPS receivers you might be lucky and get positional (xy) data good to three or four metres, but the elevation data (z) will almost certainly not be anything like as good as this.

Regards, N.
Caversham, Reading, England.

#10
Hans van der Maarel

Hans van der Maarel

    CartoTalk Editor-in-Chief

  • Admin
  • PipPipPipPipPipPipPip
  • 3,881 posts
  • Gender:Male
  • Location:The Netherlands
  • Interests:Cartography, GIS, history, popular science, music.
  • Netherlands

Just wondering, how big is the area that you're going to map?


That's a tough one... because I am not in charge of this... I'm guessing at this stage defnitely smaller than size of Singapore.


That's still a very large area. The reason I'm asking is that if you intend to use GPS to collect elevation data for a large area that's sufficiently dense enough (and that's not even considering the vertical error, as Nick has pointed out) to do a good 3D visualisation you'll have to spend a lot of time.

With that in mind you may want to consider looking for other sources of data. Since you mention you're a student I'm going to assume you're in college or university or something. Is there a geography department you could talk to? Would it be possible to approach whatever government agency is responsible for the topographic mapping of Singapore?
Hans van der Maarel - Cartotalk Editor
Red Geographics
Email: hans@redgeographics.com / Twitter: @redgeographics

#11
dsl

dsl

    Master Contributor

  • Validated Member
  • PipPipPipPip
  • 225 posts
  • Gender:Male
  • Location:Denver
  • United States

Arc ASCII isn't a data format specifically for terrain. It is a data format for storing Raster GIS data. Which is a different GIS data model from vector GIS. It is used to store anything from elevation to slope to qualitative data. I just suggested it as a format that you could easily parse. I couldn't imagine storing GPS data directly in a raster format. All the GPS is going to supply you with is a set of discrete points (vectors if you like) with x, y, and z (elevation) coordinates. I suppose it would also provide bearings and transects and things like that. Since you are talking about terrain data you would need to interpolate your GPS coordinates to a terrain surface using something like IDW, then you could store your terrain data in Arc ASCII or something of the kind. To store the GPS data you could use the native format of the GPS units or use something open like Well-Known Text or Well-Known Binary.

If you would like to see what an Arc ASCII format looks like you can download some SRTM elevation data in that format from here.

I think Hans has a good suggestion of talking with your uni's Geography department. They should be able to provide you with more support.

Cheers,
David

#12
Jake See

Jake See

    Contributor

  • Validated Member
  • PipPip
  • 11 posts
  • Singapore

I am replying just to say I have been reading your replies. Appreciate all the effort for writing me detailed posts. Right now I still haven't been able to find a program + file combination to display in 3D, vector or raster. I am still learning so please bear with me. The closest seems like those 3D terrain designer / generator, but they seem to only use proprietary formats.

Thanks.

#13
axel

axel

    Key Contributor

  • Validated Member
  • PipPipPip
  • 71 posts
  • Sweden

Im also total newbie in this subject. This is my solution:

1. Get Global mapper for Windows. There is a trial version. It reads all GIS and map files and can make nice 3D visualisations.
2. Download SRTM data from the link given by dsl in the post above.
3. Add shp files for vector overlays. Or make your own with ArcGis, Mapublisher etc
4. Add a geotiff file for bitmap data. Download from several sorces. Google it.
5. Add GPX files for your GPS tracks. Get a GPS that saves its tracks in GPX-format.

#14
dsl

dsl

    Master Contributor

  • Validated Member
  • PipPipPipPip
  • 225 posts
  • Gender:Male
  • Location:Denver
  • United States

You might also look at MicroDEM and 3DEM. I remember 3DEm used to let you export as VRML (a web based 3D format that never really took off).

Cheers,
David




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

-->