Skip to content

Commit

Permalink
apply ruff formatting after rebase
Browse files Browse the repository at this point in the history
  • Loading branch information
thwllms committed Apr 30, 2024
1 parent a1c0a05 commit 02408cd
Show file tree
Hide file tree
Showing 3 changed files with 61 additions and 36 deletions.
4 changes: 2 additions & 2 deletions .github/workflows/continuous-integration.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,8 @@ jobs:
- name: Lint (ruff)
run: |
ruff
ruff-format --check
ruff check
ruff format --check
- name: Test with pytest
run: |
Expand Down
90 changes: 56 additions & 34 deletions src/rashdf/geom.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,14 @@
import numpy as np
from geopandas import GeoDataFrame
from pyproj import CRS
from shapely import Polygon, Point, LineString, MultiLineString, MultiPolygon, polygonize
from shapely import (
Polygon,
Point,
LineString,
MultiLineString,
MultiPolygon,
polygonize,
)

from typing import List, Optional

Expand Down Expand Up @@ -188,7 +195,7 @@ def mesh_cell_faces(self) -> GeoDataFrame:

def bc_lines(self) -> GeoDataFrame:
"""Return the 2D mesh area boundary condition lines.
Returns
-------
GeoDataFrame
Expand All @@ -203,32 +210,41 @@ def bc_lines(self) -> GeoDataFrame:
mesh_names = v_conv_str(bc_line_data["Attributes"][()]["SA-2D"])
types = v_conv_str(bc_line_data["Attributes"][()]["Type"])
geoms = list()
for pnt_start, pnt_cnt, part_start, part_cnt in bc_line_data["Polyline Info"][()]:
points = bc_line_data["Polyline Points"][()][pnt_start:pnt_start+pnt_cnt]
for pnt_start, pnt_cnt, part_start, part_cnt in bc_line_data["Polyline Info"][
()
]:
points = bc_line_data["Polyline Points"][()][
pnt_start : pnt_start + pnt_cnt
]
if part_cnt == 1:
geoms.append(LineString(points))
else:
parts = bc_line_data["Polyline Parts"][()][part_start:part_start+part_cnt]
parts = bc_line_data["Polyline Parts"][()][
part_start : part_start + part_cnt
]
geoms.append(
MultiLineString(
list(points[part_pnt_start:part_pnt_start+part_pnt_cnt] for part_pnt_start, part_pnt_cnt in parts)
list(
points[part_pnt_start : part_pnt_start + part_pnt_cnt]
for part_pnt_start, part_pnt_cnt in parts
)
)
)
return GeoDataFrame(
{
"bc_line_id":bc_line_ids,
"name":names,
"mesh_name":mesh_names,
"type":types,
"geometry":geoms
"bc_line_id": bc_line_ids,
"name": names,
"mesh_name": mesh_names,
"type": types,
"geometry": geoms,
},
geometry="geometry",
crs=self.projection()
crs=self.projection(),
)

def breaklines(self) -> GeoDataFrame:
"""Return the 2D mesh area breaklines.
Returns
-------
GeoDataFrame
Expand All @@ -238,32 +254,39 @@ def breaklines(self) -> GeoDataFrame:
return GeoDataFrame()
bl_line_data = self["/Geometry/2D Flow Area Break Lines"]
bl_line_ids = range(bl_line_data["Attributes"][()].shape[0])
names = np.vectorize(convert_ras_hdf_string)(bl_line_data["Attributes"][()]["Name"])
names = np.vectorize(convert_ras_hdf_string)(
bl_line_data["Attributes"][()]["Name"]
)
geoms = list()
for pnt_start, pnt_cnt, part_start, part_cnt in bl_line_data["Polyline Info"][()]:
points = bl_line_data["Polyline Points"][()][pnt_start:pnt_start+pnt_cnt]
for pnt_start, pnt_cnt, part_start, part_cnt in bl_line_data["Polyline Info"][
()
]:
points = bl_line_data["Polyline Points"][()][
pnt_start : pnt_start + pnt_cnt
]
if part_cnt == 1:
geoms.append(LineString(points))
else:
parts = bl_line_data["Polyline Parts"][()][part_start:part_start+part_cnt]
parts = bl_line_data["Polyline Parts"][()][
part_start : part_start + part_cnt
]
geoms.append(
MultiLineString(
list(points[part_pnt_start:part_pnt_start+part_pnt_cnt] for part_pnt_start, part_pnt_cnt in parts)
list(
points[part_pnt_start : part_pnt_start + part_pnt_cnt]
for part_pnt_start, part_pnt_cnt in parts
)
)
)
return GeoDataFrame(
{
"bl_id":bl_line_ids,
"name":names,
"geometry":geoms
},
{"bl_id": bl_line_ids, "name": names, "geometry": geoms},
geometry="geometry",
crs=self.projection()
crs=self.projection(),
)

def refinement_regions(self) -> GeoDataFrame:
"""Return the 2D mesh area refinement regions.
Returns
-------
GeoDataFrame
Expand All @@ -276,24 +299,23 @@ def refinement_regions(self) -> GeoDataFrame:
names = np.vectorize(convert_ras_hdf_string)(rr_data["Attributes"][()]["Name"])
geoms = list()
for pnt_start, pnt_cnt, part_start, part_cnt in rr_data["Polygon Info"][()]:
points = rr_data["Polygon Points"][()][pnt_start:pnt_start+pnt_cnt]
points = rr_data["Polygon Points"][()][pnt_start : pnt_start + pnt_cnt]
if part_cnt == 1:
geoms.append(Polygon(points))
else:
parts = rr_data["Polygon Parts"][()][part_start:part_start+part_cnt]
parts = rr_data["Polygon Parts"][()][part_start : part_start + part_cnt]
geoms.append(
MultiPolygon(
list(points[part_pnt_start:part_pnt_start+part_pnt_cnt] for part_pnt_start, part_pnt_cnt in parts)
list(
points[part_pnt_start : part_pnt_start + part_pnt_cnt]
for part_pnt_start, part_pnt_cnt in parts
)
)
)
return GeoDataFrame(
{
"rr_id":rr_ids,
"name":names,
"geometry":geoms
},
{"rr_id": rr_ids, "name": names, "geometry": geoms},
geometry="geometry",
crs=self.projection()
crs=self.projection(),
)

def connections(self) -> GeoDataFrame:
Expand Down
3 changes: 3 additions & 0 deletions tests/test_geom.py
Original file line number Diff line number Diff line change
Expand Up @@ -54,16 +54,19 @@ def test_mesh_cell_polygons():
with RasGeomHdf(MUNCIE_G05) as ghdf:
assert _gdf_matches_json(ghdf.mesh_cell_polygons(), mesh_cell_polygons_json)


def test_bc_lines():
bc_lines_json = TEST_JSON / "bc_lines.json"
with RasGeomHdf(MUNCIE_G05) as ghdf:
assert _gdf_matches_json(ghdf.bc_lines(), bc_lines_json)


def test_breaklines():
breaklines_json = TEST_JSON / "breaklines.json"
with RasGeomHdf(MUNCIE_G05) as ghdf:
assert _gdf_matches_json(ghdf.breaklines(), breaklines_json)


def test_refinement_regions():
rr_json = TEST_JSON / "refinement_regions.json"
with RasGeomHdf(MUNCIE_G05) as ghdf:
Expand Down

0 comments on commit 02408cd

Please sign in to comment.