

Import-USGS-DEM()          Unix Programmer's Manual          Import-USGS-DEM()


NAME
     imp_dem - USGS Digital Elevation Model (DEM) geometry import filter

SYNOPSIS

     This man page describes the options specific to  the  USGS  DEM  geometry
     import converter.

EXAMPLE CONVERSION SYNTAX

     To convert a USGS DEM file to 3D  Studio  using  the  default  parameters
     listed in the setup.ini file:

          pt -i dem -o 3ds filename.dem

     To convert a USGS DEM file to VRML  and  override  some  of  the  default
     options in setup.ini:

          pt -i dem -in-dem-skip-factor = 6 -o vrml filename.dem

OVERVIEW

     The USGS DEM geometry import converter imports, manipulates and  converts
     digital  elevation  model  (DEM)  data.  This  DEM  data is provided as a
     service of the United States Geological  Survey  (USGS).  Each  data  set
     describes  the  elevation  of  semi-square  regions  of  land for various
     locations across the U.S.A., Alaska, Hawaii and some surrounding areas of
     Mexico  and  Canada. The most accurate DEM data sets are sampled every 30
     metres (7.5 minute DEMs) while the least accurate are sampled every 3 arc
     seconds  (for  1:250,000  scale DEMs). See below for a description of the
     various DEM dataset types.

     Since these datasets are abundant and available freely via the  Internet,
     this  converter  can  be  put  to  good  use  for creating realistic (and
     accurate) 3d landscape geometry. Two sample images are distributed  along
     with  this conversion program: dem_pic1.gif is a hidden line rendering of
     Mount St.  Helens and dem_pic2.gif is a shaded version of the  same  data
     (with "Al the Gangster" visiting Mount St. Helens).

     The following Internet sites provide  more  information  about  USGS  DEM
     data:

          http://nsdi.usgs.gov/nsdi/products/dem.html
          http://nsdi.usgs.gov/nsdi/maps/dem1deg.HTML

     And the following Internet sites contain vast amounts of USGS DEM data:

          ftp://spectrum.xerox.com/ds9/map/dem
               A multiple of DEM Files from XEROX (Mt. St. Helens)
          ftp://edcftp.cr.usgs.gov/pub/data/DEM/250
          http://nsdi.usgs.gov/nsdi/wais/maps/dem1deg.HTML
          http://sun1.cr.usgs.gov/doc/edchome/ndcdb/ndcdb.html






                                                                             1



Import-USGS-DEM()          Unix Programmer's Manual          Import-USGS-DEM()


     The DEM file format document is available from the following ftp site:

               ftp://nmdpow9.er.usgs.gov/public/demstnds/stdempt1.ps
               ftp://nmdpow9.er.usgs.gov/public/demstnds/stdempt2.ps
               ftp://nmdpow9.er.usgs.gov/public/demstnds/stdempt3.ps

PROBLEMS WITH USGS DEM DATA

     While one might be lead to  believe  that  elevation  data  sampled  from
     satellites  is  perfect  and  100% accurate, it is not, nor even close to
     being accurate.

     Several problems exist with USGS DEM data that one must be aware of:

          First, the projection  mapping  techniques  used  to  transform  the
          spherically  sampled  data  to UTM or longitude/latitude coordinates
          introduces  distortion  into  the  dataset.  This  is   similar   to
          flattening  out  a  spherical  map of the world into a flat mercator
          map.

          Second, undefined regions (areas with no valid elevation  data)  are
          often  found  at  the  corners  and  sides of the DEM datasets. This
          causes a problem if two  or  more  DEM  datasets  are  imported  and
          "stitched"  together  -  holes  will  most likely appear between the
          datasets.

FEATURES OF THIS CONVERTER

     DEM datasets typically contain 60000 or more quadrilateral  polygons,  or
     1200000  triangles  (for  a  258x258  resolution  sample; the maximum DEM
     dataset  size  if  2050x2050  which   would   result   in   4.2   million
     quadrilaterals  or  8.4 million triangles). This is an enormous number of
     polygons  for  most  3d  rendering  programs  so   this   DEM   converter
     incorporates two unique options to overcome this problem:

          1) The converter can skip over samples in the dataset so  that  only
          every  n-th  sample  is used. Rather than importing 258x258 samples,
          the converter imports 51x51 samples (for a skip factor of  5)  which
          results in only 2601 quadrilateral polygons.

          2) Rather than store the entire DEM dataset in  single  object,  the
          DEM  converter breaks up the data into multiple smaller objects with
          a common parent. This  has  shown  to  be  an  effective  method  to
          speeding  up the wireframe redraws of the DEM data (by a factor of 2
          or 3), and makes interactive user  movement  of  a  3d  camera  much
          faster  since  each  sub-object  is only a few hundred polygons.  In
          addition,  certain  rendering  programs  (such  as  Okino's   NuGraf
          renderer)  use  much  less memory when many smaller objects are used
          rather than one large object with many  polygons.  By  default  each
          sub-object  stores  a  maximum  of  900 polygons; contrast this with
          other converters which lump  all  120,000  polygons  into  a  single
          object - few renderers will be able to render such a large object.

          3) A default 3d camera is added to the scene  which  views  the  DEM
          data from a pleasing angle.



                                                                             2



