forEachFeatureAtPixel(pixel, callback, opt_options) {
    if (!this.frameState_) {
      return;
    }
    const coordinate = this.getCoordinateFromPixelInternal(pixel);
    opt_options = opt_options !== undefined ? opt_options : {};
    const hitTolerance =
      opt_options.hitTolerance !== undefined ? opt_options.hitTolerance : 0;
    const layerFilter =
      opt_options.layerFilter !== undefined ? opt_options.layerFilter : TRUE;
    const checkWrapped = opt_options.checkWrapped !== false;
    return this.renderer_.forEachFeatureAtCoordinate(
      coordinate,
      this.frameState_,
      hitTolerance,
      checkWrapped,
      callback,
      null,
      layerFilter,
      null
    );
  }
/**
   * Detect features that intersect a pixel on the viewport, and execute a
   * callback with each intersecting feature. Layers included in the detection can
   * be configured through the `layerFilter` option in `opt_options`.
   * @param {import("./pixel.js").Pixel} pixel Pixel.
   * @param {function(import("./Feature.js").FeatureLike, import("./layer/Layer.js").default<import("./source/Source").default>, import("./geom/SimpleGeometry.js").default): T} callback Feature callback. The callback will be
   *     called with two arguments. The first argument is one
   *     {@link module:ol/Feature feature} or
   *     {@link module:ol/render/Feature render feature} at the pixel, the second is
   *     the {@link module:ol/layer/Layer layer} of the feature and will be null for
   *     unmanaged layers. To stop detection, callback functions can return a
   *     truthy value.
   * @param {AtPixelOptions} [opt_options] Optional options.
   * @return {T|undefined} Callback result, i.e. the return value of last
   * callback execution, or the first truthy callback return value.
   * @template T
   * @api
   */
Detect features that intersect a pixel on the viewport, and execute a
callback with each intersecting feature. Layers included in the detection can
be configured through the `layerFilter` option in `opt_options`.
Detect features that intersect a pixel on the viewport and execute a callback with each intersecting feature . Layers included in the detection can be configured through the ` layerFilter ` option in ` opt_options ` .
forEachFeatureAtPixel(pixel, callback, opt_options) {
    if (!this.frameState_) {
      return;
    }
    const coordinate = this.getCoordinateFromPixelInternal(pixel);
    opt_options = opt_options !== undefined ? opt_options : {};
    const hitTolerance =
      opt_options.hitTolerance !== undefined ? opt_options.hitTolerance : 0;
    const layerFilter =
      opt_options.layerFilter !== undefined ? opt_options.layerFilter : TRUE;
    const checkWrapped = opt_options.checkWrapped !== false;
    return this.renderer_.forEachFeatureAtCoordinate(
      coordinate,
      this.frameState_,
      hitTolerance,
      checkWrapped,
      callback,
      null,
      layerFilter,
      null
    );
  }
forEachFeatureAtPixel ( pixel , callback , opt_options ) { if ( ! this . frameState_ ) { return ; } const coordinate = this . getCoordinateFromPixelInternal ( pixel ) ; opt_options = opt_options !== undefined ? opt_options : { } ; const hitTolerance = opt_options . hitTolerance !== undefined ? opt_options . hitTolerance : 0 ; const layerFilter = opt_options . layerFilter !== undefined ? opt_options . layerFilter : TRUE ; const checkWrapped = opt_options . checkWrapped !== false ; return this . renderer_ . forEachFeatureAtCoordinate ( coordinate , this . frameState_ , hitTolerance , checkWrapped , callback , null , layerFilter , null ) ; }
Detect features that intersect a pixel on the viewport, and execute a
 callback with each intersecting feature.
Detect features that intersect a pixel on the viewport and execute a callback with each intersecting feature .