From ea9dcc843b81397634c5f0dd1a1e507c212db7b2 Mon Sep 17 00:00:00 2001 From: alestiago Date: Fri, 11 Mar 2022 09:59:32 +0000 Subject: [PATCH] refactor: simplified centroid function --- lib/game/components/sling_shot.dart | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/lib/game/components/sling_shot.dart b/lib/game/components/sling_shot.dart index f59e7c0d..b38f1970 100644 --- a/lib/game/components/sling_shot.dart +++ b/lib/game/components/sling_shot.dart @@ -66,9 +66,7 @@ class SlingShot extends BodyComponent { /// For more information: https://en.wikipedia.org/wiki/Centroid // TODO(alestiago): move to geometry package. Vector2 centroid(List vertices) { - final centroid = Vector2.zero(); - for (final vertex in vertices) { - centroid.add(vertex); - } - return centroid / vertices.length.toDouble(); + assert(vertices.isNotEmpty, 'Vertices must not be empty'); + final sum = vertices.reduce((a, b) => a + b); + return sum / vertices.length.toDouble(); }