Import-USGS-DEM()          Unix Programmer's Manual          Import-USGS-DEM()


          4) u/v texture coordinates are added to the imported data so that  a
          bitmap image can be easily draped over the DEM data.

          5) The converter creates smoothed vertex normals for the DEM data so
          that it will appear to be smooth when rendered.

COMMAND LINE OPTIONS

     The following options are specific to this import converter:

     -i dem
          This is the optional command line option which  specifies  that  the
          input data is in the USGS DEM file format. If not specified then the
          converter will try to guess the input file's format  from  its  file
          extension (.dem) and then from the contents of its file.

     -in-dem-center-at-origin = [ yes | no ]
          If set to 'yes' then the DEM data will be centered about the  origin
          (0,0,0).  Please  note  that  if  the  input  DEM  dataset  uses the
          "Geographic" or "State Plane" grid types  then  the  DEM  data  will
          always be centered about the origin; this may cause a problem if you
          want to import two DEM datasets and have them sit side-by-side -  in
          this  case you will have to physically move the two datasets so that
          they are side-by-side.

     -in-dem-print-statistics = [ yes | no ]
          If set to 'yes' then the converter will  print  out  the  number  of
          objects and polygons created.

     -in-dem-list-header-info = [ yes | no ]
          If set to 'yes' then the converter will print out information  about
          the imported DEM data including the following information:

          The DEM data description from the file,

          The number of profiles which is the number of lines of  sample  data
          in the X direction,

          The projection mapping type (geographic, UTM or state plane),

          The actual geographic coordinates of the DEM dataset's four corners,

          The minimum and maximum elevations.

     -in-dem-add-default-camera = [ yes | no ]
          If set to 'yes' then the converter will add a default camera to  the
          scene which views the DEM data at a pleasing angle.

     -in-dem-skip-factor = #
          This switch determines the quality of  the  imported  DEM  data  (it
          directly  controls how many polygons will be used to approximate the
          input DEM data). THIS IS AN IMPORTANT CONTROL PARAMETER!! A value of
          1  results in the highest quality mesh while higher values (2, 3, 4,
          etc) result in lower quality, but at the  benefit  of  reducing  the
          number  of  polygons  in  the input data. This number will cause the
          converter to 'skip' over every n-th input sample.  For  example,  if


                                                                             3



