Example #1
0
        protected override void SolveInstance(IGH_DataAccess DA)
        {
            // --- Input

            var curves = new List <Curve>();
            var plane  = default(Plane?);

            DA.GetDataList(0, curves);
            DA.GetData(1, ref plane);


            // --- Execute

            var result = BBPolyline.Boolean(ClipType.ctUnion, PolyFillType.pftNonZero, curves, new Curve[0], plane);


            // --- Output

            DA.SetDataList(0, result);
        }
Example #2
0
        protected override void SolveInstance(IGH_DataAccess DA)
        {
            // --- Input

            var curvesA = new List <Curve>();
            var curvesB = new List <Curve>();
            var plane   = default(Plane?);

            DA.GetDataList(0, curvesA);
            DA.GetDataList(1, curvesB);
            DA.GetData(2, ref plane);


            // --- Execute

            var result = BBPolyline.Boolean(Operation, FillType, curvesA, curvesB, plane);


            // --- Output

            DA.SetDataList(0, result);
        }
        protected override void SolveInstance(IGH_DataAccess DA)
        {
            // --- Input

            var curves       = new List <Curve>();
            var distance     = default(double);
            var plane        = default(Plane?);
            var endTypeInt   = default(int);
            var joinTypeInt  = default(int);
            var miter        = default(double);
            var arcTolerance = default(double);

            DA.GetDataList(0, curves);
            DA.GetData(1, ref distance);
            DA.GetData(2, ref plane);
            DA.GetData(3, ref endTypeInt);
            DA.GetData(4, ref joinTypeInt);
            DA.GetData(5, ref miter);
            DA.GetData(6, ref arcTolerance);


            var joinType = default(JoinType);

            switch (endTypeInt)
            {
            default:
                joinType = JoinType.jtRound;
                break;

            case 1:
                joinType = JoinType.jtSquare;
                break;

            case 2:
                joinType = JoinType.jtMiter;
                break;
            }

            EndType endType;

            switch (endTypeInt)
            {
            default:
                endType = EndType.etOpenRound;
                break;

            case 1:
                endType = EndType.etOpenSquare;
                break;

            case 2:
                endType = EndType.etOpenButt;
                break;
            }


            // --- Execute

            var result = BBPolyline.Offset(curves, distance, joinType, endType, miter, arcTolerance, plane);


            // --- Output

            DA.SetDataList(0, result);
        }