public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            // Input
            var inGH = new GH_RFEM();

            if (!DA.GetData(0, ref inGH))
            {
                return;
            }
            var rfPolyLoad = (RFFreePolygonLoad)inGH.Value;

            // Output
            DA.SetData(0, rfPolyLoad.No);
            DA.SetData(1, rfPolyLoad.LoadCase);
            DA.SetData(2, rfPolyLoad.Comment);
            DA.SetDataList(3, rfPolyLoad.Polygon);
            DA.SetData(4, rfPolyLoad.Magnitude1);
            DA.SetData(5, rfPolyLoad.Magnitude2);
            DA.SetData(6, rfPolyLoad.Magnitude3);
            DA.SetData(7, rfPolyLoad.SurfaceList);
            DA.SetData(8, rfPolyLoad.CornerPointList);
            DA.SetData(9, rfPolyLoad.Position);
            DA.SetData(10, rfPolyLoad.Node1No);
            DA.SetData(11, rfPolyLoad.Node2No);
            DA.SetData(12, rfPolyLoad.Node3No);
            DA.SetData(13, rfPolyLoad.ProjectionType);
            DA.SetData(14, rfPolyLoad.LoadDirType);
            DA.SetData(15, rfPolyLoad.LoadDistType);
        }
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            // Input
            var inGH = new GH_RFEM();

            if (!DA.GetData(0, ref inGH))
            {
                return;
            }
            var rFCroSec = (RFCroSec)inGH.Value;

            // Output
            DA.SetData(0, rFCroSec.Description);
            DA.SetData(1, rFCroSec.No);
            DA.SetData(2, rFCroSec.Comment);
            DA.SetData(3, rFCroSec.MatNo);
            DA.SetData(4, rFCroSec.A);
            DA.SetData(5, rFCroSec.Ay);
            DA.SetData(6, rFCroSec.Az);
            DA.SetData(7, rFCroSec.Iy);
            DA.SetData(8, rFCroSec.Iz);
            DA.SetData(9, rFCroSec.Jt);
            DA.SetData(10, rFCroSec.RotationAngle);
            DA.SetData(11, rFCroSec.TempWidth);
            DA.SetData(12, rFCroSec.TempDepth);
            DA.SetData(13, rFCroSec.TextID);
            DA.SetData(14, rFCroSec.UserDefined);
        }
コード例 #3
0
 ////////////////////////////////////////////////////////////////////////
 // Common way to Communicate messages.
 private void UniversalDebug(string message, GH_RuntimeMessageLevel messageType = GH_RuntimeMessageLevel.Remark)
 {
                 #if DEBUG
     DebugUtilities.UniversalDebug(this.sourceName, message, ref UIReceiver.debugMessages);
                 #endif
     this.AddRuntimeMessage(messageType, message);
 }
コード例 #4
0
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            // Input
            var inGH = new GH_RFEM();

            if (!DA.GetData(0, ref inGH))
            {
                return;
            }
            var rfNodalRelease = (RFNodalRelease)inGH.Value;

            // Output
            DA.SetData(0, rfNodalRelease.No);
            DA.SetData(1, rfNodalRelease.NodeNo);
            DA.SetData(2, rfNodalRelease.ReleasedMembers);
            DA.SetData(3, rfNodalRelease.ReleasedSurfaces);
            DA.SetData(4, rfNodalRelease.ReleasedSolids);
            DA.SetData(5, rfNodalRelease.MemberHingeNo);
            DA.SetData(6, rfNodalRelease.AxisSystemFromObjectNo);
            DA.SetData(7, rfNodalRelease.AxisSystem);
            DA.SetData(8, rfNodalRelease.Location);
            DA.SetData(9, rfNodalRelease.Comment);
        }
