Esempio n. 1
0
    /// <summary>
    /// Gives the every group that going to explode ın explosion types.
    /// </summary>
    /// <returns>The every group that going to explode ın explosion types.</returns>
    static List <IndexGroup> giveEveryGroupThatGoingToExplodeInExplosionTypes()
    {
        List <IndexGroup> explodingGroups = new List <IndexGroup> ();

        if (explodeTypesToUse.Count > 0)
        {
            explodingGroups.AddRange(explodeTypesToUse [0].GiveEveryGroupThatGoingToExplode());
        }
        for (int i = 1; i < explodeTypesToUse.Count; i++)
        {
            List <IndexGroup> temp = explodeTypesToUse [i].GiveEveryGroupThatGoingToExplode();
            for (int x = 0; x < temp.Count; x++)
            {
                if (explodingGroups.Exists(y => y.IsListTrianglesHaveAOneOrMoreSameElement(temp [x])))
                {
                    IndexGroup rf = explodingGroups [explodingGroups.FindIndex(y => y.IsListTrianglesHaveAOneOrMoreSameElement(temp [x]))];
                    rf = rf.MergeGroupsToOneBiggerWithNoRepeatignElement(temp [x]);
                }
                else
                {
                    explodingGroups.Add(temp [x]);
                }
            }
        }
        return(explodingGroups);
    }