더북(TheBook)

OpenCV에서 타원을 그리고 싶을 때에는 ellipse() 함수를 사용할 수 있습니다. 타원을 그리는 방식은 원보다는 좀 더 복잡합니다. ellipse() 함수 원형은 다음과 같습니다.

void ellipse(InputOutputArray img, Point center, Size axes,
             double angle, double startAngle, double endAngle,
             const Scalar& color, int thickness = 1,
             int lineType = LINE_8, int shift = 0);

img

입출력 영상

center

타원의 중심

axes

타원의 반지름. Size(x축_반지름, y축_반지름)

angle

타원 회전 각도(x축 기준, 시계 방향)

startAngle

타원 호의 시작 각도(x축 기준, 시계 방향)

endAngle

타원 호의 끝 각도(x축 기준, 시계 방향)

color

타원 색상

thickness

타원 외곽선 두께. 이 값이 음수(-1 또는 FILLED)이면 내부를 채웁니다.

lineType

선 타입

shift

그리기 좌표 값의 축소 비율(오른쪽 비트 시프트(>>) 연산)

 

ellipse() 함수는 다양한 형태의 타원 또는 타원의 일부인 호를 그릴 수 있습니다. 타원의 크기는 axes 인자를 통해 지정합니다. axes 인자는 Size 자료형을 사용하며, x축 방향 타원의 반지름과 y축 방향 반지름을 지정합니다. angle 인자에 0이 아닌 값을 전달하면 회전된 타원을 그릴 수 있습니다. startAngleendAngle 인자를 적절하게 이용하면 호를 그리는 용도로도 사용할 수 있습니다. 예를 들어 startAngle에는 0을 지정하고 endAngle에는 360을 지정하면 완전한 타원을 그립니다. 만약 startAngle은 0을 지정하고 endAngle에 180을 지정하면 타원의 반에 해당하는 호를 그립니다. thickness 인자는 타원 외곽선 두께를 나타내는 인자이며, 이 값을 -1 또는 FILLED로 설정하면 내부를 채운 타원 또는 호를 그립니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.