コード例 #5
0
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            // Input
            var inGH = new GH_RFEM();

            if (!DA.GetData(0, ref inGH))
            {
                return;
            }
            var rfLineLoad = (RFFreeLineLoad)inGH.Value;

            // Output
            DA.SetData(0, rfLineLoad.ToLine());
            DA.SetData(1, rfLineLoad.No);
            DA.SetData(2, rfLineLoad.LoadCase);
            DA.SetData(3, rfLineLoad.Comment);
            DA.SetData(4, rfLineLoad.Magnitude1);
            DA.SetData(5, rfLineLoad.Magnitude2);
            DA.SetData(6, rfLineLoad.SurfaceList);
            DA.SetData(7, rfLineLoad.LoadDirType);
            DA.SetData(8, rfLineLoad.LoadDistType);
            DA.SetData(9, rfLineLoad.ProjectionPlane);
        }
コード例 #6
0
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            //// Input
            //var inGH = new GH_RFEM();
            //if (!DA.GetData(0, ref inGH))
            //{
            //    return;
            //}
            ////var rfSurfaceLoad = (RFSurfaceLoad)inGH.Value;

            //// Output
            //DA.SetData(0, rfSurfaceLoad.SurfaceList);
            //DA.SetData(1, rfSurfaceLoad.No);
            //DA.SetData(2, rfSurfaceLoad.LoadCase);
            //DA.SetData(3, rfSurfaceLoad.Comment);
            //DA.SetData(4, rfSurfaceLoad.Magnitude1);
            //DA.SetData(5, rfSurfaceLoad.Magnitude2);
            //DA.SetData(6, rfSurfaceLoad.Magnitude3);
            //DA.SetData(7, rfSurfaceLoad.Magnitude4);
            //DA.SetData(8, rfSurfaceLoad.Magnitude5);
            //DA.SetData(9, rfSurfaceLoad.Magnitude6);
            //DA.SetData(10, rfSurfaceLoad.Node1No);
            //DA.SetData(11, rfSurfaceLoad.Node2No);
            //DA.SetData(12, rfSurfaceLoad.Node3No);
            //DA.SetData(13, rfSurfaceLoad.LoadType);
            //DA.SetData(14, rfSurfaceLoad.LoadDirType);
            //DA.SetData(15, rfSurfaceLoad.LoadDistType);
        }
