Example #1
0
 def __init__(self, where='1=1', inc=None, index=False, **kwargs):
     super().__init__(**kwargs)
     self._dav_api_url = 'https://maps.coast.noaa.gov/arcgis/rest/services/DAV/ElevationFootprints/MapServer/0/query?'
     self._outdir = os.path.join(os.getcwd(), 'digital_coast')
     self.name = 'digital_coast'
     self.where = where
     self.inc = utils.str2inc(inc)
     self.index = index
Example #2
0
    def __init__(
            self,
            src_region,
            src_x_inc,
            src_y_inc,
            epsg_in,
            epsg_out,
            verbose=True,
            cache_dir=vdatum_cache
    ):
        self.src_region = src_region
        self.src_x_inc = utils.str2inc(src_x_inc)
        self.src_y_inc = utils.str2inc(src_y_inc)
        self.epsg_in = self._datum_by_name(str(epsg_in))
        self.epsg_out = self._datum_by_name(str(epsg_out))
        self.cache_dir = cache_dir
        self.verbose = verbose
        self.xcount, self.ycount, self.gt = self.src_region.geo_transform(x_inc=self.src_x_inc, y_inc=self.src_y_inc)

        self.ref_in, self.ref_out = self._frames(self.epsg_in, self.epsg_out)
Example #3
0
 def __init__(self, where='', datatype=None, inc=None, **kwargs):
     super().__init__(**kwargs)
     self._dc_url = 'https://coast.noaa.gov'
     self._dc_htdata_url = 'https://coast.noaa.gov/htdata/'
     #self._dc_dirs = ['lidar1_z', 'lidar2_z', 'lidar3_z', 'lidar4_z', 'raster1', 'raster2', 'raster5']
     self._dc_dirs = ['lidar1_z', 'raster1']
     self._outdir = os.path.join(os.getcwd(), 'digital_coast')
     self.where = [where] if len(where) > 0 else []
     self.datatype = datatype
     self.inc = utils.str2inc(inc)
     self.name = 'dc'
     self._urls = [self._dc_url, self._dc_htdata_url]
     self.FRED = FRED.FRED(name=self.name, verbose=self.verbose)
     self._update_if_not_in_FRED()
Example #4
0
 def __init__(self, processed=True, inc=None, process=False, min_year=None, survey_id=None, exclude=None, **kwargs):
     super().__init__(**kwargs)
     self._mb_data_url = "https://data.ngdc.noaa.gov/platforms/"
     self._mb_metadata_url = "https://data.noaa.gov/waf/NOAA/NESDIS/NGDC/MGG/Multibeam/iso/"
     self._mb_search_url = "https://maps.ngdc.noaa.gov/mapviewer-support/multibeam/files.groovy?"
     self._mb_autogrid = "https://www.ngdc.noaa.gov/maps/autogrid/"
     self._mb_html = "https://www.ngdc.noaa.gov/"
     self._outdir = os.path.join(os.getcwd(), 'mb')
     self._urls = [self._mb_data_url, self._mb_metadata_url, self._mb_autogrid]
     self.name = 'multibeam'
     self.processed_p = processed
     self.process = process
     self.inc = utils.str2inc(inc)
     self.min_year = utils.int_or(min_year)
     self.survey_id = survey_id
     self.exclude = exclude
Example #5
0
  --help\tPrint the usage text
  --version\tPrint the version information

 Examples:
  % spatial_metadata.py my_data.datalist

