C#_weave component

I am trying to make star shape polyline using the points shown in the picture in c#.
Any help would be great!

attached image and script.

List<Point3d> Tpts = new List<Point3d>();
List<Point3d> midPts = new List<Point3d>();
List<Point3d> endPts = new List<Point3d>();
List<Point3d> strPts = new List<Point3d>();
List<Curve> star = new List<Curve>();

List<Curve> crvs = Polygon(2, 8, 22);
Curve cr = crvs[0];
List<Curve> cC = cr.DuplicateSegments().ToList();
Rhino.Geometry.AreaMassProperties cA = Rhino.Geometry.AreaMassProperties.Compute(cr);
Point3d centro = cA.Centroid;

foreach (Curve c in cC)
{
  Point3d p = c.PointAtNormalizedLength(0.5);
  Point3d p1 = c.PointAtEnd;
  Tpts.Add(p);
  endPts.Add(p1);
}

foreach(Point3d pt in endPts)
{
  Curve lines = new Line(centro, pt).ToNurbsCurve();
  Point3d mP = lines.PointAt(t);
  midPts.Add(mP);
}

//////////////////////////////////////////////////////
/* /???
for (int i = 0; i < Tpts.Count;i++)
{
strPts.Add(Tpts[i]);
strPts.Insert(i+2, midPts[i]);
}

Polyline allPls = new Polyline(strPts);

*/

weave%20pattern

You have one list of outer points and inner points.

Use modulor
if(i%2=0)
Mynewlist. Add(list1[i]
Else
Mynewlist.Add(list2[i])

So that each second iteration point would be added from another list

1 Like