コード例 #7
0
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            // Input
            var inGH = new GH_RFEM();

            if (!DA.GetData(0, ref inGH))
            {
                return;
            }
            var rfSupport = (RFSupportL)inGH.Value;

            // Output
            DA.SetDataList(0, rfSupport.BaseLines.Select(x => x.ToCurve()));
            DA.SetData(1, rfSupport.No);
            DA.SetData(2, ((rfSupport.Tx < 0) ? rfSupport.Tx * 1000 : rfSupport.Tx));
            DA.SetData(3, ((rfSupport.Ty < 0) ? rfSupport.Ty * 1000 : rfSupport.Ty));
            DA.SetData(4, ((rfSupport.Tz < 0) ? rfSupport.Tz * 1000 : rfSupport.Tz));
            DA.SetData(5, ((rfSupport.Rx < 0) ? rfSupport.Rx * 1000 : rfSupport.Rx));
            DA.SetData(6, ((rfSupport.Ry < 0) ? rfSupport.Ry * 1000 : rfSupport.Ry));
            DA.SetData(7, ((rfSupport.Rz < 0) ? rfSupport.Rz * 1000 : rfSupport.Rz));
            DA.SetData(8, rfSupport.Comment);
            DA.SetData(9, rfSupport.LineList);
            DA.SetData(10, rfSupport.RSType);
        }
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            //// Input
            //var inGH = new GH_RFEM();
            //if (!DA.GetData(0, ref inGH))
            //{
            //    return;
            //}
            //var rfSupport = (RFSupportP)inGH.Value;
            //// Output
            //DA.SetDataList(0, rfSupport.Orientation);
            //DA.SetData(1, rfSupport.No);
            //DA.SetData(2, ((rfSupport.Tx < 0) ? rfSupport.Tx * 1000 : rfSupport.Tx));
            //DA.SetData(3, ((rfSupport.Ty < 0) ? rfSupport.Ty * 1000 : rfSupport.Ty));
            //DA.SetData(4, ((rfSupport.Tz < 0) ? rfSupport.Tz * 1000 : rfSupport.Tz));
            //DA.SetData(5, ((rfSupport.Rx < 0) ? rfSupport.Rx * 1000 : rfSupport.Rx));
            //DA.SetData(6, ((rfSupport.Ry < 0) ? rfSupport.Ry * 1000 : rfSupport.Ry));
            //DA.SetData(7, ((rfSupport.Rz < 0) ? rfSupport.Rz * 1000 : rfSupport.Rz));
            //DA.SetData(8, rfSupport.Comment);
            //DA.SetData(9, rfSupport.NodeList);
            //DA.SetData(10, rfSupport.RSType);
            //DA.SetData(11, rfSupport.RSeq);
            //DA.SetData(12, new Vector3d(rfSupport.RotX.ToDegrees(),
            //    rfSupport.RotY.ToDegrees(), rfSupport.RotZ.ToDegrees()));
        }
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            // Input
            var inGH = new GH_RFEM();

            if (!DA.GetData(0, ref inGH))
            {
                return;
            }
            var rfSurface = (RFSurface)inGH.Value;

            // Output
            DA.SetData(0, rfSurface.ToBrep());
            DA.SetData(1, rfSurface.No);
            DA.SetData(2, rfSurface.MaterialNo);
            DA.SetData(3, rfSurface.Thickness);
            DA.SetData(4, rfSurface.Comment);
            DA.SetData(5, rfSurface.BoundaryLineList);
            DA.SetData(6, rfSurface.GeometryType);
            DA.SetData(7, rfSurface.ThicknessType);
            DA.SetData(8, rfSurface.StiffnessType);
            DA.SetData(9, rfSurface.Area);
        }
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            //// Input
            //var inGH = new GH_RFEM();
            //if (!DA.GetData(0, ref inGH))
            //{
            //    return;
            //}
            //var rFMember = (RFMember)inGH.Value;
            //// Output
            //DA.SetData(0, rFMember.BaseLine.ToCurve());
            //DA.SetData(1, rFMember.No);
            //DA.SetData(2, rFMember.Comment);
            //DA.SetData(3, rFMember.LineNo);
            //DA.SetData(4, rFMember.Type);
            //DA.SetData(5, rFMember.RotationAngle);
            //DA.SetData(6, rFMember.RotationType);
            //DA.SetData(7, rFMember.StartCrossSectionNo);
            //DA.SetData(8, rFMember.EndCrossSectionNo);
            //DA.SetData(9, rFMember.StartHingeNo);
            //DA.SetData(10, rFMember.EndHingeNo);
            //DA.SetData(11, rFMember.EccentricityNo);
            //DA.SetData(12, rFMember.DivisionNo);
            //DA.SetData(13, rFMember.TaperShape);
            //DA.SetData(14, rFMember.Weight);
        }
コード例 #11
0
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            // Input
            var inGH = new GH_RFEM();

            if (!DA.GetData(0, ref inGH))
            {
                return;
            }
            var rfSupport = (RFSupportS)inGH.Value;

            // Output
            if (!(rfSupport.BaseSrfcs == null))
            {
                DA.SetDataList(0, rfSupport.BaseSrfcs.Select(x => x.ToBrep()));
            }
            DA.SetData(1, rfSupport.No);
            DA.SetData(2, ((rfSupport.Tx < 0) ? rfSupport.Tx * 1000 : rfSupport.Tx));
            DA.SetData(3, ((rfSupport.Ty < 0) ? rfSupport.Ty * 1000 : rfSupport.Ty));
            DA.SetData(4, ((rfSupport.Tz < 0) ? rfSupport.Tz * 1000 : rfSupport.Tz));
            DA.SetData(5, ((rfSupport.Vxz < 0) ? rfSupport.Vxz * 1000 : rfSupport.Vxz));
            DA.SetData(6, ((rfSupport.Vyz < 0) ? rfSupport.Vyz * 1000 : rfSupport.Vyz));
            DA.SetData(7, rfSupport.Comment);
            DA.SetData(8, rfSupport.SurfaceList);
        }
