refactor RcVec3f.IsFinite

This commit is contained in:
ikpil 2023-10-27 00:01:52 +09:00
parent 9a62fbf9f4
commit 93b6b52b8f
2 changed files with 18 additions and 18 deletions

View File

@ -225,7 +225,7 @@ namespace DotRecast.Core.Numerics
/// @return True if all of the point's components are finite, i.e. not NaN
/// or any of the infinities.
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static bool IsFinite(RcVec3f v)
public static bool IsFinite(this RcVec3f v)
{
return float.IsFinite(v.X) && float.IsFinite(v.Y) && float.IsFinite(v.Z);
}
@ -233,7 +233,7 @@ namespace DotRecast.Core.Numerics
/// Checks that the specified vector's 2D components are finite.
/// @param[in] v A point. [(x, y, z)]
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static bool IsFinite2D(RcVec3f v)
public static bool IsFinite2D(this RcVec3f v)
{
return float.IsFinite(v.X) && float.IsFinite(v.Z);
}
@ -259,7 +259,7 @@ namespace DotRecast.Core.Numerics
verts[v1 + 2] + (verts[v2 + 2] - verts[v1 + 2]) * t
);
}
/// Performs a scaled vector addition. (@p v1 + (@p v2 * @p s))
/// @param[out] dest The result vector. [(x, y, z)]
/// @param[in] v1 The base vector. [(x, y, z)]

View File

