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.9.tar.gz (8.9 kB view details)

Uploaded Source

Built Distribution

cdrc-0.1.9-py3-none-any.whl (9.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: cdrc-0.1.9.tar.gz
  • Upload date:
  • Size: 8.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.10.12 Linux/6.5.0-44-generic

File hashes

Hashes for cdrc-0.1.9.tar.gz
Algorithm Hash digest
SHA256 e64b501286540446ca1a241dac776d3b4c25e7fc6779e8f4fa2b1d9981062954
MD5 5dded0059c64a8021232320e99806beb
BLAKE2b-256 24acf85026e6ed78e34f0e50695a91c61cfc74fee33cce1e33a415ec66d3b69f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: cdrc-0.1.9-py3-none-any.whl
  • Upload date:
  • Size: 9.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.10.12 Linux/6.5.0-44-generic

File hashes

Hashes for cdrc-0.1.9-py3-none-any.whl
Algorithm Hash digest
SHA256 c02ed1c7c584c2e5fc7c993f9c149d544670892c48d01b8f1df29064fd3fee0f
MD5 595da36847be057fec1f5f8753519aa9
BLAKE2b-256 349c33c1a8153986f5a2c43eb29b1d3f78fa4d8117ca9b4f45ba277fef64c06b

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