コード例 #12
0
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            //// Input
            //var inGH = new GH_RFEM();
            //if (!DA.GetData(0, ref inGH))
            //{
            //    return;
            //}
            //var rfLineHinge = (RFLineHinge)inGH.Value;
            //// Output
            //DA.SetData(0, rfLineHinge.BaseLine.ToCurve());
            //DA.SetData(1, rfLineHinge.No);
            //DA.SetData(2, rfLineHinge.LineNo);
            //DA.SetData(3, rfLineHinge.SfcNo);
            //DA.SetData(4, ((rfLineHinge.Tx < 0) ? rfLineHinge.Tx * 1000 : rfLineHinge.Tx));
            //DA.SetData(5, ((rfLineHinge.Ty < 0) ? rfLineHinge.Ty * 1000 : rfLineHinge.Ty));
            //DA.SetData(6, ((rfLineHinge.Tz < 0) ? rfLineHinge.Tz * 1000 : rfLineHinge.Tz));
            //DA.SetData(7, ((rfLineHinge.Rx < 0) ? rfLineHinge.Rx * 1000 : rfLineHinge.Rx));
            //DA.SetData(8, ((rfLineHinge.Ry < 0) ? rfLineHinge.Ry * 1000 : rfLineHinge.Ry));
            //DA.SetData(9, ((rfLineHinge.Rz < 0) ? rfLineHinge.Rz * 1000 : rfLineHinge.Rz));
            //DA.SetData(10, rfLineHinge.Comment);
            //DA.SetData(11, rfLineHinge.Side);
        }
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            // Input
            var inGH = new GH_RFEM();

            if (!DA.GetData(0, ref inGH))
            {
                return;
            }
            var rfMat = (RFMaterial)inGH.Value;

            // Output
            DA.SetData(0, rfMat.Description);
            DA.SetData(1, rfMat.No);
            DA.SetData(2, rfMat.Comment);
            DA.SetData(3, rfMat.E);
            DA.SetData(4, rfMat.Mu);
            DA.SetData(5, rfMat.G);
            DA.SetData(6, rfMat.W);
            DA.SetData(7, rfMat.Alpha);
            DA.SetData(8, rfMat.Gamma);
            DA.SetData(9, rfMat.ModelType);
            DA.SetData(10, rfMat.TextID);
            DA.SetData(11, rfMat.UserDefined);
        }
コード例 #14
0
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Warning;

            var myFilter = new RFFilter();

            myFilter.Type = "Filter (Nodes)";
            var nodeList    = new List <string>();
            var commentList = new List <string>();
            var x           = new List <Interval>();
            var y           = new List <Interval>();
            var z           = new List <Interval>();
            var csys        = new List <string>();
            var noRef       = new List <string>();

            if (DA.GetDataList(0, nodeList))
            {
                var nodeListAll = new List <int>();
                foreach (var no in nodeList)
                {
                    nodeListAll.AddRange(no.ToInt());
                }
                myFilter.NodeList = nodeListAll;
            }
            if (DA.GetDataList(1, commentList))
            {
                myFilter.NodeComment = commentList;
            }
            if (DA.GetDataList(2, x))
            {
                myFilter.NodesX = x;
            }
            if (DA.GetDataList(3, y))
            {
                myFilter.NodesY = y;
            }
            if (DA.GetDataList(4, z))
            {
                myFilter.NodesZ = z;
            }
            if (DA.GetDataList(5, csys))
            {
                myFilter.NodeCS = csys;
            }
            if (DA.GetDataList(6, noRef))
            {
                var noRefAll = new List <int>();
                foreach (var no in noRef)
                {
                    noRefAll.AddRange(no.ToInt());
                }
                myFilter.NodeRef = noRefAll;
            }

            DA.SetData(0, myFilter);
        }
