示例#1
0
        public static bool SetISection(HndzISectionProfile Isection, HndzStructuralMaterial material)
        {
            SAPISection sapISection = default(SAPISection);

            sapISection.ConvertFromHndzIProfile(Isection, material);
            return(SAP2000API.SetISection(sapISection));
        }
示例#2
0
        public static bool DefineCustomMaterial(HndzStructuralMaterial material)
        {
            SAPMaterial sapMaterial = default(SAPMaterial);

            sapMaterial.ConvertFromHndzMaterial(material);
            return(SAP2000API.DefineCustomMaterial(sapMaterial));
        }
示例#3
0
        /// <summary>
        /// This function assumes that an IBuiltUpSection consists of a start and end section, further development to send an array of sections is recommended
        /// </summary>
        /// <param name="IBuiltUpSection"></param>
        /// <returns></returns>
        public static bool SetITaperedSection(HndzITaperedProfile profile, HndzStructuralMaterial material)
        {
            SAPITaperedSection section = new SAPITaperedSection();

            section.ConvertFromHndzTaperedI(profile, material);
            return(SAP2000API.SetITaperedSection(section));
        }
 public void ConvertFromHndzTaperedI(HndzITaperedProfile profile, HndzStructuralMaterial material)
 {
     Name       = profile.Name;
     Length     = 1;
     LengthType = LengthTypeEnum.Relative;
     StartSection.ConvertFromHndzIProfile(profile.StartProfile, material);
     EndSection.ConvertFromHndzIProfile(profile.EndProfile, material);
 }
        public HndzITaperedProfile ConvertToHndzTaperedI(ref HndzStructuralMaterial material)
        {
            HndzITaperedProfile profile = new HndzITaperedProfile();

            profile.Name         = Name;
            profile.StartProfile = StartSection.ConvertToHndzIProfile(ref material);
            profile.EndProfile   = EndSection.ConvertToHndzIProfile(ref material);
            return(profile);
        }
示例#6
0
        public static HndzISectionProfile GetISection(HndzISectionProfile profile, ref HndzStructuralMaterial material)
        {
            SAPISection section = new SAPISection();

            section.ConvertFromHndzIProfile(profile, material);
            section = SAP2000API.GetISection(section);
            HndzISectionProfile hndzProfile = new HndzISectionProfile();

            hndzProfile = section.ConvertToHndzIProfile(ref material);
            return(hndzProfile);
        }
示例#7
0
        public HndzISectionProfile ConvertToHndzIProfile(ref HndzStructuralMaterial material)
        {
            HndzISectionProfile profile = new HndzISectionProfile();

            profile.Name      = Name;
            profile.I_Section = new SectionI(Name, Height, TopFlangeWidth, BotFlangeWidth, TopFlangeThickness, BotFlangeThickness, WebThickness);


            material = WebMaterial.ConvertToHndzMaterial();
            //material = TopFlangeMaterial.ConvertToHndzMaterial();
            //material = BotFlangeMaterial.ConvertToHndzMaterial();

            return(profile);
        }
示例#8
0
        public SAPISection ConvertFromHndzIProfile(HndzISectionProfile Isection, HndzStructuralMaterial material)
        {
            SAPISection sapISection = new SAPISection();

            sapISection.Name               = Isection.Name;
            sapISection.BotFlangeWidth     = Isection.I_Section.b_fBot;
            sapISection.BotFlangeThickness = Isection.I_Section.t_fBot;
            sapISection.TopFlangeWidth     = Isection.I_Section.b_fTop;
            sapISection.TopFlangeThickness = Isection.I_Section.t_fTop;
            sapISection.WebThickness       = Isection.I_Section.t_w;

            sapISection.Height = Isection.I_Section.d;


            sapISection.BotFlangeMaterial.ConvertFromHndzMaterial(material);
            sapISection.WebMaterial.ConvertFromHndzMaterial(material);
            sapISection.TopFlangeMaterial.ConvertFromHndzMaterial(material);
            return(sapISection);
        }
示例#9
0
        public SAPMaterial ConvertFromHndzMaterial(HndzStructuralMaterial material)
        {
            SAPMaterial sapMaterial = null;

            switch (material.MatType)
            {
            case HndzMaterialType.Steel:
                HndzSteelMaterial matS = (HndzSteelMaterial)material;
                sapMaterial = new SAPSteelMaterial(matS.Name, matS.Weight, matS.ElasticityModulus, matS.PoissonRatio, matS.ThermalCoef, matS.Fy, matS.Fu, matS.eFy, matS.eFu);
                break;

            case HndzMaterialType.Concrete:
                //HndzConcreteMaterial matC = (HndzConcreteMaterial)material;
                //sapMaterial = new SAPConcreteMaterial(matS.Name, matS.Weight, matS.ElasticityModulus, matS.PoissonRatio, matS.ThermalCoef, matS.Fy, matS.Fu, matS.eFy, matS.eFu);
                //TODO
                throw new NotImplementedException();
                break;

            case HndzMaterialType.NoDesign:
                break;

            case HndzMaterialType.Aluminum:
                break;

            case HndzMaterialType.ColdFormed:
                break;

            case HndzMaterialType.Rebar:
                break;

            case HndzMaterialType.Tendon:
                break;

            case HndzMaterialType.Masonry:
                break;

            default:
                break;
            }

            return(sapMaterial);
        }
示例#10
0
        internal HndzStructuralMaterial ConvertToHndzMaterial()
        {
            HndzStructuralMaterial material = null;

            switch (material.MatType)
            {
            case HndzMaterialType.Steel:
                //TODO: cast from steel handaz to sap steel
                material = new HndzSteelMaterial(MatName, Weight, ElasticityModulus, PoissonRatio, ThermalCoef);
                break;

            case HndzMaterialType.Concrete:
                throw new NotImplementedException();
                break;

            case HndzMaterialType.NoDesign:
                break;

            case HndzMaterialType.Aluminum:
                break;

            case HndzMaterialType.ColdFormed:
                break;

            case HndzMaterialType.Rebar:
                break;

            case HndzMaterialType.Tendon:
                break;

            case HndzMaterialType.Masonry:
                break;

            default:
                break;
            }

            return(material);
        }