internal IfcPolyline(DatabaseIfc db, Polyline pl)
: base(db)
{
List<IfcCartesianPoint> points = new List<IfcCartesianPoint>(pl.Count);
if (pl.IsClosed)
{
int ilast = pl.Count - 1;
for (int icounter = 0; icounter < ilast; icounter++)
points.Add(new IfcCartesianPoint(db, pl[icounter]));
points.Add(points[0]);
}
else
{
for (int icounter = 0; icounter < pl.Count; icounter++)
points.Add(new IfcCartesianPoint(db, pl[icounter]));
}
Points = points;
}