HelixToolkit.Wpf.StudioReader.ReadFaceMaterials C# (CSharp) Method

ReadFaceMaterials() private method

Read face materials.
private ReadFaceMaterials ( BinaryReader reader, int msize ) : List
reader System.IO.BinaryReader /// The reader. ///
msize int /// The msize. ///
return List
        private List<FaceMaterial> ReadFaceMaterials(BinaryReader reader, int msize)
        {
            int total = 6;
            var list = new List<FaceMaterial>();
            while (total < msize)
            {
                var id = this.ReadChunkId(reader);
                int size = this.ReadChunkSize(reader);
                total += size;
                switch (id)
                {
                    case ChunkID.TRI_FACEMAT:
                        {
                            string name = this.ReadString(reader);
                            int n = reader.ReadUInt16();
                            var c = new Int32Collection();
                            for (int i = 0; i < n; i++)
                            {
                                c.Add(reader.ReadUInt16());
                            }

                            var fm = new FaceMaterial { Name = name, Faces = c };
                            list.Add(fm);
                            break;
                        }

                    case ChunkID.TRI_SMOOTH:
                        {
                            this.ReadData(reader, size - 6);
                            break;
                        }

                    default:
                        {
                            this.ReadData(reader, size - 6);
                            break;
                        }
                }
            }

            return list;
        }