Import-USGS-DEM()          Unix Programmer's Manual          Import-USGS-DEM()


          the input dataset size is 258x258 samples, and the  skip  factor  is
          set to 4, then the converter will actually read in the data as if it
          were of size 65x65 (258/4 = 65). This  will  produce  4225  polygons
          (65x65) instead of 66565 polygons. A value of 2 or 3 (16641 polygons
          to 7396 polygons) will produce good results for a  final  rendering,
          while  values  of  5 to 8 will produce small datasets ideal for fast
          previews (2704 polygons to 1024 polygons).

     -in-dem-sub-grid-size = #
          By default the DEM data will be cut up  into  several  smaller  sub-
          objects rather than having all of the DEM data clumped together into
          one huge object. This option controls how many polygons will be  put
          into  each  sub-object.  The  default  is  30  which  will cause 900
          polygons (30x30) to be stored in each sub-object.

     -in-dem-height-scaling-factor = #
          This option scales the height of the DEM data. It  default  to  1.0.
          Values  greater  than 1.0 will make the DEM data higher while values
          between 0.0 and 1.0 will make the DEM data shorter.

     -in-dem-add-2d-txtr-coords = [ yes | no ]
          If set to 'yes' then u/v texture coordinates will be  added  to  the
          imported  dataset.  These texture coordinates will allow a 2d bitmap
          image to be easily mapped to the surface of the  data.  Please  note
          that  the  texture  coordinates  are  aligned  with the mathematical
          bounding quadrilateral of the dataset, not the actual physical edges
          of  the data (this is because the physical edges of the data are not
          square or precise).

     -in-dem-add-default-2d-texture = [ yes | no ]
          If  set  to  'yes'  then  a   default   2d   bitmap   texture   file
          ("default.tif")  will  be  linked  to  the  DEM data. This option is
          useful if you intend to apply a 2d bitmap image to the DEM data. The
          "-in-dem-add-2d-txtr-coords" option must also be enabled.

     -in-dem-texture-2d-u-repeat = 5

     -in-dem-texture-2d-v-repeat = 5
          These two values determine how many times the 2d bitmap  texture  is
          to repeat across the DEM data surface (see the "-in-dem-add-default-
          2d-texture" option above). The default values are 5 which will  make
          the   texture   repeat  5  times  in  the  horizontal  and  vertical
          directions.

     -in-dem-add-default-3d-texture = [ yes | no ]
          If  set  to  'yes'  then  a  NuGraf  "mountain"  procedural  texture
          definition  will  be  added to the scene and assigned to the current
          shader (useful for rendering the DEM data with the NuGraf renderer).
          This  texture  varies  the  color  of  the DEM data according to the
          elevation and slope of a polygon (the color varies from  greens,  to
          browns  to  whites at the highest altitudes).  Please note that this
          texture tends to be slow to  compute  due  to  the  turbulence  math
          functions;  a  better  alternative  would  be  to assign a 2d bitmap
          texture.




                                                                             4



Import-USGS-DEM()          Unix Programmer's Manual          Import-USGS-DEM()


     -in-dem-create-one-object = [ yes | no ]
          If set to 'yes' then one single object is created  for  all  of  the
          imported  data  rather  than having the data broken up into multiple
          smaller sub-objects (the default). The converter automatically  sets
          this to 'yes' (internally) if the selected output format is to be 3D
          Studio (this is because 3D Studio requires all polygons to be inside
          a  single object so that its smoothing algorithm will work properly;
          if multiple objects are used then the vertex normals will not be the
          same where the sub-objects meet and hence "cracks" may appear at the
          junctions).

     -in-dem-triangulate-data = [ yes | no ]
          If set to 'yes' then the DEM data  will  be  imported  as  triangles
          instead  of  4  sided  polygons.  This is sometimes useful to enable
          since 4-sided DEM data polygons are not planar.

OVERVIEW OF DEM DATASET TYPES

     DEM elevation data spacing varies from 30 meters for 7.5-minute DEMs to 3
     arc  seconds  for  1:250,000  scale  maps.   All  DEM data are similar in
     logical data structure and are ordered from south to  north  in  profiles
     that are ordered from west to east.

          7.5-minute  DEM  data  are  produced  in  7.5-minute   units   which
          correspond  to  USGS  7.5-minute  topographic quadrangle map series.
          7.5-minute DEM  data  consist  of  a  regular  array  of  elevations
          referenced  horizontally  on the Universal Transverse Mercator (UTM)
          coordinate system of the North American  Datum  of  1927  (NAD  27).
          These  data  are  stored as profiles with 30-meter spacing along and
          between each profile.

          15-minute  DEM  data  correspond  to  USGS   15-minute   topographic
          quadrangle  map  series  in  Alaska.   The unit sizes in Alaska vary
          depending on the latitudinal location of  the  unit.  15-minute  DEM
          data consist of a regular array of elevation referenced horizontally
          to the geographic (latitude/longitude) coordinate  system  of  North
          American  Datum  1927 (NAD 27). The spacing between elevations along
          profiles is 2 arc seconds of latitude by 3 arc seconds of longitude.

          30-minute  DEM  data  cover  30-minute  by  30-minute  areas   which
          correspond  to  the  east  half  or west half of the USGS 30- by 60-
          minute topographic quadrangle map series for the conterminous United
          States  and Hawaii.  Each 30-minute unit is produced and distributed
          as four 15- by 15-minute cells.  30-minute DEM data  have  the  same
          characteristics as the 15-minute DEM data except that the spacing of
          elevations along and between each profile is 2 arc seconds.

          1-degree DEM data are produced by the Defense Mapping Agency  in  1-
          degree  by  1-degree units which correspond to the east half or west
          half of USGS 1- by 2- degree topographic quadrangle maps series, for
          all  the  United  States  and  its  territories.   1-degree DEM data
          consist of a regular array  of  elevations  referenced  horizontally
          using  the  geographic (latitude/longitude) coordinate system of the
          World Geodetic System 1972 Datum.  A few units  are  also  available
          using  the  World  Geodetic  System  1984  Datum.   Spacing  of  the
          elevations along and between each profile  is  3  arc  seconds  with


                                                                             5



Import-USGS-DEM()          Unix Programmer's Manual          Import-USGS-DEM()


          1,201 elevations per profile.  The only exception  is  DEM  data  in
          Alaska,  where  the  spacing  and  number  of elevations per profile
          varies depending on the latitudinal location of the DEM.

LIMITATIONS

     This  converter  will  only  handle  DEM  datasets  which  use   UTM   or
     longitude/latitude  coordinate  systems.  These are the common coordinate
     systems used for most DEM data.

     If exporting to 3D Studio then all of the DEM data must  be  exported  as
     one  object  so  that  proper smoothing occurs between the sub-chunks. 3D
     Studio has a limit of 64k vertices and 64k polygons, therefore the  chunk
     size  must  be  set  appropriately  to  limit  the number of polygons and
     vertices output (the number  of  polygons  created  can  be  verified  by
     setting  the '-in-dem-print-statistics' option to 'yes' and checking that
     the number of polygons created is less than 65536).

     As explained above, most DEM data files have regions of invalid elevation
     data  (typically  at  the  corners  and  at  the  sides). This will cause
     problems if two or more datasets are imported  and  "stitched"  together:
     holes will most likely appear between the data. This converter cannot fix
     this problem which is an anomaly of the input data.



































                                                                             6

