예제 #1
0
        static IXEP_EmdElement FindReinforcementElement(IXEP_EmdElement elem4Work, int sectionID)
        {
            IXEP_EmdElement reinfElem = elem4Work;

            if (elem4Work.Name == XEP_EmdFileConstants.s_FakeRootElementName)
            { // more sections
                List <IXEP_EmdElement> sections    = XEP_BaseEmdFile.GetElements(elem4Work, XEP_EmdNames.s_KeySection);
                IXEP_EmdElement        needSection = sections.Where(item => item.GetAttribute(XEP_EmdNames.s_KeyID).GetIntValue() == sectionID).First();
                IXEP_EmdAttribute      attID       = needSection.GetAttribute(XEP_EmdNames.s_KeyID);
                if (attID == null)
                {
                    throw new InvalidOperationException("Section in reinforcement file does not have attribute: " + XEP_EmdNames.s_KeyID);
                }
                if (attID.Value != sectionID.ToString())
                {
                    throw new InvalidOperationException("Section ID attribute is not equals section ID inputed, actual:" + attID.Value + " wanted: " + sectionID.ToString());
                }
                reinfElem = XEP_BaseEmdFile.GetElement(needSection, XEP_EmdNames.s_KeyReinforcement);
            }
            if (reinfElem == null)
            {
                throw new InvalidOperationException("There is not reinforcemnt element for sectionID: " + sectionID.ToString());
            }
            XEP_BaseEmdFile.CheckName(reinfElem.Name, XEP_EmdNames.s_KeyReinforcement);
            return(reinfElem);
        }
예제 #2
0
        static IXEP_EmdElement FindReinforcementElement4StirrupZones(IXEP_EmdElement elem4Work)
        {
            IXEP_EmdElement reinfElem = elem4Work;

            if (elem4Work.Name == XEP_EmdFileConstants.s_FakeRootElementName)
            { // more sections
                reinfElem = XEP_BaseEmdFile.GetElement(elem4Work, XEP_EmdNames.s_KeyReinforcement);
            }
            if (reinfElem == null)
            {
                throw new InvalidOperationException("There is not reinforcemnt element for stirrups !");
            }
            XEP_BaseEmdFile.CheckName(reinfElem.Name, XEP_EmdNames.s_KeyReinforcement);
            return(reinfElem);
        }