Queries on 3D Globe

A forum dedicated to WinForms version of LightningChart Ultimate.

Moderator: Queue Moderators

Post Reply
hallo888
Posts: 43
Joined: Wed Mar 26, 2014 10:56 am

Queries on 3D Globe

Post by hallo888 » Mon Apr 07, 2014 9:14 am

Hi,

I have the following queries on the 3D globe:

Loading of High Resolution Image
In the example of the GlobeSurface3D, the application loads a world map of 3600*1800 resolution as the bitmap fill for the SurfaceMeshSeries3D object. When i tried replacing the bitmap fill with a higher resolution image of 10800 * 5400, nothing appears in the window (the whole globe disappears). However, when I tried setting the high resolution map as the MapBackground in ViewXY and it is still able to display. May i know is there a limit in resolution to what can be displayed in 3D globe? The link to the image is http://rasher.dk/rockbox/people/world_giant.jpg.

Displaying of elevation/terrain in 3D globe
I see that in the example of "3D globe with Flight Route", the terrains elevation are drawn based on the colour of the pixel in a black/white image. Different variations of white/black will have different height. Apart from that, are we able to derived the terrain elevation based on digital terrain elevation information (also known as DTED) files? Or are there any other methods or file formats that lightning chart takes in for displaying of terrain information?

Please advise.

Thanks!

User avatar
ArctionPasi
Posts: 1367
Joined: Tue Mar 26, 2013 10:57 pm
Location: Finland
Contact:

Re: Queries on 3D Globe

Post by ArctionPasi » Mon Apr 07, 2014 9:48 am

The bitmap size is limited to the texture size the video card supports. Use chart.GetRenderDeviceInfo().TextureMaxWidth and chart.GetRenderDeviceInfo().TextureMaxHeight to detect that.

Typical size is 8k x 8k. Low-level integrated chips can support maybe 4k x 4k. I'm running with $100 AMD Radeon HD 6750 and it seems to support 16k x 16k.

Digital elevation reading is not built-in, otherwise than grayscale bitmap info loading. Using some programming, you can parse any file, and set that info the Y fields of Data property of SurfaceGridSeries.
LightningChart Support Team, PT

hallo888
Posts: 43
Joined: Wed Mar 26, 2014 10:56 am

Re: Queries on 3D Globe

Post by hallo888 » Tue Apr 08, 2014 9:02 am

Hi Pasi,

Thanks for your reply. I have execute GetRenderDeviceInfo() and the values are 16384 for both width and height. The codes i am using is similar to the one in ExampleGlobeSurface3D.cs. The major change is that i set the m_photo path to the high resolution worldmap instead of WorldPhoto3600x1800.jpg. I am wondering what other problems could there be?

Please advise

Thank You and Regards.
Piao Han

User avatar
ArctionPasi
Posts: 1367
Joined: Tue Mar 26, 2013 10:57 pm
Location: Finland
Contact:

Re: Queries on 3D Globe

Post by ArctionPasi » Tue Apr 08, 2014 10:06 am

Hi, I've set world_giant.jpg, and it works correctly.

//m_photo = Bitmap.FromFile(Application.StartupPath + "\\Resources\\WorldPhoto3600x1800.jpg");
m_photo = Bitmap.FromFile("e:\\temp\\world_giant.jpg");
Globe surface with hi-res bitmap fill
Globe surface with hi-res bitmap fill
globe_with_10800x5400_fill.jpg (325.7 KiB) Viewed 22176 times
Maybe your system is just running out of memory. It seems to take almost 500 MB memory from GPU. With what kind of video card are you running with?
LightningChart Support Team, PT

hallo888
Posts: 43
Joined: Wed Mar 26, 2014 10:56 am

Re: Queries on 3D Globe

Post by hallo888 » Wed Apr 09, 2014 4:45 am

Hi,

Thanks for trying. My graphics card is Nvidia Quadro 2000.

User avatar
ArctionPasi
Posts: 1367
Joined: Tue Mar 26, 2013 10:57 pm
Location: Finland
Contact:

Re: Queries on 3D Globe

Post by ArctionPasi » Wed Apr 09, 2014 5:58 am

Download GPU-Z utility from http://www.techpowerup.com/gpuz/ and run it. In the first page you can see the total video memory (dedicated) amount. What does it show? And when you run LightningChart globe, observe GPU-Z's Sensors page, and let me know what does the little memory usage chart show.

Ensure you are running the application in 64-bit mode (Any CPU build, and 64-bit platform).
LightningChart Support Team, PT

hallo888
Posts: 43
Joined: Wed Mar 26, 2014 10:56 am

Re: Queries on 3D Globe

Post by hallo888 » Wed Apr 16, 2014 2:09 am

Hi Pasi,

Its seems like it i zoom alot into a particular location (camera viewing distance very small), i will go through the surface of the globe and be able to see the other side of the globe? is this the norm? To prevent that, is it that i need to constrain the minimum viewing distance such that i don't allow user to zoom in too closely? Lets say if i have a ship travelling, what are the camera settings i need to set such that i can get the captain view? Is it possible to do that or to set the camera to focus on a particular moving target?

Can i also check if there are plans for lightning charts to have connection WMS server? Our project, which is an offline system are now considering lightning chart but we need more higher resolution and better maps with accurate altitiude.

Please advise.

Thanks again.

User avatar
ArctionPasi
Posts: 1367
Joined: Tue Mar 26, 2013 10:57 pm
Location: Finland
Contact:

Re: Queries on 3D Globe

Post by ArctionPasi » Wed Apr 16, 2014 6:08 am

View3D.Camera.MinimumViewDistance sets the allowed minimum distance from View3D.Camera.Target. For example, if your View3D.Dimensions are all 200, and Camera. Target is at the origin (0,0,0), and your globe is defined so that it fills the 3D space box, setting MinimumViewDistance to 200/2 = 100 will prevent from zooming through the surface.

So the camera looks at Target, and the camera location is calculated related to that. It locates at Camera.ViewDistance towards angle defined with Camera.RotationX, RotationY and RotationZ.

Adding a WMS server support would probably be a good long-term plan, but right now we can't commit ourselves in programming of that.
LightningChart Support Team, PT

Post Reply