public void GetPropertiesComponentTest() { // ensure model has been opened: if (TestModel == null) { OpenComponentTest(); } // create the component var comp = new GhSA.Components.GetProperties(); comp.CreateAttributes(); // input parameter GsaModelGoo modelGoo = new GsaModelGoo(TestModel); Component.SetInput(comp, modelGoo); //pManager.AddGenericParameter("Sections", "PB", "Section Properties from GSA Model", GH_ParamAccess.list); //pManager.AddGenericParameter("2D Properties", "PA", "2D Properties from GSA Model", GH_ParamAccess.list); //pManager.AddGenericParameter("Springs", "PS", "Spring Properties from GSA Model", GH_ParamAccess.list); // get output GsaSectionGoo output = (GsaSectionGoo)Component.GetOutput(comp, 0); GsaSection sect = new GsaSection(); Assert.IsTrue(output.CastTo(ref sect)); Assert.AreEqual(1, sect.ID); //Assert.AreEqual("CAT UB UB457x191x89", sect.Section.Profile); }
public void OpenComponentTest() { // create the component var comp = new GhSA.Components.OpenModel(); comp.CreateAttributes(); // input parameter // set filename to be openend string file = GhSA.Util.Gsa.InstallationFolderPath.GetPath + "\\Samples\\Steel\\Steel_Design_Simple.gwb"; Component.SetInput(comp, file); // Get output from component GsaModelGoo output = (GsaModelGoo)Component.GetOutput(comp); // cast from -goo to Gsa-GH data type GsaModel model = new GsaModel(); output.CastTo(ref model); Assert.AreEqual(file, model.FileName); Assert.IsNotNull(model.GUID); // set testmodel to be used by other tests TestModel = model; }
public void GetAnalysisComponentTest() { // ensure model has been opened: if (TestModel == null) { OpenComponentTest(); } // create the component var comp = new GhSA.Components.GetAnalysis(); comp.CreateAttributes(); // input parameter GsaModelGoo modelGoo = new GsaModelGoo(TestModel); Component.SetInput(comp, modelGoo); //pManager.AddGenericParameter("Analysis Tasks", "Tasks", "List of analysis tasks in model", GH_ParamAccess.list); //pManager.AddGenericParameter("Analysis Case Names", "Name", "Analysis case name", GH_ParamAccess.list); //pManager.AddGenericParameter("Load Case/Combination ID", "LC", "Load cases and combinations list", GH_ParamAccess.list); //pManager.AddGenericParameter("Analysis Case Description", "Desc", "Analysis case description", GH_ParamAccess.list); // get output var output0 = Component.GetOutput(comp, 0); var output10 = Component.GetOutput(comp, 1, 0, 0); var output11 = Component.GetOutput(comp, 1, 0, 1); var output20 = Component.GetOutput(comp, 2, 0, 0); var output21 = Component.GetOutput(comp, 2, 0, 1); var output30 = Component.GetOutput(comp, 3, 0, 0); var output31 = Component.GetOutput(comp, 3, 0, 1); Assert.AreEqual("Task 1", output0.ToString()); Assert.AreEqual("DL", output10.ToString()); Assert.AreEqual("LL", output11.ToString()); Assert.AreEqual("1", output20.ToString()); Assert.AreEqual("2", output21.ToString()); Assert.AreEqual("L1", output30.ToString()); Assert.AreEqual("L2", output31.ToString()); }
public void GetLoadsComponentTest() { // ensure model has been opened: if (TestModel == null) { OpenComponentTest(); } // create the component var comp = new GhSA.Components.GetLoads(); comp.CreateAttributes(); // input parameter GsaModelGoo modelGoo = new GsaModelGoo(TestModel); Component.SetInput(comp, modelGoo); //pManager.AddGenericParameter("Gravity Loads", "Grav", "Gravity Loads from GSA Model", GH_ParamAccess.list); //pManager.AddGenericParameter("Node Loads", "Node", "Node Loads from GSA Model", GH_ParamAccess.list); //pManager.AddGenericParameter("Beam Loads", "Beam", "Beam Loads from GSA Model", GH_ParamAccess.list); //pManager.AddGenericParameter("Face Loads", "Face", "Face Loads from GSA Model", GH_ParamAccess.list); //pManager.AddGenericParameter("Grid Point Loads", "Point", "Grid Point Loads from GSA Model", GH_ParamAccess.list); //pManager.AddGenericParameter("Grid Line Loads", "Line", "Grid Line Loads from GSA Model", GH_ParamAccess.list); //pManager.AddGenericParameter("Grid Area Loads", "Area", "Grid Area Loads from GSA Model", GH_ParamAccess.list); //pManager.AddGenericParameter("Grid Plane Surfaces", "GPS", "Grid Plane Surfaces from GSA Model", GH_ParamAccess.list); // get output GsaLoadGoo output20 = (GsaLoadGoo)Component.GetOutput(comp, 2, 0, 0); GsaLoadGoo output21 = (GsaLoadGoo)Component.GetOutput(comp, 2, 0, 1); GsaLoad load1 = output20.Value; GsaLoad load2 = output21.Value; Assert.AreEqual(-10000, load1.BeamLoad.BeamLoad.Value(0)); Assert.AreEqual(BeamLoadType.UNIFORM.ToString(), load1.BeamLoad.BeamLoad.Type.ToString()); Assert.AreEqual(-30000, load2.BeamLoad.BeamLoad.Value(0)); Assert.AreEqual(BeamLoadType.POINT.ToString(), load2.BeamLoad.BeamLoad.Type.ToString()); }
public void GetGeometryComponentTest() { Assert.IsTrue(Rhino.RhinoApp.IsLicenseValidated, "Rhino must be licensed to run this test"); // ensure model has been opened: if (TestModel == null) { OpenComponentTest(); } // create the component var comp = new GhSA.Components.GetGeometry(); comp.CreateAttributes(); // input parameter GsaModelGoo modelGoo = new GsaModelGoo(TestModel); Component.SetInput(comp, modelGoo); // Get output from component GsaNodeGoo output00 = (GsaNodeGoo)Component.GetOutput(comp, 0, 0, 0); GsaNodeGoo output01 = (GsaNodeGoo)Component.GetOutput(comp, 0, 0, 1); GsaElement1dGoo output1 = (GsaElement1dGoo)Component.GetOutput(comp, 1); GsaMember1dGoo output3 = (GsaMember1dGoo)Component.GetOutput(comp, 4); //pManager.AddGenericParameter("Nodes", "No", "Nodes from GSA Model", GH_ParamAccess.list); //pManager.AddGenericParameter("1D Elements", "E1D", "1D Elements (Analysis Layer) from GSA Model", GH_ParamAccess.list); //pManager.AddGenericParameter("2D Elements", "E2D", "2D Elements (Analysis Layer) from GSA Model", GH_ParamAccess.list); //pManager.AddGenericParameter("3D Elements", "E3D", "3D Elements (Analysis Layer) from GSA Model", GH_ParamAccess.list); //pManager.AddGenericParameter("1D Members", "M1D", "1D Members (Design Layer) from GSA Model", GH_ParamAccess.list); //pManager.AddGenericParameter("2D Members", "M2D", "2D Members (Design Layer) from GSA Model", GH_ParamAccess.list); //pManager.AddGenericParameter("3D Members", "M3D", "3D Members (Design Layer) from GSA Model", GH_ParamAccess.list); // cast from -goo to Gsa-GH data type GsaNode node1 = new GsaNode(); GsaNode node2 = new GsaNode(); output00.CastTo(ref node1); output01.CastTo(ref node2); GsaElement1d elem = new GsaElement1d(); output1.CastTo(ref elem); GsaMember1d mem = new GsaMember1d(); output3.CastTo(ref mem); // test nodes are correct Assert.AreEqual(1, node1.ID); Assert.AreEqual(0, node1.Point.X, 1E-9); Assert.AreEqual(0, node1.Point.Y, 1E-9); Assert.AreEqual(0, node1.Point.Z, 1E-9); Assert.AreEqual(2, node2.ID); Assert.AreEqual(7.5, node2.Point.X, 1E-9); Assert.AreEqual(0, node2.Point.Y, 1E-9); Assert.AreEqual(0, node2.Point.Z, 1E-9); Assert.IsTrue(node1.Node.Restraint.X); Assert.IsTrue(node1.Node.Restraint.Y); Assert.IsTrue(node1.Node.Restraint.Z); Assert.IsTrue(node1.Node.Restraint.XX); Assert.IsFalse(node1.Node.Restraint.YY); Assert.IsFalse(node1.Node.Restraint.ZZ); Assert.IsFalse(node2.Node.Restraint.X); Assert.IsTrue(node2.Node.Restraint.Y); Assert.IsTrue(node2.Node.Restraint.Z); Assert.IsFalse(node2.Node.Restraint.XX); Assert.IsFalse(node2.Node.Restraint.YY); Assert.IsFalse(node2.Node.Restraint.ZZ); // test element and member Assert.AreEqual(1, elem.ID); Assert.AreEqual(0, elem.Line.PointAtStart.X, 1E-9); Assert.AreEqual(0, elem.Line.PointAtStart.Y, 1E-9); Assert.AreEqual(0, elem.Line.PointAtStart.Z, 1E-9); Assert.AreEqual(7.5, elem.Line.PointAtEnd.X, 1E-9); Assert.AreEqual(0, elem.Line.PointAtEnd.Y, 1E-9); Assert.AreEqual(0, elem.Line.PointAtEnd.Z, 1E-9); //Assert.AreEqual("CAT UB UB457x191x89", elem.Section.Section.Profile.Substring(0, 19)); Assert.AreEqual(1, mem.ID); Assert.AreEqual(0, mem.PolyCurve.PointAtStart.X, 1E-9); Assert.AreEqual(0, mem.PolyCurve.PointAtStart.Y, 1E-9); Assert.AreEqual(0, mem.PolyCurve.PointAtStart.Z, 1E-9); Assert.AreEqual(7.5, mem.PolyCurve.PointAtEnd.X, 1E-9); Assert.AreEqual(0, mem.PolyCurve.PointAtEnd.Y, 1E-9); Assert.AreEqual(0, mem.PolyCurve.PointAtEnd.Z, 1E-9); }