processData method
Implementation
void processData(final GemMapController mapController, final dynamic data) {
final List<dynamic> listJson = data['coordinates'];
final List<Coordinates> retList = listJson
.map(
(final dynamic categoryJson) => Coordinates.fromJson(categoryJson),
)
.toList();
final MarkerInfo markerInfo = MarkerInfo();
markerInfo.setCoordinates(retList[0]);
final XyType<double> theF = XyType<double>(
x: data['screen_coordinates_x'],
y: data['screen_coordinates_y'],
);
if (visiblePoints.containsKey(data['dataMarkerId'])) {
visiblePoints[data['dataMarkerId']]!.screenCoordinates = theF;
visiblePoints[data['dataMarkerId']]!.screenCoordinatesNotifier.value =
XyType<double>(x: theF.x, y: theF.y);
//visiblePoints[data['dataMarkerId']]!.screenCoordinates.x = visiblePoints[data['dataMarkerId']]!.screenCoordinates.x! * mapController.viewport.width!;
//visiblePoints[data['dataMarkerId']]!.screenCoordinates.y = visiblePoints[data['dataMarkerId']]!.screenCoordinates.y! * mapController.viewport.height!;
} else {
markerInfo.screenCoordinates = theF;
// markerInfo.screenCoordinates.x = markerInfo.screenCoordinates.x! * mapController.viewport.width!;
// markerInfo.screenCoordinates.y = markerInfo.screenCoordinates.y! * mapController.viewport.height!;
markerInfo.info = jsonDecode(data['info']);
markerInfo.mapController = mapController;
// Add to the map
visiblePoints[data['dataMarkerId']] = markerInfo;
}
if (onNotifyCustom != null) {
onNotifyCustom!(2);
}
}