getP2OffsetBasedOnCurveSide method

Offset getP2OffsetBasedOnCurveSide(
  1. int thisLevel,
  2. double p2_dx_VariationFactor,
  3. double p2_dy_VariationFactor,
  4. double centerWidth,
)

Implementation

Offset getP2OffsetBasedOnCurveSide(
    int thisLevel,
    double p2_dx_VariationFactor,
    double p2_dy_VariationFactor,
    double centerWidth) {
  final double clamped_dxFactor = p2_dx_VariationFactor.clamp(
      params.minReferencePositionOffsetFactor.dx,
      params.maxReferencePositionOffsetFactor.dx);
  final double clamped_dyFactor = p2_dy_VariationFactor.clamp(
      params.minReferencePositionOffsetFactor.dy,
      params.maxReferencePositionOffsetFactor.dy);
  final double p2_dx = thisLevel.isEven
      ? centerWidth * (1 - clamped_dxFactor)
      : centerWidth + (centerWidth * clamped_dxFactor);
  final double p2_dy = -((thisLevel * params.levelHeight) +
      (params.levelHeight *
          (thisLevel.isEven ? clamped_dyFactor : 1 - clamped_dyFactor)));
  return Offset(p2_dx, p2_dy);
}