コード例 #15
0
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;
            var point   = new Point3d();
            var noIndex = 0;
            var comment = "";
            var rFNode  = new RFNode();
            var inRFEM  = new GH_RFEM();
            var mod     = false;
            var del     = false;
            //int newNo = 0;
            var dataprovided = false;

            if (DA.GetData(3, ref inRFEM))
            {
                rFNode       = new RFNode((RFNode)inRFEM.Value);
                dataprovided = true;
            }
            if (DA.GetData(0, ref point))
            {
                rFNode.RefObjectNo = 0;
                rFNode.X           = point.X;
                rFNode.Y           = point.Y;
                rFNode.Z           = point.Z;
                rFNode.Location    = point;
                dataprovided       = true;
            }
            if (!dataprovided)
            {
                msg   = "Insufficient input parameters. Provide either Input Point or existing RFNode Object. ";
                level = GH_RuntimeMessageLevel.Warning;
                return;
            }
            if (DA.GetData(1, ref noIndex))
            {
                rFNode.No = noIndex;
            }
            if (DA.GetData(4, ref mod))
            {
                rFNode.ToModify = mod;
                //if (!(rFNode.No>0))
                //{
                //    AddRuntimeMessage(GH_RuntimeMessageLevel.Warning, "Index nummer required in order to modify or delete RFEM objects.");
                //}
            }
            if (DA.GetData(5, ref del))
            {
                rFNode.ToDelete = del;
            }
            if (DA.GetData(2, ref comment))
            {
                rFNode.Comment = comment;
            }

            DA.SetData(0, rFNode);
        }
コード例 #16
0
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Warning;

            var myFilter = new RFFilter();

            myFilter.Type = "Filter (Line Hinges)";
            var hingeList   = new List <string>();
            var commentList = new List <string>();
            var tx          = new List <Interval>();
            var ty          = new List <Interval>();
            var tz          = new List <Interval>();
            var rx          = new List <Interval>();
            var ry          = new List <Interval>();
            var rz          = new List <Interval>();

            if (DA.GetDataList(0, hingeList))
            {
                var hingeListAll = new List <int>();
                foreach (var no in hingeList)
                {
                    hingeListAll.AddRange(no.ToInt());
                }
                myFilter.MHList = hingeListAll;
            }
            if (DA.GetDataList(1, commentList))
            {
                myFilter.MHComment = commentList;
            }
            if (DA.GetDataList(2, tx))
            {
                myFilter.MHTx = tx;
            }
            if (DA.GetDataList(3, ty))
            {
                myFilter.MHTy = ty;
            }
            if (DA.GetDataList(4, tz))
            {
                myFilter.MHTz = tz;
            }
            if (DA.GetDataList(5, rx))
            {
                myFilter.MHRx = rx;
            }
            if (DA.GetDataList(6, ry))
            {
                myFilter.MHRy = ry;
            }
            if (DA.GetDataList(7, rz))
            {
                myFilter.MHRz = rz;
            }
            DA.SetData(0, myFilter);
        }
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Warning;

            var myFilter = new RFFilter();

            myFilter.Type = "Filter (Load Cases)";
            var lcList          = new List <string>();
            var commentList     = new List <string>();
            var swx             = new List <Interval>();
            var swy             = new List <Interval>();
            var swz             = new List <Interval>();
            var descriptionList = new List <string>();
            var actionList      = new List <string>();
            var toSolveList     = new List <bool>();

            if (DA.GetDataList(0, lcList))
            {
                var lcListAll = new List <int>();
                foreach (var no in lcList)
                {
                    lcListAll.AddRange(no.ToInt());
                }
                myFilter.LCList = lcListAll;
            }
            if (DA.GetDataList(1, commentList))
            {
                myFilter.LCComment = commentList;
            }
            if (DA.GetDataList(2, descriptionList))
            {
                myFilter.LCDescription = descriptionList;
            }
            if (DA.GetDataList(3, actionList))
            {
                myFilter.LCAction = actionList;
            }
            if (DA.GetDataList(4, swx))
            {
                myFilter.LCSWX = swx;
            }
            if (DA.GetDataList(5, swy))
            {
                myFilter.LCSWY = swy;
            }
            if (DA.GetDataList(6, swz))
            {
                myFilter.LCSWZ = swz;
            }
            if (DA.GetDataList(7, toSolveList))
            {
                myFilter.LCToSolve = toSolveList;
            }
            DA.SetData(0, myFilter);
        }
コード例 #18
0
 public void AddGeometryRuntimeError(GH_RuntimeMessageLevel level, string text, Rhino.Geometry.GeometryBase geometry)
 {
     if (text is object)
     {
         AddRuntimeMessage(level, text);
     }
     if (geometry is object)
     {
         GeometryRuntimeErrors.Add(geometry);
     }
 }
