Marker.from constructor
Marker.from(
- dynamic value, {
- Key? key,
- num? size,
- num? width,
- num? height,
- num? opacity,
- MarkerAlignment? align,
- MarkerOffset? offset,
- dynamic widget,
- dynamic data,
Implementation
factory Marker.from(
dynamic value, {
Key? key,
num? size,
num? width,
num? height,
num? opacity,
MarkerAlignment? align,
MarkerOffset? offset,
dynamic widget,
dynamic data,
}) {
if (value is Marker) {
return Marker(
value.latlng,
size: size ?? value.size,
width: width ?? value.width,
height: height ?? value.height,
opacity: opacity as double? ?? value.opacity,
align: align ?? value.align,
offset: offset ?? value.offset,
widget:
value.icon ?? value.image ?? value.svg ?? value.widget ?? widget,
data: data ?? value.data,
);
}
bool isLatLng = value is LatLng;
bool isList = (value is List &&
value.isNotEmpty &&
(value.first is int || value.first is double));
if (isLatLng || isList) {
LatLng latlng = value is LatLng ? value : LatLng.from(value);
return Marker(
latlng,
size: size,
width: width,
height: height,
opacity: opacity as double?,
align: align,
offset: offset,
widget: widget,
data: data,
);
}
throw Exception("Invalid value...");
}