Canguro.Model.Serializer.Deserializer.readModalCase C# (CSharp) 메소드

readModalCase() 개인적인 메소드

private readModalCase ( XmlNode node ) : void
node XmlNode
리턴 void
        private void readModalCase(XmlNode node)
        {
            string name = readAttribute(node, "Case", "").Trim();
            name = (name.Length > 0) ? name : Culture.Get("Case");

            AnalysisCase aCase = null;
            foreach (AnalysisCase ac in model.AbstractCases)
                if (name.Equals(ac.Name))
                {
                    aCase = ac;
                    break;
                }

            if (aCase != null)
            {
                ModalCaseProps mcp = aCase.Properties as ModalCaseProps;
                if (mcp == null)
                {
                    mcp = new ModalCaseProps();
                    aCase.Properties = mcp;
                }
                mcp.ModesType = ModalCaseProps.ModesMethod.RitzVectors;

                List<ModalCaseFactor> list = mcp.Loads;

                bool isAccel = readAttribute(node, "LoadType", "Accel").Equals("Accel"); // else "Load Case"
                AnalysisCaseAppliedLoad load = null;
                if (isAccel)
                {
                    string tmp = readAttribute(node, "LoadName", "Accel ").Substring(6);
                    load = new AccelLoad((AccelLoad.AccelLoadValues)Enum.Parse(typeof(AccelLoad.AccelLoadValues), tmp));
                }
                else
                {
                    load = model.LoadCases[readAttribute(node, "LoadName", ((LoadCase)load).Name)];
                }
                ModalCaseFactor f = Contains(list, load);
                if (f == null)
                {
                    f = new ModalCaseFactor(load);
                    list.Add(f);
                }
                f.Cycles = int.Parse(readAttribute(node, "MaxCycles", f.Cycles.ToString()));
                f.Ratio = float.Parse(readAttribute(node, "TargetPar", f.Ratio.ToString()));
                mcp.Loads = list;
            }
        }
Deserializer