コード例 #19
0
        /*******************************************/

        public override IList <string> RuntimeMessages(GH_RuntimeMessageLevel level)
        {
            //Make sure to extract both 'Remark' as well as 'Blank' messages when remarks are extracted.
            //This is because we are adding 'Blank' messages instead of 'Remarks' when there are any warnings/errors present
            //to make sure the component colouring is correct.
            //See more comments in the "Logging.cs" file.
            if (level == GH_RuntimeMessageLevel.Remark)
            {
                List <string> remarks = base.RuntimeMessages(level).ToList();
                remarks.AddRange(base.RuntimeMessages(GH_RuntimeMessageLevel.Blank));
                return(remarks);
            }
            return(base.RuntimeMessages(level));
        }
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Warning;

            var myFilter = new RFFilter();

            myFilter.Type = "Filter (Result Combos)";
            var lcList          = new List <string>();
            var commentList     = new List <string>();
            var descriptionList = new List <string>();
            var definitionList  = new List <string>();
            var designList      = new List <string>();
            var toSolveList     = new List <bool>();

            if (DA.GetDataList(0, lcList))
            {
                var lcListAll = new List <int>();
                foreach (var no in lcList)
                {
                    lcListAll.AddRange(no.ToInt());
                }
                myFilter.RCoList = lcListAll;
            }
            if (DA.GetDataList(1, commentList))
            {
                myFilter.RCoComment = commentList;
            }
            if (DA.GetDataList(2, definitionList))
            {
                myFilter.RCoDefinition = definitionList;
            }
            if (DA.GetDataList(3, descriptionList))
            {
                myFilter.RCoDescription = descriptionList;
            }
            if (DA.GetDataList(4, designList))
            {
                myFilter.RCoDesign = designList;
            }
            if (DA.GetDataList(5, toSolveList))
            {
                myFilter.RCoToSolve = toSolveList;
            }
            DA.SetData(0, myFilter);
        }
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            // Input
            var inGH = new GH_RFEM();

            if (!DA.GetData(0, ref inGH))
            {
                return;
            }
            var rfMemberLoad = (RFMemberLoad)inGH.Value;

            // Output
            DA.SetData(0, rfMemberLoad.MemberList);
            DA.SetData(1, rfMemberLoad.No);
            DA.SetData(2, rfMemberLoad.LoadCase);
            DA.SetData(3, rfMemberLoad.Comment);
            DA.SetData(4, rfMemberLoad.Magnitude1);
            DA.SetData(5, rfMemberLoad.Magnitude2);
            DA.SetData(6, rfMemberLoad.Magnitude3);
            DA.SetData(7, rfMemberLoad.Magnitude4);
            DA.SetData(8, rfMemberLoad.Magnitude5);
            DA.SetData(9, rfMemberLoad.Magnitude6);
            DA.SetData(10, rfMemberLoad.DistanceA);
            DA.SetData(11, rfMemberLoad.DistanceB);
            if (!(rfMemberLoad.LoadArray == null))
            {
                var distances = new List <double>();
                var forces    = new List <double>();
                for (int i = 0; i < rfMemberLoad.LoadArray.GetUpperBound(0); i++)
                {
                    forces.Add(rfMemberLoad.LoadArray[i, 1]);
                    distances.Add(rfMemberLoad.LoadArray[i, 0] / 100);
                }
                DA.SetDataList(12, forces);
                DA.SetDataList(13, distances);
            }
            DA.SetData(14, rfMemberLoad.LoadType);
            DA.SetData(15, rfMemberLoad.LoadDirType);
            DA.SetData(16, rfMemberLoad.LoadDistType);
            DA.SetData(17, rfMemberLoad.LoadRefType);
            DA.SetData(18, rfMemberLoad.OverTotalLength);
            DA.SetData(19, rfMemberLoad.RelativeDistances);
        }
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            //// Input
            //var inGH = new GH_RFEM();
            //if (!DA.GetData(0, ref inGH))
            //{
            //    return;
            //}
            //var rFNode = (RFNode)inGH.Value;
            //// Output
            //DA.SetData(0, rFNode.Location);
            //DA.SetData(1, rFNode.No);
            //DA.SetData(2, rFNode.Comment);
            //DA.SetData(3, rFNode.CS);
            //DA.SetData(4, rFNode.RefObjectNo);
        }
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            // Input
            var inGH = new GH_RFEM();

            if (!DA.GetData(0, ref inGH))
            {
                return;
            }
            var rFMember = (RFMember)inGH.Value;

            // Output
            DA.SetData(0, rFMember.BaseLine.ToCurve());
            DA.SetData(1, rFMember.No);
            DA.SetData(2, rFMember.Comment);
            DA.SetData(3, rFMember.LineNo);
            DA.SetData(4, rFMember.Type);
            DA.SetData(5, rFMember.RotationAngle);
            DA.SetData(6, rFMember.RotationType);
            DA.SetData(7, rFMember.StartCrossSectionNo);
            DA.SetData(8, rFMember.EndCrossSectionNo);
            DA.SetDataList(9, rFMember.Frames);
            DA.SetData(10, rFMember.StartHingeNo);
            DA.SetData(11, rFMember.EndHingeNo);
            DA.SetData(12, rFMember.EccentricityNo);
            DA.SetData(13, rFMember.DivisionNo);
            DA.SetData(14, rFMember.TaperShape);
            DA.SetData(15, rFMember.Kcry);
            DA.SetData(16, rFMember.Kcrz);
            DA.SetData(17, rFMember.Weight);
            DA.SetData(18, rFMember.ExceptMembers);
            DA.SetData(19, rFMember.ExceptSolids);
            DA.SetData(20, rFMember.ExceptSurfaces);
            DA.SetData(21, rFMember.IncludeMembers);
            DA.SetData(22, rFMember.IncludeSolids);
            DA.SetData(23, rFMember.IncludeSurfaces);
            DA.SetData(24, rFMember.Integrate);
            DA.SetDataList(25, rFMember.Parameters);
        }
