繪制點和圓

void cvCircle( CvArr* img, CvPoint center, int radius, CvScalar color,               int thickness=1, int line_type=8, int shift=0 );
  • img:圖像。

  • center:圓心坐標(biāo)。

  • radius:圓形的半徑。

  • color:線條的顏色。

  • thickness:如果是正數(shù),表示組成圓的線條的粗細(xì)程度。否則,表示圓是否被填充。

  • line_type:線條的類型。見 cvLine 的描述

  • shift:圓心坐標(biāo)點和半徑值的小數(shù)點位數(shù)。

畫圓畫點都是使用circle()函數(shù)來畫,點就是圓,我們平常所說的圓只不過是半徑大一點而已。

#include "opencv2/highgui/highgui.hpp"#include "opencv2/imgproc/imgproc.hpp"#include <iostream>#include <stdio.h>using namespace std;using namespace cv;//畫圓畫點都是使用circle()函數(shù)來畫,點就是圓,我們平常所說的圓只不過是半徑大一點而已。int main(){
    Mat img = imread("lol16.jpg");  

    //畫空心點
    Point p(20, 20);//初始化點坐標(biāo)為(20,20)
    circle(img, p, 2, Scalar(0, 255, 0)); //第三個參數(shù)表示點的半徑,第四個參數(shù)選擇顏色。這樣子我們就畫出了綠色的空心點

    //這種初始化點的方式也可以
    Point p2;
    p2.x = 100;
    p2.y = 100;    //畫實心點
    circle(img, p2, 3,Scalar(255,0,0),-1); //第五個參數(shù)我設(shè)為-1,表明這是個實點。

    //畫空心圓
    Point p3(300, 300);
    circle(img,p3,100,Scalar(0,0,255),3);//第五個參數(shù)我們調(diào)高點,讓線更粗

    //畫實心圓
    Point p4;
    p4.x = 600;
    p4.y = 600;
    circle(img, p4, 100, Scalar(120, 120, 120), - 1);

    imshow("畫點畫圓", img);

    waitKey();    return 0;
}

網(wǎng)友評論