getParallelPoint_(lineString, extent, index) {
    const flatCoordinates = lineString.getFlatCoordinates();
    let left = 0;
    let right = flatCoordinates.length - 2;
    if (flatCoordinates[left] > flatCoordinates[right]) {
      left = right;
      right = 0;
    }
    const clampedLeft = Math.max(extent[0], flatCoordinates[left]);
    const clampedRight = Math.min(extent[2], flatCoordinates[right]);
    const lon = clamp(
      extent[0] + Math.abs(extent[0] - extent[2]) * this.latLabelPosition_,
      clampedLeft,
      clampedRight,
    );
    const coordinate1 =
      flatCoordinates[left + 1] +
      ((flatCoordinates[right + 1] - flatCoordinates[left + 1]) *
        (lon - flatCoordinates[left])) /
        (flatCoordinates[right] - flatCoordinates[left]);
    const coordinate = [lon, coordinate1];
    const point = this.parallelsLabels_[index].geom;
    point.setCoordinates(coordinate);
    return point;
  }
@param {LineString} lineString Parallels.
@param {import("../extent.js").Extent} extent Extent.
@param {number} index Index.
@return {Point} Parallel point.
@private