# Compare resolution policies

In CRAN or offline builds, network-dependent chunks are not evaluated.

This example uses BlueTopo tiles covering New York Harbor. The workflow demonstrates tile discovery, checksum-verified asset retrieval, and file-backed raster access with `terra`. It applies native source-resolution policies to the AOI, reports selected tile coverage, and renders policy footprints. The current New York Harbor example is a compact 4 m native-resolution plan, so policy differences mainly demonstrate selection rules rather than a dramatic visual change.

Smaller meter values mean finer native source resolution. `resolution` selects source tiles; it does not resample. `coverage = "fill"` can add fallback source tiles. `output_resolution` is the argument that changes the output grid.

## Example area

## Policies

    policies <- list(
      native = list(resolution = "native", coverage = "warn"),
      finest = list(resolution = "finest", coverage = "ignore"),
      `finest + coverage fill` = list(resolution = "finest", coverage = "fill"),
      coarsest = list(resolution = "coarsest", coverage = "ignore"),
      `exact available native resolution` = list(resolution = exact_available, coverage = "ignore"),
      `nearest 6 m` = list(resolution = bluertopo_resolution("nearest", value = 6), coverage = "ignore")
    )

    policy_tiles <- lapply(policies, function(policy) {
      bluertopo_tiles(
        real_aoi,
        resolution = policy$resolution,
        coverage = policy$coverage,
        quiet = TRUE
      )
    })

    policy_summary <- do.call(rbind, lapply(names(policy_tiles), function(name) {
      tiles <- policy_tiles[[name]]
      df <- as.data.frame(tiles)
      coverage <- attr(tiles, "coverage")
      data.frame(
        policy = name,
        selected_tile_count = nrow(df),
        selected_resolutions = paste(sort(unique(df$resolution_m)), collapse = ", "),
        selected_coverage_fraction = coverage$selected_coverage_fraction,
        selected_aoi_fraction = coverage$selected_aoi_fraction,
        target_met = coverage$target_met,
        stringsAsFactors = FALSE
      )
    }))

## Tile selection maps

## Coverage by policy

Use an explicit output grid only when resampling is intended.

## Elevation context