mirror of
https://github.com/Drezil/imgui.git
synced 2024-11-15 01:17:00 +00:00
AA branch: oops, ImInvLengthSqr() is ImInvLength()
This commit is contained in:
parent
a8b5f77591
commit
a74ca9025f
@ -766,7 +766,7 @@ static inline float ImLerp(float a, float b, float t)
|
|||||||
static inline ImVec2 ImLerp(const ImVec2& a, const ImVec2& b, const ImVec2& t) { return ImVec2(a.x + (b.x - a.x) * t.x, a.y + (b.y - a.y) * t.y); }
|
static inline ImVec2 ImLerp(const ImVec2& a, const ImVec2& b, const ImVec2& t) { return ImVec2(a.x + (b.x - a.x) * t.x, a.y + (b.y - a.y) * t.y); }
|
||||||
static inline float ImLengthSqr(const ImVec2& lhs) { return lhs.x*lhs.x + lhs.y*lhs.y; }
|
static inline float ImLengthSqr(const ImVec2& lhs) { return lhs.x*lhs.x + lhs.y*lhs.y; }
|
||||||
static inline float ImLengthSqr(const ImVec4& lhs) { return lhs.x*lhs.x + lhs.y*lhs.y + lhs.z*lhs.z + lhs.w*lhs.w; }
|
static inline float ImLengthSqr(const ImVec4& lhs) { return lhs.x*lhs.x + lhs.y*lhs.y + lhs.z*lhs.z + lhs.w*lhs.w; }
|
||||||
static inline float ImInvLengthSqr(const ImVec2& lhs, float fail_value) { float d = lhs.x*lhs.x + lhs.y*lhs.y; if (d > 0.0f) return 1.0f / sqrtf(d); return fail_value; }
|
static inline float ImInvLength(const ImVec2& lhs, float fail_value) { float d = lhs.x*lhs.x + lhs.y*lhs.y; if (d > 0.0f) return 1.0f / sqrtf(d); return fail_value; }
|
||||||
|
|
||||||
static bool ImIsPointInTriangle(const ImVec2& p, const ImVec2& a, const ImVec2& b, const ImVec2& c)
|
static bool ImIsPointInTriangle(const ImVec2& p, const ImVec2& a, const ImVec2& b, const ImVec2& c)
|
||||||
{
|
{
|
||||||
@ -9132,7 +9132,7 @@ void ImDrawList::AddPolyline(const ImVec2* points, const int points_count, ImU32
|
|||||||
const ImVec2& p1 = points[i1];
|
const ImVec2& p1 = points[i1];
|
||||||
const ImVec2& p2 = points[i2];
|
const ImVec2& p2 = points[i2];
|
||||||
ImVec2 diff = p2 - p1;
|
ImVec2 diff = p2 - p1;
|
||||||
diff *= ImInvLengthSqr(diff, 1.0f);
|
diff *= ImInvLength(diff, 1.0f);
|
||||||
temp_normals[i1].x = diff.y;
|
temp_normals[i1].x = diff.y;
|
||||||
temp_normals[i1].y = -diff.x;
|
temp_normals[i1].y = -diff.x;
|
||||||
}
|
}
|
||||||
@ -9204,7 +9204,7 @@ void ImDrawList::AddPolyline(const ImVec2* points, const int points_count, ImU32
|
|||||||
const ImVec2& p1 = points[i1];
|
const ImVec2& p1 = points[i1];
|
||||||
const ImVec2& p2 = points[i2];
|
const ImVec2& p2 = points[i2];
|
||||||
ImVec2 diff = p2 - p1;
|
ImVec2 diff = p2 - p1;
|
||||||
diff *= ImInvLengthSqr(diff, 1.0f);
|
diff *= ImInvLength(diff, 1.0f);
|
||||||
|
|
||||||
const float dx = diff.x * (thickness * 0.5f);
|
const float dx = diff.x * (thickness * 0.5f);
|
||||||
const float dy = diff.y * (thickness * 0.5f);
|
const float dy = diff.y * (thickness * 0.5f);
|
||||||
@ -9241,7 +9241,7 @@ void ImDrawList::AddConvexPolyFilled(const ImVec2* points, const int points_coun
|
|||||||
const ImVec2& p0 = points[i0];
|
const ImVec2& p0 = points[i0];
|
||||||
const ImVec2& p1 = points[i1];
|
const ImVec2& p1 = points[i1];
|
||||||
ImVec2 diff = p1 - p0;
|
ImVec2 diff = p1 - p0;
|
||||||
diff *= ImInvLengthSqr(diff, 1.0f);
|
diff *= ImInvLength(diff, 1.0f);
|
||||||
temp_normals[i0].x = diff.y;
|
temp_normals[i0].x = diff.y;
|
||||||
temp_normals[i0].y = -diff.x;
|
temp_normals[i0].y = -diff.x;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user