protected override void SolveInstance(IGH_DataAccess DA) { // get input FemDesign.Bars.Bar bar = null; if (!DA.GetData(0, ref bar)) { return; } if (bar == null) { return; } // return DA.SetData(0, bar.Guid); DA.SetData(1, bar.GetRhinoCurve()); DA.SetData(2, bar.BarPart.ComplexMaterialObj); DA.SetDataList(3, bar.BarPart.ComplexSectionObj.Sections); DA.SetDataList(4, bar.BarPart.Connectivity); DA.SetDataList(5, bar.BarPart.ComplexSectionObj.Eccentricities); DA.SetData(6, bar.BarPart.LocalY.ToRhino()); DA.SetData(7, bar.Identifier); }
protected override void SolveInstance(IGH_DataAccess DA) { // get input FemDesign.Bars.Bar bar = null; if (!DA.GetData(0, ref bar)) { return; } if (bar == null) { return; } // The following code is to convert 'item' to 'list object' // It is required to construct the bar without graftening the data var guidList = new List <object>() { bar.Guid }; var curveList = new List <object>() { bar.GetRhinoCurve() }; var typeList = new List <object>() { bar.Type }; var materialList = new List <object>() { bar.BarPart.ComplexMaterialObj }; var localYList = new List <object>() { bar.BarPart.LocalY.ToRhino() }; // return DA.SetData(0, bar.Guid); DA.SetData(1, bar.GetRhinoCurve()); DA.SetData(2, bar.Type); DA.SetDataList(3, materialList); if (bar.BarPart.ComplexSectionObj != null) { DA.SetDataList(4, bar.BarPart.ComplexSectionObj.Sections); } else if (bar.BarPart.HasComplexCompositeRef || bar.BarPart.HasDeltaBeamComplexSectionRef) { AddRuntimeMessage(GH_RuntimeMessageLevel.Warning, "The bar has a Composite Section. The object has not been implemented yet. Please, get in touch if needed."); DA.SetDataList(4, null); } else if (bar.BarPart.Type == Bars.BarType.Truss) { var truss = new List <Sections.Section> { bar.BarPart.TrussUniformSectionObj }; DA.SetDataList(4, truss); } else { DA.SetDataList(4, null); } DA.SetDataList(5, bar.BarPart.Connectivity); var result = (bar.BarPart.ComplexSectionObj != null) ? bar.BarPart.ComplexSectionObj.Eccentricities : null; DA.SetDataList(6, result); DA.SetData(7, bar.BarPart.LocalY.ToRhino()); DA.SetDataList(8, bar.Stirrups); DA.SetDataList(9, bar.LongitudinalBars); DA.SetDataList(10, bar.Ptc); DA.SetData(11, bar.Identifier); }