Georeference UK data - position camera in British National Grid???

Started by jknow, June 14, 2010, 08:14:37 PM

Previous topic - Next topic

jknow

Howdi. I'm trying to render views from known places using UK geo data, in this case using British National Grid.

I am adept at getting my data from UK DEMs in ArcGIS into Terragen. But the UK data is in BNG. I always 'lose the place' when working in TG2 which seems to use metres.

I don't understand the 'lat long at apex' option on the Planet object properties, but I'm guessing that's pretty crucial. I also don't really understand how to use the georeference box for manually adjusting geotiffs. It says lat long, but it doesn't say which datum TG2 uses, or does it assume a perfect sphere? If so that doesn't bother me, I'm not doing global data, just UK.

To other UK users: how do you position your camera in TG2 using exact coordinates so you can precisely locate the TG2 camera in the real world, using OS British National Grid coords? This is really important for me as I'm using real world data. Thanks a lot

RArcher

Basically what you need to do is stop using the BNG coordinates and translate everything into geographic Lat/Long as that is the only system that Terragen interprets.  You should be able to get a readout from ArcGIS that will let you know what your corner points of your data export are in Lat/Long.  Then simply enter those numbers in the manual georeference boxes.  Once that is done, in the Lat/long at apex fields enter a lat/long that is somewhere near or within your data export area.  (personally I just take the centre point of my data export and use that number).  I have pretty much the same co-ordinate issues that you do as all the Canadian data is in UTM NAD83 format and I have to convert it all to geographic lat/long.  It really isn't that big a deal once you know that you simply cannot expect Terragen to have the programming to know and convert the hundreds of different projections possible.

If you have any other questions just ask.

jknow

Thanks for your helpful reply. May I ask:

1. What does this lat long apex thing mean? Because whenever I load a heightfield it seems to automatically place the planet's apex at some point where the heightfield is created anyway.

2. If I load a heightfield from file, will TG2 'wrap' the heightfield around the spherical surface of the earth? Ie will it account for earth curvature?

3. If the above is true, will the z values I see with the cursor status bar start to decrease at the edges, the same way they do for a planet? Or does the z value maintain absolute height above datum? I'm a bit confused here because I'm not sure if the z values we see reference planet height above datum, or whether they reference the z position of the planet's surface in 3D space, ie the z values on the other side of the world would be very different to those on one side of the world.

Many thanks

jknow

OK so I did an experiment and created a very very large heightfield and added it to my planet.

Worryingly, TG2 doesn't wrap the heightfield around the earth as you'd expect it to. Instead it sticks out as a tangent into space.

I need to accurately model earth curvature, and using a flat heightfield is no good. How do I get my height data to 'wrap' around the earth properly?


RArcher

The most accurate point of your data is going to be at the 0,0,0 location and then the further away you get from this value the less accurate the coordinate system becomes.  Setting the Lat/Long at apex simply tells Terragen exactly where you want to place the 0,0,0 point on your planet to get maximum accuracy where you need it most (near your heightfield).  It also allows you to easily find your heightfield when you have it properly georeferenced.

If you are always seeing your heightfield when you load it in, then it is not likely georeferenced data.  It is simply placing the not georeferenced heightfield at the 0,0,0 point (either the lower left corner or the centre point of the heightfield based on your choice).

Take a look here for more information regarding the heightfields curvature:  http://en.tgblog.de/?p=40#more-40

jknow

Interesting post, thanks for that link.

So the key for me is to untick the Flatten Surface First option.

Then the terrain is more or less wrapped around the planet.

This means z values fall as distance from the origin increases.

The problem now is that it's hard to set the right camera height because the z units are in 3D space, not relative to height above ground. Which leads me to think I'll have to process my DEM such that the observer position is as close as possible to 0,0. Otherwise it's impossible to set the camera height properly because you can't specify camera height in terms of distance above ground, or can you?

That would be much more useful that having to specify the absolute x y z in 3D space

Oshyan

You cannot specify height as relative to the terrain, but there is an indicator of this distance at the bottom of the 3D preview window during camera movement (vHeight).

If it's possible for you to bake the appropriate curvature into your heightfield, you may have better luck using such a heightfield applied to a plane as Displacement. Georeferencing should be irrelevant in that case, and it doesn't sound like your data has georeferencing info TG2 is able to read anyway.

Having your observer position as close to 0,0,0 as possible is generally advantageous in TG2 in any case, so if you can adjust for that it would be ideal, and make things easier no matter how you approach it.

- Oshyan