lerp static method
Linearly interpolate between two themes.
The arguments must not be null.
Implementation
static SfMapsThemeData? lerp(
SfMapsThemeData? a,
SfMapsThemeData? b,
double t,
) {
if (a == null && b == null) {
return null;
}
return SfMapsThemeData(
layerColor: Color.lerp(a!.layerColor, b!.layerColor, t),
layerStrokeColor: Color.lerp(a.layerStrokeColor, b.layerStrokeColor, t),
layerStrokeWidth: lerpDouble(a.layerStrokeWidth, b.layerStrokeWidth, t)!,
shapeHoverColor: Color.lerp(a.shapeHoverColor, b.shapeHoverColor, t),
shapeHoverStrokeColor: Color.lerp(
a.shapeHoverStrokeColor,
b.shapeHoverStrokeColor,
t,
),
shapeHoverStrokeWidth: lerpDouble(
a.shapeHoverStrokeWidth,
b.shapeHoverStrokeWidth,
t,
),
legendTextStyle: TextStyle.lerp(a.legendTextStyle, b.legendTextStyle, t),
markerIconColor: Color.lerp(a.markerIconColor, b.markerIconColor, t),
markerIconStrokeColor: Color.lerp(
a.markerIconStrokeColor,
b.markerIconStrokeColor,
t,
),
markerIconStrokeWidth:
lerpDouble(a.markerIconStrokeWidth, b.markerIconStrokeWidth, t)!,
dataLabelTextStyle: TextStyle.lerp(
a.dataLabelTextStyle,
b.dataLabelTextStyle,
t,
),
bubbleColor: Color.lerp(a.bubbleColor, b.bubbleColor, t),
bubbleStrokeColor: Color.lerp(
a.bubbleStrokeColor,
b.bubbleStrokeColor,
t,
),
bubbleStrokeWidth:
lerpDouble(a.bubbleStrokeWidth, b.bubbleStrokeWidth, t)!,
bubbleHoverColor: Color.lerp(a.bubbleHoverColor, b.bubbleHoverColor, t),
bubbleHoverStrokeColor: Color.lerp(
a.bubbleHoverStrokeColor,
b.bubbleHoverStrokeColor,
t,
),
bubbleHoverStrokeWidth: lerpDouble(
a.bubbleHoverStrokeWidth,
b.bubbleHoverStrokeWidth,
t,
),
selectionColor: Color.lerp(a.selectionColor, b.selectionColor, t),
selectionStrokeColor: Color.lerp(
a.selectionStrokeColor,
b.selectionStrokeColor,
t,
),
selectionStrokeWidth:
lerpDouble(a.selectionStrokeWidth, b.selectionStrokeWidth, t)!,
tooltipColor: Color.lerp(a.tooltipColor, b.tooltipColor, t),
tooltipStrokeColor: Color.lerp(
a.tooltipStrokeColor,
b.tooltipStrokeColor,
t,
),
tooltipStrokeWidth:
lerpDouble(a.tooltipStrokeWidth, b.tooltipStrokeWidth, t)!,
tooltipBorderRadius:
BorderRadiusGeometry.lerp(
a.tooltipBorderRadius,
b.tooltipBorderRadius,
t,
)!,
toggledItemColor: Color.lerp(a.toggledItemColor, b.toggledItemColor, t),
toggledItemStrokeColor: Color.lerp(
a.toggledItemStrokeColor,
b.toggledItemStrokeColor,
t,
),
toggledItemStrokeWidth: lerpDouble(
a.toggledItemStrokeWidth,
b.toggledItemStrokeWidth,
t,
),
);
}