Skip to content

Commit 8e55a3f

Browse files
committed
cleanup
1 parent 5c327a5 commit 8e55a3f

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

cf_xarray/geometry.py

+7-4
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
import xarray as xr
1111

1212
GEOMETRY_CONTAINER_NAME = "geometry_container"
13+
FEATURES_DIM_NAME = "features"
1314

1415
__all__ = [
1516
"decode_geometries",
@@ -34,6 +35,8 @@
3435

3536
@dataclass
3637
class GeometryNames:
38+
"""Helper class to ease handling of all the variable names needed for CF geometries."""
39+
3740
def __init__(self, suffix: str = "", grid_mapping: str | None = None):
3841
self.container_name: str = GEOMETRY_CONTAINER_NAME + suffix
3942
self.node_dim: str = "node" + suffix
@@ -315,7 +318,7 @@ def encode_geometries(ds: xr.Dataset):
315318
def reshape_unique_geometries(
316319
ds: xr.Dataset,
317320
geom_var: str = "geometry",
318-
new_dim: str = "features",
321+
new_dim: str = FEATURES_DIM_NAME,
319322
) -> xr.Dataset:
320323
"""Reshape a dataset containing a geometry variable so that all unique features are
321324
identified along a new dimension.
@@ -524,7 +527,7 @@ def points_to_cf(pts: xr.DataArray | Sequence, *, names: GeometryNames | None =
524527
coord = pts[dim] if dim in pts.coords else None
525528
pts_ = pts.values.tolist()
526529
else:
527-
dim = "features"
530+
dim = FEATURES_DIM_NAME
528531
coord = None
529532
pts_ = pts
530533

@@ -599,8 +602,8 @@ def cf_to_points(ds: xr.Dataset):
599602
node_count_name = ds[container_name].attrs.get("node_count")
600603
if node_count_name is None:
601604
# No node_count means all geometries are single points (node_count = 1)
602-
# And if we had no coordinates, then the dimension defaults to "features"
603-
feat_dim = feat_dim or "features"
605+
# And if we had no coordinates, then the dimension defaults to FEATURES_DIM_NAME
606+
feat_dim = feat_dim or FEATURES_DIM_NAME
604607
node_count = xr.DataArray([1] * xy.shape[0], dims=(feat_dim,))
605608
if feat_dim in ds.coords:
606609
node_count = node_count.assign_coords({feat_dim: ds[feat_dim]})

0 commit comments

Comments
 (0)