outline_dlg

Synopsis

The outline_dlg user macro outlines DLG (.dlg) format files thus converting the data into an AVS/Express Mesh and AVS/Express DataObject.

Input Ports

Name Type Description

in DlgData group representing the DLG data to be outlined.

Parameters

Name Type Description UI Control

all_flag int Indicates that all polygons should be converted. Toggle
selected int[] Array indicating which polygons should be converted. List Box
names string[] Names of all polygons. List Box

Output Ports

Name Type Description

out_fld Polyline Mesh The DLG data outlined into a Polyline Mesh.
out_obj DataObject Directly renderable output object.

Description

The outline_dlg user macro takes a DlgData object and outlines the DLG data. It outputs the outline data as an AVS/Express Polyline Mesh and a DataObject. These outputs can then be used for further processing or for direct rendering. The user interface allows the outlining of either all the polygons in the dataset or a selection of one or more polygons.

Internally the outline_dlg macro generates one Polyline pair for each polygon specified in the polys group of the DlgData object. No extra nodes are created and hence each generated Polyline is left open. Any polygon data present in the the polys group is ignored.

The United States Geological Survey (USGS) Digital Line Graph (DLG) format stores line map information in a digital form. DLG files include information on planimetric base categories, such as transportation, hydrography, and boundaries. More information on Digital Line Graph data can be found on the DLG Geospatial Data clearing-house page. You can also look at the Digital Line Graph standard.

Inputs

in

A DlgData group that contains the DLG data to be outlined.

Parameters

all_flag

Integer parameter that specifies whether all polygons should be outlined and converted into field data. If this parameter is true then all polygons will always be outlined. The value of this parameter overrides any selection of polygons.

selected

Integer array that specifies which polygons should be outlined and converted into field data. The array is of variable length and specifies the indices of the polygons that should be outlined. The polygon indices are zero-based.

names

String array that contains the names of the polygons that can be selected from. This parameter is already connected to the DlgData input and should not need to be altered.

Outputs

out_fld

AVS/Express mesh output containing the outlined DLG data. The output mesh contains a single Polyline cell-set that contains the generated outline data. Which polygons are outlined is determined by the all_flag and selected parameters. This output is suitable for further processing by other visualization components.

out_obj

Directly renderable output object containing the outlined DLG data.

Utility Macros

The functional macro OutlineDlgFunc uses the low-level module OutlineDlgCore. The user interface OutlineDlgUI macro uses the low-level module SelectAllCore. The user macro outline_dlg contains these functional and user interface macros. All of these macros use the OutlineDlgParams parameter block for communication.

Example

The project includes the DlgTookitEg example application that demonstrates how the three user macros can be used. The read_dlg macro is used to read a sample DLG file. An example DLG file containing the boundaries of Florida is included. The outline_dlg macro is used to convert the read data into field data that can then be displayed on a 2D viewer. Finally the write_dlg macro can be used to write the DLG data back to a file.

Files

iac_proj/dlgtools/outline/ol_mods.v contains the V definitions of the OutlineDlgCore and SelectAllCore modules and the OutlineDlgParams parameter block.

iac_proj/dlgtools/outline/ol_macs.v contains the V definitions of the OutlineDlgUI UI macro, the OutlineDlgFunc functional macro and the outline_dlg user macro.

Other Notes

The low-level module implementation makes use of a set of header definitions and utilities to aid further module development. These are contained in the dlg.h and gen_proc.h header files. Part of this module implementation is support for the XP_DEBUG environment variable. Setting the XP_DEBUG to 1 will cause the module to report a great dealing of debugging information.

The low-level OutlineDlgMods library containing the low-level modules OutlineDlgCore and SelectAllCore does not specify a process. By default the express process will be used.

Author

anonymous

Modifications

Jens Lorenz,
Manchester Visualization Centre
Andrew Dodd,
International AVS Centre

Contact

International AVS Centre
Manchester Visualization Centre
Manchester Computing
University of Manchester
Oxford Road
Manchester
United Kingdom
M13 9PL

See Also