mirror of
https://github.com/Drezil/imgui.git
synced 2024-12-18 06:06:35 +00:00
Merge branch 'podgorskiy-master'
This commit is contained in:
commit
a1a36e762e
@ -951,14 +951,13 @@ ImVec2 ImLineClosestPoint(const ImVec2& a, const ImVec2& b, const ImVec2& p)
|
|||||||
{
|
{
|
||||||
ImVec2 ap = p - a;
|
ImVec2 ap = p - a;
|
||||||
ImVec2 ab_dir = b - a;
|
ImVec2 ab_dir = b - a;
|
||||||
float ab_len = sqrtf(ab_dir.x * ab_dir.x + ab_dir.y * ab_dir.y);
|
|
||||||
ab_dir *= 1.0f / ab_len;
|
|
||||||
float dot = ap.x * ab_dir.x + ap.y * ab_dir.y;
|
float dot = ap.x * ab_dir.x + ap.y * ab_dir.y;
|
||||||
if (dot < 0.0f)
|
if (dot < 0.0f)
|
||||||
return a;
|
return a;
|
||||||
if (dot > ab_len)
|
float ab_len_sqr = ab_dir.x * ab_dir.x + ab_dir.y * ab_dir.y;
|
||||||
|
if (dot > ab_len_sqr)
|
||||||
return b;
|
return b;
|
||||||
return a + ab_dir * dot;
|
return a + ab_dir * dot / ab_len_sqr;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ImTriangleContainsPoint(const ImVec2& a, const ImVec2& b, const ImVec2& c, const ImVec2& p)
|
bool ImTriangleContainsPoint(const ImVec2& a, const ImVec2& b, const ImVec2& c, const ImVec2& p)
|
||||||
|
Loading…
Reference in New Issue
Block a user