Skip to main content

No project description provided

Project description

cdrc

cdrc is a Python wrapper client library designed to connect to the CriticalMAAS Data Repository (CDR) and programmatically pull data. It can build GeoJSON files and GeoPackages for features extracted from COGs (Cloud Optimized GeoTIFF files of maps).

All georeferenced data returned will be in ESPG:4326 projection. Projected maps used to georeference features will be returned as the original projection they were projected with.

CDR github: https://github.com/DARPA-CRITICALMAAS/cdr

Features

  • Connect to the CDR with a token
  • Pull data programmatically from COGs
  • Build GeoJSON files
  • Build GeoPackages
  • Download COG images in pixel space and projected COGs if features are projected

Installation

To install the cdrc library, use pip:

pip install cdrc

Running cdrc

To import the library and set up the client:

import cdrc

client = cdrc.CDRClient(token="your bearer token")

If you want to view data for a specific cog you can use the client.build_cog_geopackages function. It will download data from the cdr and convert it to a ready to use geopackage or geojson files you can load directly into QGIS.

This query can return a lot of data and take a long time to complete so if you only care about certain feature types or data from specific system/versions those should be set.

Parameters:

cog_id: Cog id.

feature_types: An array of the features you want. Options are: line, point, polygon.

system_versions: An array of tuples with system and system_version. An empty array will return results from all systems.

validated: Return validated features or not validated. None will return both validated and not validated features/legend_items.

cog_id = "specify what cog you want"
system =  "system_name"
system_version = "0.0.1"

client.build_cog_geopackages(
    cog_id=cog_id,
    feature_types=['polygon', 'point', 'line'],
    system_versions=[(system, system_version)],
    validated=None
)

If you want to view data for a specific CMA area you can use the client.build_cma_geopackages function. It will download data from the cdr and convert it to a ready to use geopackage or geojson files you can load directly into QGIS.

This query can return a lot of data and take a long time to complete so if you only care about certain feature types or data from specific system/versions those should be set.

Parameters:

cog_ids: List of cog ids that you want results for.

feature_type: Provide an the type of feature you want. Options are line, point, polygon.

system_versions: An array of tuples with system and system_version. An empty array will return results from all systems

validated: Return validated features or not validated. None will return both validated and not validated features.

search_text: String to be searched over the Legend description/label/abbreviation fields.

intersect_polygon: Geojson polygon to intersect over the features. EPSG:4326

cma_name: Name of the output folder for this search.

cog_ids = ["specify list of cogs you want","..."]

client.build_cma_geopackages(
    cog_ids=cog_ids,
    feature_type='line',
    system_versions=[(system, system_version)],
    validated=None,
    search_text="",
    intersect_polygon= { 
        "type": "Polygon", 
        "coordinates": [
            [
                [-94.23558192118045, 48.0],
                [-94.24500827925175, 48.0],
                [-94.24500827925175, 49.0], 
                [-95.24500827925175, 49.0], 
                [-95.24500827925175, 48.0], 
                [-94.23558192118045, 48.0] 
            ]
        ] 
        },
    cma_name="cma_test"
)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cdrc-0.1.15.tar.gz (9.0 kB view details)

Uploaded Source

Built Distribution

cdrc-0.1.15-py3-none-any.whl (9.4 kB view details)

Uploaded Python 3

File details

Details for the file cdrc-0.1.15.tar.gz.

File metadata

  • Download URL: cdrc-0.1.15.tar.gz
  • Upload date:
  • Size: 9.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.9.12 Darwin/23.4.0

File hashes

Hashes for cdrc-0.1.15.tar.gz
Algorithm Hash digest
SHA256 def56e513bb22bb2e660a451ef22f7fd8b993cc48afd57d66860ec9bd06c935b
MD5 eae069aebcebf675c1b5030ed4306247
BLAKE2b-256 00c6f353aef6c02b1010b16757dfc506bfe08700e6e029c4d55efa25afd25354

See more details on using hashes here.

File details

Details for the file cdrc-0.1.15-py3-none-any.whl.

File metadata

  • Download URL: cdrc-0.1.15-py3-none-any.whl
  • Upload date:
  • Size: 9.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.1 CPython/3.9.12 Darwin/23.4.0

File hashes

Hashes for cdrc-0.1.15-py3-none-any.whl
Algorithm Hash digest
SHA256 97061290b7ee5acd880528b138677f2a6b6aa12ac801df8cc1d61966e8e986ba
MD5 56e03bc03661989acbf7c741d1f86910
BLAKE2b-256 59502991d8215fbe39aa4538b5baa0f36688d7be59da0bef0466d5ebd275e63a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page