Canguro.Commands.Model.CreateXMLCmd.writeLineDistributedForces C# (CSharp) Метод

writeLineDistributedForces() приватный Метод

private writeLineDistributedForces ( XmlTextWriter xml, LineElement obj ) : void
xml System.Xml.XmlTextWriter
obj Canguro.Model.LineElement
Результат void
        private void writeLineDistributedForces(XmlTextWriter xml, LineElement obj)
        {
            AssignedLoads loads = obj.Loads;
            if (loads != null) {
                Dictionary<string, LoadCase> cases = Canguro.Model.Model.Instance.LoadCases;
                foreach (LoadCase lCase in cases.Values) {
                    ItemList<Canguro.Model.Load.Load> list = loads[lCase];
                    if (list != null) {
                        foreach (Canguro.Model.Load.Load load in list) {
                            if (load != null) {
                                if (load is DirectionalLineLoad)
                                {
                                    string dir = ((DirectionalLineLoad)load).Direction.ToString();
                                    string dirFrame = "GLOBAL";
                                    if (((DirectionalLineLoad)load).Direction != LineLoad.LoadDirection.Gravity)
                                    {
                                        dirFrame = dir.Substring(0, dir.Length - 1).ToUpper();
                                        dir = dir.Substring(dir.Length - 1);
                                    }
                                    if (load is DistributedSpanLoad) {
                                        DistributedSpanLoad dist = (DistributedSpanLoad)load;
                                        xml.WriteStartElement("Frame");
                                        xml.WriteAttributeString("Frame", obj.Id.ToString());
                                        xml.WriteAttributeString("LoadCase", lCase.Name);
                                        xml.WriteAttributeString("CoordSys", dirFrame);
                                        xml.WriteAttributeString("Type", dist.Type.ToString());
                                        xml.WriteAttributeString("Dir", dir);
                                        xml.WriteAttributeString("DistType", "RelDist");
                                        xml.WriteAttributeString("RelDistA", dist.Da.ToString());
                                        xml.WriteAttributeString("RelDistB", dist.Db.ToString());
                                        xml.WriteAttributeString("AbsDistA", "0");
                                        xml.WriteAttributeString("AbsDistB","0");
                                        xml.WriteAttributeString("FOverLA", dist.LoadAInt.ToString());
                                        xml.WriteAttributeString("FOverLB", dist.LoadBInt.ToString());
                                        xml.WriteEndElement();
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }