DNC example

31 views
Skip to first unread message

Ryan Jones

unread,
May 19, 2016, 7:00:49 PM5/19/16
to Glimpse
Can you give a quick explanation on how to use the DNC Viewer. I am trying your DNCPainterExample. Yo have a RenderCacheConfig object and I am pointing the flatParentDir to a folder containing all the folders from an area I downloaded from NGA (folders are CUL/NAV/ENV etc...) . I am pointing the renderParentDir to a temporary folder. I am using the dncTangentPlane for your New York coordinates and I am using new york area DNC files. When I run the program it generates a bunch of files in a dncRenderCache_.?????? folder where the vertices file is 20 GB. the groups file is about 25MB and the label-chars and lable-lengths files are about 100MB. The chart then comes up but is empty. The Y values go from -1 to 11 and the X values go from -7 to 17. The other scale on the right goes from 0 to 10. I have zoomed way out and never see anything. Any help on how this is supposed to work would be appreciated.

Thanks,

Ryan

Mike Hogye

unread,
May 20, 2016, 5:04:05 PM5/20/16
to metsci-...@googlegroups.com
(First: we're aware that the DNC stuff is not well documented. Thanks for being the one to blaze the trail!)

There's a one-time step that converts the DNC data from its original VPF format to our intermediate format called DNC_FLAT. To do the conversion, see the Vpf2FlatExample class. Once you have a DNC_FLAT directory, you can point RenderCacheConfig.flatParentDir at it, and DncPainterExample should work.

The VPF reader expects a directory tree like this:

vpfParentDir/
    dnc01/
    dnc02/
    ...
    dnc29/
        a2950077/
        a2950080/
        ...
        h2960050/
            cul/
            ecr/
            hyd/
            ...

In DNC parlance, each dir at the "dnc01" level is a "database," each dir at the "a2950077" level is a "library," and each dir at the "cul" level is a "coverage."

You don't need to have all the "database" dirs -- you can have a parent-dir containing just "dnc06," or whatever. Vpf2FlatExample will convert whatever databases you have to DNC_FLAT.

However, if all you have are the "cul," "ecr," etc. dirs, I don't know whether that's enough -- there may be necessary index files or something in the "database" and "library" dirs. If you have a way to get an entire "database" folder, that's a safer bet. Otherwise, we can try to figure out how to take what you do have and put it in a dir structure as close as possible to what the VPF reader expects, and see whether that is sufficient.    

Mike Hogye

unread,
May 21, 2016, 10:25:44 AM5/21/16
to metsci-...@googlegroups.com
I should also mention that the VPF-to-FLAT conversion takes some time. With an SSD, it's something like 35 minutes to convert all 29 databases. Reading the VPF requires the drive to do a ton of random seeking, so conversion is much slower on a spinning-platter drive -- I would expect a factor of 4, but it could be more than that.

Ryan Jones

unread,
May 24, 2016, 5:13:16 PM5/24/16
to Glimpse
Hi Mike.

Thanks for the information. I only had a single database with a single library in it. That didn't seem to work. When I downloaded the entire database it worked fine. 

-Ryan
Reply all
Reply to author
Forward
0 new messages