pyorps.io.geo_dataset

PYORPS: An Open-Source Tool for Automated Power Line Routing

Reference: [1] Hofmann, M., Stetz, T., Kammer, F., Repo, S.: ‘PYORPS: An Open-Source Tool for

Automated Power Line Routing’, CIRED 2025 - 28th Conference and Exhibition on Electricity Distribution, 16 - 19 June 2025, Geneva, Switzerland

Functions

initialize_geo_dataset(file_source[, crs, ...])

Factory function to create the appropriate GeoDataset instance based on the provided input.

Classes

GeoDataset(file_source[, crs])

InMemoryRasterDataset(file_source, crs, ...)

InMemoryVectorDataset(file_source[, crs, ...])

LocalRasterDataset(file_source[, crs])

LocalVectorDataset(file_source[, crs, bbox, ...])

RasterDataset(file_source[, crs])

VectorDataset(file_source[, crs, bbox, mask])

WFSVectorDataset(file_source[, crs, bbox, mask])

class pyorps.io.geo_dataset.GeoDataset(file_source, crs=None)[source]

Bases: ABC

Parameters:
  • file_source (Any)

  • crs (str | None)

data: GeoDataFrame | ndarray | None = None
__init__(file_source, crs=None)[source]
Parameters:
  • file_source (Any)

  • crs (str | None)

file_source: Any
crs: str | None = None
abstractmethod load_data(**kwargs)[source]
class pyorps.io.geo_dataset.VectorDataset(file_source, crs=None, bbox=None, mask=None)[source]

Bases: GeoDataset, ABC

Parameters:
__init__(file_source, crs=None, bbox=None, mask=None)[source]
Parameters:
bbox: Polygon | GeoDataFrame | GeoSeries | tuple[float, float, float, float] | None = (None,)
mask: Polygon | GeoDataFrame | tuple | None = (None,)
abstractmethod correct_crs()[source]
abstractmethod apply_mask()[source]
abstractmethod apply_bbox()[source]
abstractmethod post_loading()[source]
file_source: Any
class pyorps.io.geo_dataset.InMemoryVectorDataset(file_source, crs=None, bbox=None, mask=None)[source]

Bases: VectorDataset

Parameters:
load_data(**kwargs)[source]
correct_crs()[source]
apply_bbox()[source]
apply_mask()[source]
post_loading()[source]
class pyorps.io.geo_dataset.LocalVectorDataset(file_source, crs=None, bbox=None, mask=None)[source]

Bases: InMemoryVectorDataset

Parameters:
load_data(**kwargs)[source]
apply_bbox()[source]
apply_mask()[source]
class pyorps.io.geo_dataset.WFSVectorDataset(file_source, crs=None, bbox=None, mask=None)[source]

Bases: LocalVectorDataset

Parameters:
load_data(**kwargs)[source]
apply_mask()[source]
class pyorps.io.geo_dataset.RasterDataset(file_source, crs=None)[source]

Bases: GeoDataset, ABC

Parameters:
transform: Affine
shape: tuple[int, int]
count: int
dtype: dtype
file_source: Any
class pyorps.io.geo_dataset.LocalRasterDataset(file_source, crs=None)[source]

Bases: RasterDataset

Parameters:
load_data(**kwargs)[source]
class pyorps.io.geo_dataset.InMemoryRasterDataset(file_source, crs, transform)[source]

Bases: RasterDataset

Parameters:
  • file_source (Any)

  • crs (str)

  • transform (Affine)

__init__(file_source, crs, transform)[source]
Parameters:
  • file_source (Any)

  • crs (str)

  • transform (Affine)

load_data(**kwargs)[source]
pyorps.io.geo_dataset.initialize_geo_dataset(file_source, crs=None, bbox=None, mask=None, transform=None)[source]

Factory function to create the appropriate GeoDataset instance based on the provided input.

Parameters:
Returns:

An appropriate GeoDataset subclass instance

Return type:

GeoDataset

Examples

# From local vector file vector_dataset = create_geo_dataset(“path/to/shapefile.shp”, crs=”EPSG:4326”)

# From GeoDataFrame vector_dataset = create_geo_dataset(gdf, bbox=(x1, y1, x2, y2))

# From WFS source wfs_dataset = create_geo_dataset({“url”: “https://example.com/wfs”,

“layer”: “layer1”})

# From local raster file raster_dataset = create_geo_dataset(“path/to/dem.tif”)

# From numpy array raster_dataset = create_geo_dataset(array_data, transform=transform,

crs=”EPSG:4326”)