Returns the node coordinate in the given direction at the given tile identifier.

    :param tile_id: tile identifier, int
    :param direction: direction, str
    :return: node coord, int

def node_coord_in_direction(tile_id, direction):
    """
    Returns the node coordinate in the given direction at the given tile identifier.

    :param tile_id: tile identifier, int
    :param direction: direction, str
    :return: node coord, int
    """
    tile_coord = tile_id_to_coord(tile_id)
    for node_coord in nodes_touching_tile(tile_id):
        if tile_node_offset_to_direction(node_coord - tile_coord) == direction:
            return node_coord
    raise ValueError('No node found in direction={} at tile_id={}'.format(
        direction,
        tile_id
    ))