Voxeme.Save C# (CSharp) Method

Save() public method

public Save ( string path ) : void
path string
return void
    public void Save(string path)
    {
        XmlSerializer serializer = new XmlSerializer(typeof(Voxeme));
        using(var stream = new FileStream(path, FileMode.Create))
        {
            serializer.Serialize(stream, this);
        }
    }

Usage Example

Example #1
0
    void SaveMarkup(GameObject obj)
    {
        Voxeme voxml = new Voxeme ();

        // assign VoxML values
        // PRED
        voxml.Lex.Pred = mlPred;
        voxml.Lex.Type = System.String.Join("*",mlTypes.ToArray());

        // TYPE
        voxml.Type.Head = mlHead;
        for (int i = 0; i < mlComponentCount; i++) {
            voxml.Type.Components.Add (new Component());
            voxml.Type.Components[i].Value = mlComponents[i];
        }
        voxml.Type.Concavity = mlConcavity;

        List<string> rotatSyms = new List<string> ();
        if (mlRotatSymX) {
            rotatSyms.Add ("X");
        }
        if (mlRotatSymY) {
            rotatSyms.Add ("Y");
        }
        if (mlRotatSymZ) {
            rotatSyms.Add ("Z");
        }
        voxml.Type.RotatSym = System.String.Join(",", rotatSyms.ToArray());

        List<string> reflSyms = new List<string> ();
        if (mlReflSymXY) {
            reflSyms.Add ("XY");
        }
        if (mlReflSymXZ) {
            reflSyms.Add ("XZ");
        }
        if (mlReflSymYZ) {
            reflSyms.Add ("YZ");
        }
        voxml.Type.ReflSym = System.String.Join(",", reflSyms.ToArray());

        // HABITAT
        for (int i = 0; i < mlIntrHabitatCount; i++) {
            voxml.Habitat.Intrinsic.Add (new Intr());
            voxml.Habitat.Intrinsic[i].Name = mlIntrHabitats[i].Split(new char[]{'='})[0];
            voxml.Habitat.Intrinsic[i].Value = mlIntrHabitats[i].Split(new char[]{'='})[1];
        }
        for (int i = 0; i < mlExtrHabitatCount; i++) {
            voxml.Habitat.Extrinsic.Add (new Extr());
            voxml.Habitat.Extrinsic[i].Name = mlExtrHabitats[i].Split(new char[]{'='})[0];
            voxml.Habitat.Extrinsic[i].Value = mlExtrHabitats[i].Split(new char[]{'='})[1];
        }

        // AFFORD_STR
        for (int i = 0; i < mlAffordanceCount; i++) {
            voxml.Afford_Str.Affordances.Add (new Affordance());
            voxml.Afford_Str.Affordances[i].Formula = mlAffordances[i];
        }

        // EMBODIMENT
        voxml.Embodiment.Scale = mlScale;
        voxml.Embodiment.Movable = mlMovable;

        voxml.Save (obj.name+".xml");
        //		voxml.SaveToServer (obj.name + ".xml");
    }