Пример #1
0
        private BeamCase GetDistributedLoadCase(LoadBeam load)
        {
            ISingleLoadCaseBeam           beamForceCase      = null;
            ISingleLoadCaseDeflectionBeam beamDeflectionCase = null;
            BeamCase beamCase = null;

            if (load is LoadDistributedUniform)
            {
                LoadDistributedUniform   cl = load as LoadDistributedUniform;
                UniformlyDistributedLoad b  = new UniformlyDistributedLoad(beam, cl.Value); //4B.1
                beamForceCase      = b;
                beamDeflectionCase = b;
                return(new BeamCase(beamForceCase, beamDeflectionCase));
            }

            if (load is LoadDistributedGeneral) //4C.1
            {
                LoadDistributedGeneral cl = load as LoadDistributedGeneral;

                UniformPartialLoad b = new UniformPartialLoad(beam, cl.Value, cl.XLocationStart,
                                                              cl.XLocationEnd - cl.XLocationStart);
                beamForceCase      = b;
                beamDeflectionCase = null;

                return(new BeamCase(beamForceCase, beamDeflectionCase));
            }
            return(beamCase);
        }
Пример #2
0
        public ISingleLoadCaseDeflectionBeam GetDeflectionCase(LoadBeam load, IAnalysisBeam beam)
        {
            BeamCase bc = GetCase(load, beam);

            if (bc.DeflectionCase == null)
            {
                throw new Exception(CaseNotSupportedExceptionText);
            }
            return(bc.DeflectionCase);
        }
        public BeamCase GetCase(LoadBeam load, IAnalysisBeam beam)
        {
            this.beam = beam as BeamSimpleWithOverhang;
            BeamCase BeamLoadCase = null;

            if (load is LoadConcentrated)
            {
                BeamLoadCase = GetConcentratedLoadCase(load);
            }
            else if (load is LoadDistributed)
            {
                BeamLoadCase = GetDistributedLoadCase(load);
            }

            return(BeamLoadCase);
        }
Пример #4
0
        private BeamCase GetCase(LoadBeam load, IAnalysisBeam beam)
        {
            this.beam = beam as BeamFixedFixed;
            BeamCase BeamLoadCase = null;

            if (load is LoadConcentrated)
            {
                BeamLoadCase = GetConcentratedLoadCase(load);
            }
            else if (load is LoadDistributed)
            {
                BeamLoadCase = GetDistributedLoadCase(load);
            }
            else if (load is LoadMoment)
            {
                BeamLoadCase = GetMomentLoadCase(load);
            }

            return(BeamLoadCase);
        }
Пример #5
0
        private BeamCase GetConcentratedLoadCase(LoadBeam load)
        {
            ISingleLoadCaseBeam           beamForceCase      = null;
            ISingleLoadCaseDeflectionBeam beamDeflectionCase = null;

            BeamCase beamCase = null;

            if (load is LoadConcentratedSpecial) //4A.1
            {
                LoadConcentratedSpecial  cl = load as LoadConcentratedSpecial;
                ConcentratedLoadAtCenter b  = new ConcentratedLoadAtCenter(beam, cl.P);
                beamForceCase      = b;
                beamDeflectionCase = b;
            }
            if (load is LoadConcentratedGeneral) //4A.2
            {
                LoadConcentratedGeneral  cl = load as LoadConcentratedGeneral;
                ConcentratedLoadAnyPoint b  = new ConcentratedLoadAnyPoint(beam, cl.P, cl.XLocation);
                beamForceCase      = b;
                beamDeflectionCase = b;
            }
            return(new BeamCase(beamForceCase, beamDeflectionCase));
        }
Пример #6
0
        public ISingleLoadCaseBeam GetForceCase(LoadBeam load, IAnalysisBeam beam)
        {
            BeamCase bc = GetCase(load, beam);

            return(bc.ForceCase);
        }