コード例 #1
0
        private HbReferenceArray UnitsAndTranslation(HbReferenceArray hbReferenceArray)
        {
            HbReferenceArray hbReferenceArrayNew = new HbReferenceArray();

            foreach (HbReferencePoint hbReferencePoint in hbReferenceArray)
            {
                hbReferenceArrayNew.Add(UnitsAndTranslation(hbReferencePoint));
                if (this.ErrorMessage != "")
                {
                    return(null);
                }
            }
            return(hbReferenceArrayNew);
        }
コード例 #2
0
        public bool ProcessCurveByPoints(HbReferenceArray hbReferenceArray)
        {
            try {
                List <Point3d> points = new List <Point3d>();
                foreach (HbReferencePoint hbReferencePoint in hbReferenceArray)
                {
                    points.Add(new Point3d(hbReferencePoint.X, hbReferencePoint.Y, hbReferencePoint.Z));
                }
                Curve curve = NurbsCurve.Create(false, 3, points);

                // Add to outputs
                this.dataTreePoints.AddRange(points, new GH_Path(indexPoints));
                indexPoints++;
                this.dataTreeCurves.AddRange(new List <Curve> {
                    curve
                }, new GH_Path(indexCurves));
                indexCurves++;

                // Create geometry
                if (createGeometryPoints)
                {
                    foreach (Point3d point3d in points)
                    {
                        Rhino.RhinoDoc.ActiveDoc.Objects.AddPoint(point3d);
                    }
                }
                if (createGeometryCurves)
                {
                    Rhino.RhinoDoc.ActiveDoc.Objects.AddCurve(curve);
                }
                return(true);
            }
            catch {
                return(false);
            }
        }