效果如图:
代码实现:
#include<opencv2/opencv.hpp>
#include<iostream>
#include<math.h>
#include <windows.h>
const double PI = std::atan(1.0) * 4;//定义π
using namespace cv;
using namespace std;
int main(int argc ,char**argv) {
while (1) {
//画圆
Mat clock_dial = Mat::zeros(Size(500, 500), CV_8UC3);
Mat temp = clock_dial;
clock_dial = Scalar(0,128,128);
circle(clock_dial, Point(250,250), 250, Scalar(0, 0,255), 1, LINE_AA);
//画刻度线
for (int i = 0; i < 60; i++) {
//1度=π/180≈0.01745弧度,1弧度=180/π≈57.3度。
line(clock_dial, Point(250 + 250 * cos(PI / 180 * i * 6), 250 + 250 * sin(i * 6 * PI / 180)), Point(250 + 240 * cos(i * PI / 180 * 6), 250 + 240 * sin(i * PI / 180 * 6)), Scalar(64, 255, 0), 1, LINE_AA);
}
for (int i = 0;