コード例 #24
0
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            OnComponentLoaded();

            // Input
            var inGH     = new GH_RFEM();
            var inGH2    = new List <GH_RFEM>();
            var iMember  = new RFMember();
            var iCroSecs = new List <RFCroSec>();

            // Output
            var oExtrussion = new List <Brep>();

            // Register input parameters
            if (!DA.GetData(0, ref inGH))
            {
                return;
            }
            iMember = (RFMember)inGH.Value;
            if (!DA.GetDataList(1, inGH2))
            {
                return;
            }
            foreach (var cs in inGH2)
            {
                iCroSecs.Add((RFCroSec)cs.Value);
            }

            oExtrussion = Component_ExtrudeMembers.ExtrudeMembersToBrep(iMember, iCroSecs, length_segment, out msg);
            if (msg != "")
            {
                level = GH_RuntimeMessageLevel.Warning;
                return;
            }

            // Assign output
            DA.SetDataList(0, oExtrussion);
        }
コード例 #25
0
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            //// Input
            //var inGH = new GH_RFEM();
            //if (!DA.GetData(0, ref inGH))
            //{
            //    return;
            //}
            //var rfLoadCase = (RFLoadCase)inGH.Value;

            //// Output
            //DA.SetData(0, rfLoadCase.No);
            //DA.SetData(1, rfLoadCase.Description);
            //DA.SetData(2, rfLoadCase.ActionCategory);
            //DA.SetData(3, rfLoadCase.Comment);
            //DA.SetData(4, rfLoadCase.SelfWeightFactor);
            //DA.SetData(5, rfLoadCase.ToSolve);
        }
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            //// Input
            //var inGH = new GH_RFEM();
            //if (!DA.GetData(0, ref inGH))
            //{
            //    return;
            //}
            //var rfLoadCombo = (RFLoadCombo)inGH.Value;

            //// Output
            //DA.SetData(0, rfLoadCombo.No);
            //DA.SetData(1, rfLoadCombo.Definition);
            //DA.SetData(2, rfLoadCombo.Description);
            //DA.SetData(3, rfLoadCombo.DesignSituation);
            //DA.SetData(4, rfLoadCombo.Comment);
            //DA.SetData(5, rfLoadCombo.ToSolve);
        }
