Source code for rastervision.core.data.vector_transformer.vector_transformer

from abc import (ABC, abstractmethod)
from typing import TYPE_CHECKING, Optional

if TYPE_CHECKING:
    from rastervision.core.data import CRSTransformer


[docs]class VectorTransformer(ABC): """Transforms vector data.""" def __call__(self, geojson: dict, crs_transformer: Optional['CRSTransformer'] = None, **kwargs) -> dict: """Shortcut for :meth:`.transform`. Args: geojson (dict): A GeoJSON-like mapping of a FeatureCollection. crs_transformer (Optional[CRSTransformer]): CRSTransformer. Defaults to None. **kwargs: Extra args for :meth:`.transform`. Returns: dict: Transformed GeoJSON. """ return self.transform( geojson, crs_transformer=crs_transformer, **kwargs)
[docs] @abstractmethod def transform(self, geojson: dict, crs_transformer: Optional['CRSTransformer'] = None) -> dict: """Transform a GeoJSON mapping of vector data. Args: geojson (dict): A GeoJSON-like mapping of a FeatureCollection. Returns: dict: Transformed GeoJSON. """