/***************************************************/ /**** Private method - Extraction methods ****/ /***************************************************/ private List <PierForce> GetPierForce(IList ids = null) { List <PierForce> pierForces = new List <PierForce>(); string[] loadcaseNames = null; int numberResults = 0; string[] storyName = null; string[] pierName = null; string[] location = null; double[] p = null; double[] v2 = null; double[] v3 = null; double[] t = null; double[] m2 = null; double[] m3 = null; int ret = m_model.Results.PierForce(ref numberResults, ref storyName, ref pierName, ref loadcaseNames, ref location, ref p, ref v2, ref v3, ref t, ref m2, ref m3); if (ret == 0) { for (int j = 0; j < numberResults; j++) { int position = 0; if (location[j].ToUpper().Contains("BOTTOM")) { position = 1; } PierForce pf = new PierForce(pierName[j], loadcaseNames[j], storyName[j], 0, 0, position, 2, p[j], v2[j], v3[j], t[j], m2[j], m3[j]); pierForces.Add(pf); } } return(pierForces); }
public static List<PierForce> GetPierForce(cSapModel model, IList ids = null, IList cases = null, int divisions = 5) { List<string> loadcaseIds = new List<string>(); List<string> barIds = new List<string>(); List<PierForce> pierForces = new List<PierForce>(); loadcaseIds = CheckAndGetCases(model, cases); string[] loadcaseNames = null; int numberResults = 0; string[] storyName = null; string[] pierName = null; string[] location = null; double[] p = null; double[] v2 = null; double[] v3 = null; double[] t = null; double[] m2 = null; double[] m3 = null; model.Results.Setup.DeselectAllCasesAndCombosForOutput(); for (int loadcase = 0; loadcase < loadcaseIds.Count; loadcase++) { if (model.Results.Setup.SetCaseSelectedForOutput(loadcaseIds[loadcase]) != 0) { model.Results.Setup.SetComboSelectedForOutput(loadcaseIds[loadcase]); } } int ret = model.Results.PierForce(ref numberResults, ref storyName, ref pierName, ref loadcaseNames, ref location, ref p, ref v2, ref v3, ref t, ref m2, ref m3); if (ret == 0) { for (int j = 0; j < numberResults; j++) { int position = 0; if (location[j].ToUpper().Contains("BOTTOM")) { position = 1; } PierForce bf = new PierForce() { ResultCase = loadcaseNames[j], ObjectId = pierName[j], MX = t[j], MY = m2[j], MZ = m3[j], FX = p[j], FY = v2[j], FZ = v3[j], //Divisions = divisions, Position = position, // TimeStep = stepNum[j] }; bf.Location = storyName[j]; pierForces.Add(bf); } } return pierForces; }