Пример #1
0
        private static int GetIndexOfClosestColoredVertex(Mesh mesh, Point3f position)
        {
            (int index, double distance)searchResult = (-1, float.PositiveInfinity);
            for (var i = 0; i < mesh.Vertices.Count; i++)
            {
                //skip vertices with no color
                if (mesh.VertexColors[i].A == 0)
                {
                    continue;
                }

                var distance = position.DistanceTo(mesh.Vertices[i]);
                if (distance < searchResult.distance)
                {
                    searchResult = (i, distance);
                }
            }
            return(searchResult.index);
        }