C# GHA Outputting a list of points

Hello,

me again - slowly learning C# + GHA.
Im struggling to understand how to get a list of points to leave the component. I can get a single point to be exported using GH_ParamAccess.list. And i’ve written other components that export a list of meshes. For some reason it doesn’t want to export Rhino.Geometry.Point3d’s or Grasshopper.Kernel.Types.GH_Point’s

Any tips?

    protected override void RegisterOutputParams(GH_OutputParamManager parameter_manager)
    {
        parameter_manager.AddPointParameter("Planes", "P", "Resulting Planes", GH_ParamAccess.list);
    }

protected override void SolveInstance(IGH_DataAccess data_access)
{

    Rhino.Geometry.Curve polyline_curve = null;;

    if (!data_access.GetData(0, ref polyline_curve)) { return; }
    

    Rhino.Geometry.NurbsCurve polyline_NURBS_curve = polyline_curve.ToNurbsCurve();

    List<Rhino.Geometry.Point3d> points = new List<Rhino.Geometry.Point3d>();

    for (int i = 0; i < polyline_NURBS_curve.Points.Count; i++) {
        points.Add(polyline_NURBS_curve.Points[i].Location);
    }

    List<Grasshopper.Kernel.Types.GH_Point> GH_points = new List<Grasshopper.Kernel.Types.GH_Point>();

    for (int i = 0; i < polyline_NURBS_curve.Points.Count; i++)
    {
        GH_points.Add(new Grasshopper.Kernel.Types.GH_Point(points[i]));
    }

    data_access.SetData(0, GH_points);

}

}
}

it should be

DA.SetDataList(0, GH_points);

instead of

DA.SetData(0, GH_points);

2 Likes

You are a scholar! Thanks so much!