Returns a rotated version around a center point.
Point rotateAround(Point center, double angle) { final translated = this - center; final rotated = translated.rotate(angle); return rotated + center; }