2013-07-09 3 views
-2

나는 이미지의 픽셀에 관한 4 개의 좌표를 가지고있다. x3, y3) 및 (x4, y4)라고한다. 어떻게 그 4 좌표를 통과하는 다각형을 그릴 수 있습니까?OpenCV를 사용하여 다각형을 그리는 방법은 무엇입니까?

void cvFillPoly(CvArr* img, CvPoint** pts, int* npts, int contours, CvScalar color, int lineType=8, int shift=0) 

다각형의 내부를 채 웁니다.

매개 변수 : IMG - 이미지

점 - 다각형

npts에 대한 포인터의 배열 - 다각형 정점 카운터

윤곽의 배열 - 채워진 영역을 결합 윤곽의 수

색상 - 다각형 색상

lineType - 다각형 경계 유형 EE 온라인 설명

시프트 - 정점에서의 분수 비트의 수는이 정보이다

좌표. 어떻게 좌표를 넣을 수 있습니까?

누구든지 코드를 설명 할 수 있습니까?

+0

를 사용해야합니다. 나는 이것에 의해 유용한 지식을 얻었다. –

답변

3

당신은 다음의 입력 배열로이 벡터를 사용하여 4 점

vector<Point> points(4); 
points = { (x1,y1),(x2,y2),(x3,y3),(x4,y4) }; 

의 배열 또는 벡터를 작성해야합니다. 이 질문에 폐쇄 있는데도

당신은 여전히 ​​유용 draw approx polygon method

vector<Point> approxCurve; 
double epsilon = ... // choose a value. 
approxPolyDP(points, approxCurve, epsilon, true); 
+0

감사합니다. 그러나 당신은 더 명확 할 수 있습니까? – Frankenstein

+0

구문에 분명합니다. 예를 기대하고있었습니다. 그리고 고마워 btw :) – Frankenstein

관련 문제