Exemple #1
0
        public TRIFile(TRIFile file)
        {
            this.header = new TRIHeader(file.header);

            this.vertices = new List<VertexPosition>();
            foreach (VertexPosition data in file.vertices)
            {
                this.vertices.Add(data);
            }

            if (this.header.ModVertexCount > 0)
            {
                this.modVertices = new List<VertexPosition>();
                foreach (VertexPosition data in file.modVertices)
                {
                    this.modVertices.Add(data);
                }
            }

            this.triFaces = new List<TriangleFace>();
            foreach (TriangleFace face in file.triFaces)
            {
                this.triFaces.Add(face);
            }

            this.quadFaces = new List<QuadFace>();
            foreach (QuadFace face in file.quadFaces)
            {
                this.quadFaces.Add(face);
            }

            this.uvVertices = new List<UvVertexPosition>();
            foreach (UvVertexPosition vert in file.uvVertices)
            {
                this.uvVertices.Add(vert);
            }

            this.uvTriFaces = new List<UvTriangleFace>();
            foreach (UvTriangleFace uvFace in file.uvTriFaces)
            {
                this.uvTriFaces.Add(uvFace);
            }

            this.morphs = new List<TRIMorphData>();
            foreach (TRIMorphData morph in file.morphs)
            {
                this.morphs.Add(new TRIMorphData(morph));
            }

            if (file.header.ModifierCount > 0)
            {
                this.modifiers = new List<TRIModifierData>();
                foreach (TRIModifierData mod in file.modifiers)
                {
                    this.modifiers.Add(new TRIModifierData(mod));
                }
            }
        }
Exemple #2
0
 public TRIFile()
 {
     this.header = new TRIHeader();
     this.vertices = new List<VertexPosition>();
     this.modVertices = new List<VertexPosition>();
     this.triFaces = new List<TriangleFace>();
     this.quadFaces = new List<QuadFace>();
     this.uvVertices = new List<UvVertexPosition>();
     this.uvTriFaces = new List<UvTriangleFace>();
     this.morphs = new List<TRIMorphData>();
     this.modifiers = new List<TRIModifierData>();
 }
Exemple #3
0
        public TRIFile(FileStream stream)
        {
            BinaryReader reader = new BinaryReader(stream);
            this.header = new TRIHeader(reader);

            this.vertices = new List<VertexPosition>();
            for (int i = 0; i < this.header.VertexCount; i++)
            {
                this.vertices.Add(new VertexPosition(reader));
            }

            if (this.header.ModVertexCount > 0)
            {
                this.modVertices = new List<VertexPosition>();
                for (int i = 0; i < this.header.ModVertexCount; i++)
                {
                    this.modVertices.Add(new VertexPosition(reader));
                }
            }

            this.triFaces = new List<TriangleFace>();
            for (int i = 0; i < this.header.PolytriCount; i++)
                this.triFaces.Add(new TriangleFace(reader));

            this.quadFaces = new List<QuadFace>();
            for (int i = 0; i < this.header.PolyQuadCount; i++)
                this.quadFaces.Add(new QuadFace(reader));

            this.uvVertices = new List<UvVertexPosition>();
            for (int i = 0; i < this.header.UvVerticeCount; i++)
            {
                this.uvVertices.Add(new UvVertexPosition(reader));
            }

            this.uvTriFaces = new List<UvTriangleFace>();
            for (int i = 0; i < this.header.PolytriCount; i++)
            {
                this.uvTriFaces.Add(new UvTriangleFace(reader));
            }

            this.morphs = new List<TRIMorphData>();
            for (int i = 0; i < this.header.MorphCount; i++)
            {
                this.morphs.Add(new TRIMorphData(reader, this.header.VertexCount));
            }

            if (this.header.ModifierCount > 0)
            {
                this.modifiers = new List<TRIModifierData>();
                for (int i = 0; i < this.header.ModifierCount; i++)
                    this.modifiers.Add(new TRIModifierData(reader));
            }
        }