Example #1
0
        private List <Cell.CellFace> generateFaces(Cell.CellFace cf)
        {
            List <Cell.CellFace>        faces  = new List <Cell.CellFace>();
            Dictionary <FaceNoSC, bool> closed = new Dictionary <FaceNoSC, bool>();

            faces.Add(cf);
            closed.Add(cf.f, false);
            generateFaces(cf, faces, closed);

            return(faces);
        }
Example #2
0
        private void generateFaces(Cell.CellFace cf, List <Cell.CellFace> result, Dictionary <FaceNoSC, bool> closed)
        {
            closed[cf.f] = true;

            Cell.CellFace[] faces = cf.c.getSameSurfaceAdjacentFaces(cf.f);
            foreach (var nf in faces)
            {
                if (!closed.ContainsKey(nf.f))
                {
                    result.Add(nf);
                    closed.Add(nf.f, false);
                    generateFaces(nf, result, closed);
                }
            }
        }