def build_kdtree(self, grid='node'):
"""Builds the kdtree for the specified grid"""
from scipy.spatial import KDTree
if not hasattr(self, '_kd_trees'):
self._kd_trees = {'node': None,
'edge1': None,
'edge2': None,
'center': None}
lon, lat = self._get_grid_vars(grid)
if lon is None or lat is None:
raise ValueError("{0}_lon and {0}_lat must be defined in order to "
"create and use KDTree for this grid".format(grid))
lin_points = np.column_stack((lon.ravel(), lat.ravel()))
self._kd_trees[grid] = KDTree(lin_points, leafsize=4)
评论列表
文章目录