2 using System.Collections.Generic;
10 public class MqxReader
13 //todo: rename to MqoPath
14 public string MqoFile;
18 return Path.ChangeExtension(MqoFile, ".mqx");
22 public MqoBone[] bones;
27 XmlReader reader = XmlReader.Create(GetMqxPath());
30 reader.ReadStartElement("MetasequoiaDocument");
32 reader.ReadStartElement("IncludedBy");
33 string mqo_file = reader.ReadString();
34 Console.WriteLine(mqo_file);
35 reader.ReadEndElement();//IncludedBy
37 reader.ReadStartElement("Plugin.56A31D20.71F282AB");
38 reader.ReadStartElement("BoneSet");
40 bones = new MqoBone[len];
42 while (reader.IsStartElement("Bone"))
44 MqoBone bone = new MqoBone();
46 this.bones[i++] = bone;
48 reader.ReadEndElement();//BoneSet
50 while (reader.IsStartElement("Obj"))
52 Console.WriteLine("Obj");
53 Console.WriteLine(" id:{0}", reader.GetAttribute("id"));
57 while (reader.IsStartElement("Poses"))
59 Console.WriteLine("Poses");
60 Console.WriteLine(" isExist:{0}", reader.GetAttribute("isExist"));
61 bool empty = reader.IsEmptyElement;
65 while (reader.IsStartElement("Pose"))
67 Console.WriteLine("Pose");
68 Console.WriteLine(" id:{0}", reader.GetAttribute("id"));
71 reader.ReadEndElement();//Poses
73 reader.ReadEndElement();//Plugin.56A31D20.71F282AB
74 reader.ReadEndElement();//MetasequoiaDocument