BEPUphysics.DataStructures.TriangleMesh.RayCast C# (CSharp) Метод

RayCast() публичный Метод

Tests a ray against the triangle mesh.
public RayCast ( Ray ray, float maximumLength, TriangleSidedness sidedness, RayHit &rayHit ) : bool
ray Ray Ray to test against the mesh.
maximumLength float Maximum length of the ray in units of the ray direction's length.
sidedness TriangleSidedness Sidedness to apply to the mesh for the ray cast.
rayHit BEPUutilities.RayHit Hit data for the ray, if any.
Результат bool
        public bool RayCast(Ray ray, float maximumLength, TriangleSidedness sidedness, out RayHit rayHit)
        {
            var rayHits = CommonResources.GetRayHitList();
            bool toReturn = RayCast(ray, maximumLength, sidedness, rayHits);
            if (toReturn)
            {
                rayHit = rayHits[0];
                for (int i = 1; i < rayHits.Count; i++)
                {
                    RayHit hit = rayHits[i];
                    if (hit.T < rayHit.T)
                        rayHit = hit;
                }
            }
            else
                rayHit = new RayHit();
            CommonResources.GiveBack(rayHits);
            return toReturn;
        }

Same methods

TriangleMesh::RayCast ( Ray ray, IList hits ) : bool
TriangleMesh::RayCast ( Ray ray, RayHit &rayHit ) : bool
TriangleMesh::RayCast ( Ray ray, TriangleSidedness sidedness, IList hits ) : bool
TriangleMesh::RayCast ( Ray ray, TriangleSidedness sidedness, RayHit &rayHit ) : bool
TriangleMesh::RayCast ( Ray ray, float maximumLength, IList hits ) : bool
TriangleMesh::RayCast ( Ray ray, float maximumLength, RayHit &rayHit ) : bool
TriangleMesh::RayCast ( Ray ray, float maximumLength, TriangleSidedness sidedness, IList hits ) : bool
TriangleMesh::RayCast ( Ray ray, int &hitCount ) : bool