Создание контура из точек

Однажды мне понадобилось создать контур из точек, но к сожалению обычно добавление к последовательности cvSeqPush здесь не сработало. После некоторого использования Google решение было найдено, привожу его, дабы другие не тратили время на подобные вещи:
CvPoint * Points;  
Points = new CvPoint[<Количество элементов>]; 
...Заполнение точек
CvContour contour;   
CvSeqBlock contour_block;  
cvMakeSeqHeaderForArray(CV_SEQ_POLYGON, sizeof(CvContour),sizeof(CvPoint),
                        Points, <Количество элементов>, (CvSeq*)&contour, &contour_block); 
CvSeq* seq = (CvSeq*)&contour;

После это с seq можно работать как с обычным контуром.