Пример #1
0
        List <PointLoad> IDiscretizableLoad <Vault> .ToProjectedPointLoads(Vault structure)
        {
            double loc = ClosestValue(Loc.X, (structure as IDiscretizableStructure2D).MidSegmentX);

            var res = new List <PointLoad>();

            foreach (var axis in new UnitVector3D[] { XAxis, ZAxis })
            {
                if (Abs(Force.DotProduct(axis)) > Prec)
                {
                    res.Add(
                        new VaultPointLoad(
                            new Point3D(loc, 0, structure.F(loc)),
                            Force.ProjectOn(axis))
                        );
                }
            }
            return(res);
        }