diff --git a/src/coordinate_transform/tie_points.rs b/src/coordinate_transform/tie_points.rs
index 4116a98..8c615f2 100644
--- a/src/coordinate_transform/tie_points.rs
+++ b/src/coordinate_transform/tie_points.rs
@@ -1,4 +1,5 @@
 use std::array;
+use std::cmp::max;
 use std::rc::Rc;
 
 use delaunator::{Point, Triangulation};
@@ -258,18 +259,10 @@ impl Face {
 
         let mut update_envelope = |coords: &[Coord]| {
             for c in coords {
-                if c.x < min_x {
-                    min_x = c.x;
-                }
-                if c.x > min_x {
-                    min_x = c.x;
-                }
-                if c.y < min_x {
-                    min_x = c.y;
-                }
-                if c.y > min_x {
-                    min_x = c.y;
-                }
+                min_x = min_x.min(c.x);
+                min_y = min_y.min(c.y);
+                max_x = max_x.max(c.x);
+                max_y = max_y.max(c.y);
             }
         };