transformScalar method

  1. @override
double transformScalar(
  1. double value,
  2. ILayoutData dimensions
)
override

Apply transformation to scalar values like stroke width, radius, etc.

Implementation

@override
double transformScalar(double value, ILayoutData dimensions) {
  switch (relativeTo) {
    case RelativeDimension.none:
      return value;
    case RelativeDimension.width:
      if (value == double.negativeInfinity) return 0;
      if (value == double.infinity) return dimensions.width;
      return value * (dimensions.width / (maxX - minX));
    case RelativeDimension.height:
      if (value == double.negativeInfinity) return 0;
      if (value == double.infinity) return dimensions.height;
      return value * (dimensions.height / (maxY - minY));
  }
}