コード例 #1
0
ファイル: geosconverter.go プロジェクト: xeonx/raster
//IntersectsFilter creates a Filter allowing to skip tiles outside of a given geometry
func IntersectsFilter(g *geos.Geometry) raster.Filter {
	//TODO: use a prepared geometry

	return func(level, x, y int) (bool, error) {

		tile, err := newTilePolygon(level, x, y)
		if err != nil {
			return false, err
		}
		intersects, err := g.Intersects(tile)
		if err != nil {
			return false, err
		}

		return !intersects, nil //Tiles that do not intersect are excluded
	}
}