def __init__(self, mesh: jigsaw_msh_t) -> None:
    "Initialize Euclidean mesh object.\n\n        Parameters\n        ----------\n        mesh : jigsaw_msh_t\n            The underlying jigsaw_msh_t object to hold onto mesh data.\n\n        Raises\n        ------\n        TypeError\n            If input mesh is not of `jigsaw_msh_t` type.\n        ValueError\n            If input mesh's `mshID` is not equal to ``euclidean-mesh``.\n            If input mesh has `crs` property which is not of `CRS` type.\n        "
    if (not isinstance(mesh, jigsaw_msh_t)):
        raise TypeError(f'Argument mesh must be of type {jigsaw_msh_t}, not type {type(mesh)}.')
    if (mesh.mshID != 'euclidean-mesh'):
        raise ValueError(f"Argument mesh has property mshID={mesh.mshID}, but expected 'euclidean-mesh'.")
    if (not hasattr(mesh, 'crs')):
        warnings.warn('Input mesh has no CRS information.')
        mesh.crs = None
    elif (not isinstance(mesh.crs, CRS)):
        raise ValueError(f'crs property must be of type {CRS}, not type {type(mesh.crs)}.')
    self._hull = None
    self._nodes = None
    self._elements = None
    self._msh_t = mesh
Initialize Euclidean mesh object.

Parameters
----------
mesh : jigsaw_msh_t
    The underlying jigsaw_msh_t object to hold onto mesh data.

Raises
------
TypeError
    If input mesh is not of `jigsaw_msh_t` type.
ValueError
    If input mesh's `mshID` is not equal to ``euclidean-mesh``.
    If input mesh has `crs` property which is not of `CRS` type.
def __init__(self, mesh: jigsaw_msh_t) -> None:
    "Initialize Euclidean mesh object.\n\n        Parameters\n        ----------\n        mesh : jigsaw_msh_t\n            The underlying jigsaw_msh_t object to hold onto mesh data.\n\n        Raises\n        ------\n        TypeError\n            If input mesh is not of `jigsaw_msh_t` type.\n        ValueError\n            If input mesh's `mshID` is not equal to ``euclidean-mesh``.\n            If input mesh has `crs` property which is not of `CRS` type.\n        "
    if (not isinstance(mesh, jigsaw_msh_t)):
        raise TypeError(f'Argument mesh must be of type {jigsaw_msh_t}, not type {type(mesh)}.')
    if (mesh.mshID != 'euclidean-mesh'):
        raise ValueError(f"Argument mesh has property mshID={mesh.mshID}, but expected 'euclidean-mesh'.")
    if (not hasattr(mesh, 'crs')):
        warnings.warn('Input mesh has no CRS information.')
        mesh.crs = None
    elif (not isinstance(mesh.crs, CRS)):
        raise ValueError(f'crs property must be of type {CRS}, not type {type(mesh.crs)}.')
    self._hull = None
    self._nodes = None
    self._elements = None
    self._msh_t = mesh