예제 #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
        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;
        }