Тема: Создание длинного списка?

Необходимо создать список, содержащий координаты 100 точек. Я его составляю следующим образом:

    rb_rez = acutBuildList(RTLB, RT3DPOINT, ads_rez[0],
...........
...........
RT3DPOINT, ads_rez[i],
...........
...........
RT3DPOINT, ads_rez[98],RT3DPOINT, ads_rez[99],    RTLE, 0);

Можно ли его создать, используя цикл for, чтобы добавлять к списку по одной точке?

Re: Создание длинного списка?

Конечно можно! :) Тут и для массива координат заданных через ads_point и для массива координат заданных через AcGePoint3dArray (который IMHO значительно удобней):

resbuf *PointsToList(ads_point *pts, int nPts)
{
  resbuf *rbStart = acutBuildList(RTLB,RTNONE), *rb = rbStart;
  for (int i=0; i < nPoints; i++) {
    rb->rbnext = acutBuildList(RT3DPOINT,pts[i],RTNONE);
    rb = rb->rbnext;
  }
  rb->rbnext = acutBuildList(RTLE,RTNONE);
  return rbStart;
}
resbuf *PointsToList(AcGePoint3dArray &pts)
{
  resbuf *rbStart = acutBuildList(RTLB,RTNONE), *rb = rbStart;
  for (int i=0; i < pts.length(); i++) {
    rb->rbnext = acutBuildList(RT3DPOINT,asDblArray(pts[i]),RTNONE);
    rb = rb->rbnext;
  }
  rb->rbnext = acutBuildList(RTLE,RTNONE);
  return rbStart;
}

Re: Создание длинного списка?

Спасибо!