project method

  1. @override
Point project(
  1. double longitude,
  2. double latitude
)
override

Projects a geographic coordinate longitude, latitude to screen coordinates.

Implementation

@override
Point project(double longitude, double latitude) {
  // Clamp latitude to avoid infinity at poles
  latitude = latitude.clamp(-85.0511, 85.0511);

  final lon = toRadians(longitude - centerLon);
  final lat = toRadians(latitude);

  final x = lon;
  final y = -math.log(math.tan(math.pi / 4 + lat / 2));

  return applyTransform(x, y);
}