healpy.query_polygon

Contents

healpy.query_polygon#

healpy.query_polygon(nside, vertices, inclusive=False, fact=4, nest=False, buff=None, return_ranges=False)#

Returns the pixels whose centers lie within the convex polygon defined by the vertices array (if inclusive is False), or which overlap with this polygon (if inclusive is True).

Parameters:
nsideint

The nside of the Healpix map.

verticesfloat, array-like

Vertex array containing the vertices of the polygon, shape (N, 3).

inclusivebool, optional

If False, return the exact set of pixels whose pixel centers lie within the polygon; if True, return all pixels that overlap with the polygon, and maybe a few more. Default: False.

factint, optional

Only used when inclusive=True. The overlapping test will be done at the resolution fact*nside. For NESTED ordering, fact must be a power of 2, less than 2**30, else it can be any positive integer. Default: 4.

nest: bool, optional

if True, assume NESTED pixel ordering, otherwise, RING pixel ordering

buff: int array, optional

if provided, this numpy array is used to contain the return values and must be at least long enough to do so. Cannot be used with return_ranges=True.

return_ranges: bool, optional

if True, return a 2D array of pixel ranges with shape (num_ranges, 2), where each row contains [start, end) of a range. This is more memory-efficient for queries returning large numbers of pixels. Default: False

Returns:
ipixint, array

If return_ranges is False: 1D array of pixel indices. If return_ranges is True: 2D array of shape (num_ranges, 2) where each row is [start, end) representing a range of pixels.