Beispiel #1
0
        public static TimeSpan SerializeToGWA()
        {
            var           sw  = new Stopwatch();
            ModelDocument doc = new ModelDocument();

            doc.Model.Create.LinearElement(new Line(0, 0, 10, 0));
            doc.Model.Create.LinearElement(new Line(0, 10, 10, 0));
            doc.Model.Create.LinearElement(new Line(0, 0, -10, 0));
            doc.Model.GenerateNodes(new NodeGenerationParameters());
            doc.Model.Add(new LinearElementSet(doc.Model.Elements));
            doc.Model.Add(new NodeSet(doc.Model.Nodes));

            var format = new GWAFormat();

            Core.Print(format.ToString());
            format.Save("C:\\TEMP\\GWAFormat.txt");
            var context    = new GWAContext();
            var serialiser = new ModelDocumentTextSerialiser(format, context);

            sw.Start();
            Core.Print(serialiser.Serialize(doc));
            sw.Stop();

            Core.Print(context.IDMap.ToCSV());

            return(sw.Elapsed);
        }
Beispiel #2
0
 public override bool Execute(ExecutionInfo exInfo = null)
 {
     Result = false;
     if (FilePath.IsValid && Write)
     {
         Print("Writing GWA File... ");
         Document.Model.GenerateNodes(new NodeGenerationParameters(false));
         var serialiser = new ModelDocumentTextSerialiser(new GWAFormat(), new GWAContext());
         serialiser.CustomHeader = "! This file was originally written by Salamander 3 on " + DateTime.Now;
         Result = Document.SaveAs(FilePath, serialiser);
         if (Result)
         {
             PrintLine("File saved to '" + FilePath + "'.");
         }
         else
         {
             PrintLine("Writing failed!");
         }
     }
     return(true);
 }