コード例 #27
0
        public void AddGeometryConversionError(GH_RuntimeMessageLevel level, string text, Rhino.Geometry.GeometryBase geometry)
        {
#if DEBUG
            switch (geometry)
            {
            case Rhino.Geometry.BrepVertex vertex:
                text = $"* {text}{Environment.NewLine}Vertex Index = {vertex.VertexIndex} Location = {vertex.Location * Revit.ModelUnits}.";
                break;

            case Rhino.Geometry.BrepEdge edge:
                text = $"◉ {text}{Environment.NewLine}Edge Index = {edge.EdgeIndex} Tolerance {edge.Tolerance * Revit.ModelUnits} Length = {edge.GetLength(edge.Domain) * Revit.ModelUnits}.";
                break;

            case Rhino.Geometry.BrepFace face:
                var mass = Rhino.Geometry.AreaMassProperties.Compute(face);
                text = $"◼ {text}{Environment.NewLine}Face Index = {face.FaceIndex} Surface Area = {mass?.Area * Revit.ModelUnits * Revit.ModelUnits}.";
                break;
            }
#endif
            AddGeometryRuntimeError(level, text, geometry?.InRhinoUnits());
        }
コード例 #28
0
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            //// Input
            //var inGH = new GH_RFEM();
            //if (!DA.GetData(0, ref inGH))
            //{
            //    return;
            //}
            //var rFLine = (RFLine)inGH.Value;
            //// Output
            //DA.SetData(0, rFLine.ToCurve());
            //DA.SetData(1, rFLine.No);
            //DA.SetData(2, rFLine.Comment);
            //DA.SetData(3, rFLine.NodeList);
            //DA.SetData(4, rFLine.Type);
            //DA.SetData(5, rFLine.RotationAngle);
            //DA.SetData(6, rFLine.RotationType);
        }
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            //// Input
            //var inGH = new GH_RFEM();
            //if (!DA.GetData(0, ref inGH))
            //{
            //    return;
            //}
            //var rfOpening = (RFOpening)inGH.Value;
            //// Output
            //if (rfOpening.IsPlanar())
            //{
            //    DA.SetData(0, rfOpening.ToPlanarBrep());
            //}
            //DA.SetData(1, rfOpening.No);
            //DA.SetData(2, rfOpening.InSurfaceNo);
            //DA.SetData(3, rfOpening.Comment);
            //DA.SetData(4, rfOpening.BoundaryLineList);
        }
コード例 #30
0
        public override void SolveInstance(IGH_DataAccess DA, out string msg, out GH_RuntimeMessageLevel level)
        {
            msg   = "";
            level = GH_RuntimeMessageLevel.Blank;

            //// Input
            //var inGH = new GH_RFEM();
            //if (!DA.GetData(0, ref inGH))
            //{
            //    return;
            //}
            //var rfNodalLoad = (RFNodalLoad)inGH.Value;

            //// Output
            //DA.SetDataList(0, rfNodalLoad.Location);
            //DA.SetData(1, rfNodalLoad.No);
            //DA.SetData(2, rfNodalLoad.LoadCase);
            //DA.SetData(3, rfNodalLoad.Force);
            //DA.SetData(4, rfNodalLoad.Moment);
            //DA.SetData(5, rfNodalLoad.Comment);
            //DA.SetData(6, rfNodalLoad.NodeList);
            //DA.SetData(7, rfNodalLoad.LoadDefType);
        }
コード例 #31
0
 public void AddRuntimeMessage(GH_RuntimeMessageLevel Type, string Message)
 {
     throw new NotImplementedException();
 }
コード例 #32
0
 public override void AddRuntimeMessage(GH_RuntimeMessageLevel level, string text)
 {
     base.AddRuntimeMessage(level, text);
 }
コード例 #33
0
 public IList<string> RuntimeMessages(GH_RuntimeMessageLevel level)
 {
     throw new NotImplementedException();
 }