CIRES DEM home page: <http://ciresgroups.colorado.edu/coastalDEM>
'''.format(_version)

if __name__ == '__main__':
    i = 1
    dls = []
    i_regions = []
    these_regions = []
    epsg = 4326
    inc = utils.str2inc('1s')
    node = 'pixel'
    name = 'waffles_spat'
    extend = 0
    want_verbose = True
    want_prefix = False

    argv = sys.argv
    while i < len(argv):
        arg = sys.argv[i]
        if arg == '--region' or arg == '-R':
            i_regions.append(str(argv[i + 1]))
            i = i + 1
        elif arg[:2] == '-R':
            i_regions.append(str(arg[2:]))
        elif arg == '--outname' or arg == '-O':
Example #6
0
def spat_meta_cli(argv = sys.argv):
    i = 1
    dls = []
    i_regions = []
    these_regions = []
    src_srs = 'epsg:4326'
    xinc = utils.str2inc('1s')
    yinc = utils.str2inc('1s')
    node = 'pixel'
    name = 'waffles_spat'
    ogr_format = 'ESRI Shapefile'
    extend = 0
    want_verbose = True
    want_prefix = False
    want_recursive = False
    prefix_args = {}
            
    argv = sys.argv
    while i < len(argv):
        arg = sys.argv[i]
        if arg == '--region' or arg == '-R':
            i_regions.append(str(argv[i + 1]))
            i = i + 1
        elif arg[:2] == '-R':
            i_regions.append(str(arg[2:]))
        elif arg == '--outname' or arg == '-O':
            name = argv[i + 1]
            i += 1
        elif arg[:2] == '-O': name = arg[2:]
        elif arg == '-s_srs' or arg == '--s_srs' or arg == '-P':
            src_srs = argv[i + 1]
            i = i + 1
        elif arg == '--increment' or arg == '-E':
            incs = argv[i + 1].split(':')
            xy_inc = incs[0].split('/')
            xinc = utils.str2inc(xy_inc[0])
            if len(xy_inc) > 1:
                yinc = utils.str2inc(xy_inc[1])
            else:
                yinc = utils.str2inc(xy_inc[0])
            i = i + 1
        elif arg[:2] == '-E':
            incs = arg[2:].split(':')
            xy_inc = incs[0].split('/')
            xinc = utils.str2inc(xy_inc[0])
            if len(xy_inc) > 1:
                yinc = utils.str2inc(xy_inc[1])
            else:
                yinc = utils.str2inc(xy_inc[0])
        elif arg == '--extend' or arg == '-X':
            exts = argv[i + 1].split(':')
            extend = utils.int_or(exts[0], 0)
            i += 1
        elif arg[:2] == '-X':
            exts = arg[2:].split(':')
            extend = utils.int_or(exts[0], 0)
        elif arg == '--format' or arg == '-F':
            ogr_format = argv[i + 1]
            i += 1
        elif arg[:2] == '-F':
            ogr_format = argv[2:]
        elif arg == '-p' or arg == '--prefix':
            want_prefix = True
            prefix_opts = argv[i + 1].split(':')
            prefix_args = utils.args2dict(prefix_opts, prefix_args)
            if len(prefix_args) > 0:
                i += 1
                
        elif arg == '-r' or arg == '--grid-node': node = 'grid'
        elif arg == '-c' or arg == '--recursive': want_recursive = True
        elif arg == '--quiet' or arg == '-q': want_verbose = False
        elif arg == '-help' or arg == '--help' or arg == '-h':
            sys.stderr.write(_usage)
            sys.exit(1)
        elif arg == '-version' or arg == '--version':
            sys.stdout.write('{}\n'.format(__version__))

            sys.exit(1)
        else: dls.append(arg)
        i = i + 1

    for i_region in i_regions:
        tmp_region = regions.Region().from_string(i_region)
        if tmp_region.valid_p(check_xy=True):
            these_regions.append(tmp_region)
        else:
            i_region_s = i_region.split(':')
            tmp_region = regions.ogr_wkts(i_region_s[0])
            for i in tmp_region:
                if i.valid_p():
                    if len(i_region_s) > 1:
                        these_regions.append(
                            regions.Region().from_string(
                                '/'.join([i.format('str'), i_region_s[1]])
                            )
                        )
                        
                    else:
                        these_regions.append(i)

    if len(these_regions) == 0:
        these_regions = [None]
        utils.echo_error_msg('Could not parse region {}'.format(these_regions))
        sys.stderr.write('{}\n'.format(_usage))
        sys.exit(1)
    else:
        if want_verbose:
            utils.echo_msg(
                'parsed {} region(s)'.format(len(these_regions))
            )

    name_ = name
    for rn, this_region in enumerate(these_regions):
        utils.echo_msg('using region {}'.format(this_region.format('gmt')))
        if len(dls) == 0:
            sys.stderr.write(_usage)
            utils.echo_error_msg('you must specify some type of data')
        else:
            if want_prefix or len(these_regions) > 1:
                name_ = utils.append_fn(name, this_region, xinc, **prefix_args)
                
            if os.path.exists('{}_sm.{}'.format(name_, utils.ogr_fext(ogr_format))):
                utils.echo_msg(
                'SPATIAL METADATA {} already exists, skipping...'.format('{}_sm.{}'.format(name_, utils.ogr_fext(ogr_format)))
                    )
            else:
                
                SpatialMetadata(
                    data=dls,
                    src_region=this_region,
                    xinc=xinc,
                    yinc=yinc,
                    extend=extend,
                    src_srs=src_srs,
                    node=node,
                    name=name_,
                    verbose=want_verbose,
                    recursive=want_recursive,
                    ogr_format=ogr_format
                ).run()