Ломаная линия MbPolyline3D
Класс MbPolyline3D объявлен в файле cur_polyline3d.h.
Ломаная является наследником кривой MbPolyCurve3D. Ломаная MbPolyline3D описывается количеством сегментов segmentsCount, множеством контрольных точек SArray<MbCartPoint3D> pointList и признаком периодичности кривой closed.
Кривая проходит через множество точек pointList[i], i = 0,…, segmentsCount, при значениях параметра t = 0,…, segmentsCount. Если closed = true, то кривая содержит сегмент, соединяющий последнюю точку множества pointList[segmentsCount - 1] с начальной точкой pointList[0]. Параметр кривой t принимает значения на отрезке: 0 ≤ t ≤ segmentsCount.
В методе PointOn( double & t, MbCartPoint3D & r ) радиус-вектор кривой r описывается векторной функцией
где
а ti ≤ t ≤ ti+1. Ломаная является простейшей кривой, построенной по набору точек. Она состоит из отрезков, последовательно соединяющих контрольные точки.
Ломаная приведена на рисунке:
Кривая может быть периодической. Период периодической кривой равен segmentsCount. Производные кривой в контрольных точках (при целочисленных значениях параметра) теряют непрерывность по длине и направлению. Производные кривой в контрольных точках имеют особое направление и длину. Ломаная обладает рядом полезных свойств: работа с ней требует минимум вычислений, проекция ломаной линии также будет ломаной линией.