예제 #1
0
        public static List <ICurve> Visualize(this PointAcceleration pointAcceleration, double scaleFactor = 1.0, bool displayTranslations = true, bool displayRotations = true, bool asResultants = true)
        {
            if (pointAcceleration.IsNull())
            {
                return(null);
            }

            List <ICurve> arrows = new List <ICurve>();

            Vector forceVec  = pointAcceleration.TranslationalAcceleration * scaleFactor * 1000;
            Vector momentVec = pointAcceleration.RotationalAcceleration * scaleFactor * 1000;

            foreach (Node node in pointAcceleration.Objects.Elements)
            {
                if (displayTranslations)
                {
                    arrows.AddRange(Arrows(node.Position, forceVec, true, asResultants));
                }
                if (displayRotations)
                {
                    arrows.AddRange(Arrows(node.Position, momentVec, false, asResultants));
                }
            }

            return(arrows);
        }
예제 #2
0
 public static LoadType LoadType(this PointAcceleration load)
 {
     return(oM.Structure.Loads.LoadType.PointAcceleration);
 }