OpenCV绘图的实作分析和总结.pdfVIP

  • 19
  • 0
  • 约2.23千字
  • 约 2页
  • 2021-12-04 发布于上海
  • 举报
OpenCV 绘图的实作 cvPolyLine() 函式的實作 #include cv.h #include highgui.h IplImage *Image1; CvPoint PointArray1[6]; CvScalar Color; int BlockNumber; int IsCycle; intThickness; intShift; CvFont Font1; int main() { CvSize ImageSize1 = cvSize(1000,700); Image1 = cvCreateImage(ImageSize1, IPL_DEPTH_8U, 3); CvPoint *PointArray[2]= {PointArray1[0],PointArray1[3]}; PointArray[0][0]=cvPoint(200,200); PointArray[0][1]=cvPoint(400,150); PointArray[0][2]=cvPoint(650,230); PointArray[1][0]=cvPoint(800,300); PointArray[1][1]=cvPoint(900,550); PointArray[1][2]=cvPoint(100,500); int PolyVertexNumber[1]={6}; BlockNumber=1; IsCycle=1; Color=CV_RGB(255,0,0); Thickness=3; Shift=0; cvPolyLine(Image1,PointArray,PolyVertexNumber,BlockNumber,IsCycle,Color,Thickness,CV_A A,Shift); cvInitFont(Font1,CV_FONT_HERSHEY_SIMPLEX,0.5,0.5,0.0,1,CV_AA ); cvPutText(Image1,1(200,200),PointArray[0][0],Font1,CV_RGB(255,0,0)); cvPutText(Image1,2(400,150),PointArray[0][1],Font1,CV_RGB(255,0,0)); cvPutText(Image1,3(650,230),PointArray[0][2],Font1,CV_RGB(255,0,0)); cvPutText(Image1,4(800,300),PointArray[1][0],Font1,CV_RGB(255,0,0)); cvPutText(Image1,5(900,550),PointArray[1][1],Font1,CV_RGB(255,0,0)); cvPutText(Image1,6(100,500),PointArray[1][2],Font1,CV_RGB(255,0,0)); cvNamedWindow(PolyLine,1); cvShowImage(PolyLine,Image1); cvWaitKey(0); } 執行結果 : (1) 原始結果 (2)IsCycle=0 (3)PointNumber[2]={3,3},BlockNumber=2,IsCycle=1 (4)PointNumber[2]={3,3},BlockNumber=2,IsCycle=0 (5)PointNumber[2]={3,3},BlockNumber=1,IsCycle=1 (6)PointNumber[2]={3,3},BlockNumber=1,IsCycle=0 跟前面的 cvFillPoly() 一樣 , 它也是需要用點集合二維陣列的 ,但這裡做了些些微的修 改 ,cvFillPoly() 是用一維陣列填入資料 ,實際上它也可以用二維陣列的方式 ,因為記憶體位址 都被連接在一起了 ,上面程式碼給它分兩群 ,而取多邊型要用的點集合的時候又給它合在一起 了,實際上

文档评论(0)

1亿VIP精品文档

相关文档