From 8aab91479ae8295d09bd4a22ab6e75ddcd870948 Mon Sep 17 00:00:00 2001 From: Tenari Date: Sat, 29 Aug 2026 17:27:19 -0500 Subject: [PATCH] vec2AlmostEq() --- all.h | 1 + math.c | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/all.h b/all.h index 6f51ee2..cca6ec2 100644 --- a/all.h +++ b/all.h @@ -698,6 +698,7 @@ fn Range1u64 mRangeFromNIdxMCount(u64 n_idx, u64 n_count, u64 m_count); fn void u32Quicksort(u32 arr[], u32 low, u32 high); fn void u32ReverseArray(u32 arr[], u32 size); fn bool vec2Eq(Vec2 a, Vec2 b); +fn bool vec2AlmostEq(Vec2 a, Vec2 b, Vec2 epsilon); fn Vec2f32 vec2Add(Vec2 a, Vec2 b); fn Vec2f32 vec2Subtract(Vec2 a, Vec2 b); fn f32 vec2Distance(Vec2 a, Vec2 b); diff --git a/math.c b/math.c index ea2c63f..62d96a7 100644 --- a/math.c +++ b/math.c @@ -77,6 +77,11 @@ fn bool vec2Eq(Vec2 a, Vec2 b) { return a.x == b.x && a.y == b.y; } +fn bool vec2AlmostEq(Vec2 a, Vec2 b, Vec2 epsilon) { + return Abs(a.x - b.x) <= epsilon.x + && Abs(a.y - b.y) <= epsilon.y; +} + fn Vec2f32 vec2Add(Vec2 a, Vec2 b) { Vec2f32 result = a; result.x += b.x;