public void Add(Point3d position, bool wrapped) { if (Count >= size) { structure.RemoveData(structure.get_FirstItem(false)); if (structure.get_Branch(0).Count == 0) { structure.RemovePath(new GH_Path(0)); } } IGH_Goo pt = new GH_Point(position); if (wrapped) { structure.Append(pt, new GH_Path(nextPathIndex)); nextPathIndex++; } else { structure.Append(pt, new GH_Path(nextPathIndex)); } }