@ -205,7 +205,7 @@ namespace DotRecast.Detour
randomPt = centerPos;
// Validate input
if (!m_nav.IsValidPolyRef(startRef) || !RcVecUtils.IsFinite(centerPos) || maxRadius < 0
if (!m_nav.IsValidPolyRef(startRef) || !centerPos.IsFinite() || maxRadius < 0
|| !float.IsFinite(maxRadius) || null == filter || null == frand)
{
return DtStatus.DT_FAILURE | DtStatus.DT_INVALID_PARAM;
@ -406,7 +406,7 @@ namespace DotRecast.Detour
closest = pos;
posOverPoly = false;
if (!m_nav.IsValidPolyRef(refs) || !RcVecUtils.IsFinite(pos))
if (!m_nav.IsValidPolyRef(refs) || !pos.IsFinite())
{
return DtStatus.DT_FAILURE | DtStatus.DT_INVALID_PARAM;
}
@ -441,7 +441,7 @@ namespace DotRecast.Detour
return DtStatus.DT_FAILURE | DtStatus.DT_INVALID_PARAM;
}
if (tile == null || !RcVecUtils.IsFinite(pos))
if (tile == null || !pos.IsFinite())
{
return DtStatus.DT_FAILURE | DtStatus.DT_INVALID_PARAM;
}
@ -502,7 +502,7 @@ namespace DotRecast.Detour
return DtStatus.DT_FAILURE | DtStatus.DT_INVALID_PARAM;
}
if (!RcVecUtils.IsFinite2D(pos))
if (!pos.IsFinite2D())
{
return DtStatus.DT_FAILURE | DtStatus.DT_INVALID_PARAM;
}
@ -673,7 +673,7 @@ namespace DotRecast.Detour
*/
public DtStatus QueryPolygons(RcVec3f center, RcVec3f halfExtents, IDtQueryFilter filter, IDtPolyQuery query)
{
if (!RcVecUtils.IsFinite(center) || !RcVecUtils.IsFinite(halfExtents) || null == filter)
if (!center.IsFinite() || !halfExtents.IsFinite() || null == filter)
{
return DtStatus.DT_INVALID_PARAM;
}
@ -694,7 +694,7 @@ namespace DotRecast.Detour
*/
public IList<DtMeshTile> QueryTiles(RcVec3f center, RcVec3f halfExtents)
{
if (!RcVecUtils.IsFinite(center) || !RcVecUtils.IsFinite(halfExtents))
if (!center.IsFinite() || !halfExtents.IsFinite())
{
return RcImmutableArray<DtMeshTile>.Empty;
}
@ -744,7 +744,7 @@ namespace DotRecast.Detour
path.Clear();
// Validate input
if (!m_nav.IsValidPolyRef(startRef) || !m_nav.IsValidPolyRef(endRef) || !RcVecUtils.IsFinite(startPos) || !RcVecUtils.IsFinite(endPos) || null == filter)
if (!m_nav.IsValidPolyRef(startRef) || !m_nav.IsValidPolyRef(endRef) || !startPos.IsFinite() || !endPos.IsFinite() || null == filter)
{
return DtStatus.DT_FAILURE | DtStatus.DT_INVALID_PARAM;
}
@ -1020,7 +1020,7 @@ namespace DotRecast.Detour
m_query.raycastLimitSqr = RcMath.Sqr(raycastLimit);
// Validate input
if (!m_nav.IsValidPolyRef(startRef) || !m_nav.IsValidPolyRef(endRef) || !RcVecUtils.IsFinite(startPos) || !RcVecUtils.IsFinite(endPos) || null == filter)
if (!m_nav.IsValidPolyRef(startRef) || !m_nav.IsValidPolyRef(endRef) || !startPos.IsFinite() || !endPos.IsFinite() || null == filter)
{
return DtStatus.DT_INVALID_PARAM;
}
@ -1514,7 +1514,7 @@ namespace DotRecast.Detour
ref List<DtStraightPath> straightPath,
int maxStraightPath, int options)
{
if (!RcVecUtils.IsFinite(startPos) || !RcVecUtils.IsFinite(endPos) || null == straightPath
if (!startPos.IsFinite() || !endPos.IsFinite() || null == straightPath
|| null == path || 0 == path.Count || path[0] == 0 || maxStraightPath <= 0)
{
return DtStatus.DT_FAILURE | DtStatus.DT_INVALID_PARAM;
@ -1779,8 +1779,8 @@ namespace DotRecast.Detour
visited.Clear();
// Validate input
if (!m_nav.IsValidPolyRef(startRef) || !RcVecUtils.IsFinite(startPos)
|| !RcVecUtils.IsFinite(endPos) || null == filter)
if (!m_nav.IsValidPolyRef(startRef) || !startPos.IsFinite()
|| !endPos.IsFinite() || null == filter)
{
return DtStatus.DT_FAILURE | DtStatus.DT_INVALID_PARAM;
}
@ -2165,7 +2165,7 @@ namespace DotRecast.Detour
hit = null;
// Validate input
if (!m_nav.IsValidPolyRef(startRef) || !RcVecUtils.IsFinite(startPos) || !RcVecUtils.IsFinite(endPos)
if (!m_nav.IsValidPolyRef(startRef) || !startPos.IsFinite() || !endPos.IsFinite()
|| null == filter || (prevRef != 0 && !m_nav.IsValidPolyRef(prevRef)))
{
return DtStatus.DT_FAILURE | DtStatus.DT_INVALID_PARAM;
@ -2434,7 +2434,7 @@ namespace DotRecast.Detour
}
// Validate input
if (!m_nav.IsValidPolyRef(startRef) || !RcVecUtils.IsFinite(centerPos) || radius < 0
if (!m_nav.IsValidPolyRef(startRef) || !centerPos.IsFinite() || radius < 0
|| !float.IsFinite(radius) || null == filter)
{
return DtStatus.DT_FAILURE | DtStatus.DT_INVALID_PARAM;
@ -2777,7 +2777,7 @@ namespace DotRecast.Detour
ref List<long> resultRef, ref List<long> resultParent)
{
// Validate input
if (!m_nav.IsValidPolyRef(startRef) || !RcVecUtils.IsFinite(centerPos) || radius < 0
if (!m_nav.IsValidPolyRef(startRef) || !centerPos.IsFinite() || radius < 0
|| !float.IsFinite(radius) || null == filter
|| null == resultRef || null == resultParent)
{
@ -3109,7 +3109,7 @@ namespace DotRecast.Detour
hitNormal = RcVec3f.Zero;
// Validate input
if (!m_nav.IsValidPolyRef(startRef) || !RcVecUtils.IsFinite(centerPos) || maxRadius < 0
if (!m_nav.IsValidPolyRef(startRef) || !centerPos.IsFinite() || maxRadius < 0
|| !float.IsFinite(maxRadius) || null == filter)
{
return DtStatus.DT_FAILURE | DtStatus.DT_INVALID_PARAM;