Example #1
0
 protected void WriteBeamAndControlPoints(PlanSetup plan, XmlWriter writer, MLCSelector mlc)
 {
     writer.WriteStartElement("BeamAndControlPoints");
     foreach (var beam in plan.Beams)
     {
         writer.WriteStartElement("Beam");
         beam.WriteXml(writer);
         // ... and controlpoints
         writer.WriteStartElement("ControlPoints");
         beam.ControlPoints.WriteXml(writer);
         foreach (var controlPoint in beam.ControlPoints)
         {
             writer.WriteStartElement("ControlPoint");
             controlPoint.WriteXml(writer);
             if (mlc == MLCSelector.IncludeMLC)
             {
                 float[,] lp = controlPoint.LeafPositions;
                 if (lp.Length > 1)
                 {
                     writer.WriteStartElement("LeafPositions");
                     for (int i = 0; i <= lp.GetUpperBound(0); i++)
                     {
                         writer.WriteStartElement("Bank");
                         writer.WriteAttributeString("number", i.ToString());
                         for (int j = 0; j <= lp.GetUpperBound(1); j++)
                         {
                             float f = lp[i, j];
                             writer.WriteString(f.ToString() + " ");
                         }
                         writer.WriteEndElement(); //</Bank>
                     }
                     writer.WriteEndElement();     //</LeafPositions>
                 }
             }
             writer.WriteEndElement(); //</ControlPoint>
         }
         writer.WriteEndElement();     //</ControlPoints>
         writer.WriteEndElement();     // </Beam>
     }
     writer.WriteEndElement();         // </BeamAndControlPoints>
 }
Example #2
0
        public void WritePlanXML(PlanSetup plan, XmlWriter writer, CtrlPtSelector writeCtrlPts = CtrlPtSelector.NoControlPoints, MLCSelector mlc = MLCSelector.NoMLC)
        {
            Course course = plan.Course;

            writer.WriteStartElement("Courses");
            writer.WriteStartElement("Course");
            writer.WriteAttributeString("Id", course.Id);
            writer.WriteAttributeString("Name", course.Name);
            writer.WriteAttributeString("Comment", course.Comment);
            writer.WriteElementString("StartDateTime", course.StartDateTime.ToString());
            writer.WriteStartElement("PlanSetups");
            writer.WriteStartElement("PlanSetup");
            plan.WriteXml(writer);
            if (writeCtrlPts == CtrlPtSelector.IncludeControlPoints)
            {
                WriteBeamAndControlPoints(plan, writer, mlc);
            }
            writer.WriteEndElement(); // </PlanSetup>
            writer.WriteEndElement(); // </PlanSetups>
            writer.WriteEndElement(); // </Course>
            writer.WriteEndElement(); // </Courses>
        }