CGAffineTransform

Horus-iOS·2022년 6월 20일
0

https://developer.apple.com/documentation/corefoundation/cgaffinetransform/

An affine transformation matrix for use in drawing 2D graphics.

2D 그래픽을 그리는 것에서 사용하기 위한 아핀 변형 행렬입니다.

Declaration

struct CGAffineTransform

Overview

아핀 변형 행렬은 그래픽 컨텍스트에서 그리는 객체를 회전, 크기 조정, 변환, 기울이기를 위해 사용됩니다. CGAffineTransform 타입은 아핀 변형 생성, 연결, 적용을 위한 함수들을 제공합니다.

아핀 변형은 3 x 3 행렬에 의해 표현됩니다.

세 번재 열이 (0, 0, 1)이기 때문에 CGAffineTransform 데이터 구조는 처음 두 열에서만 값을 포함합니다.

개념적으로 아핀 변형은 이 행렬에 의해 그려지는 곳에서 각 점인 행 벡터를 곱합니다. 그리고 상응하는 점으로 (x’, y’)로 나타내는 벡터를 생성합니다.

3 x 3 행렬이 주어졌을 때 아래 수식은 (x, y)가 있는 하나의 좌표 시스템을 (x’, y’)가 있는 다른 좌표 시스템으로 변형하기 위해 사용됩니다.

그러므로 행렬은 두 좌표 시스템을 연결하면서 한 좌표 시스템에 있는 점을 다른 좌표 시스템에 있는 점으로 어떻게 변형할지를 구체화합니다.

아핀 변형을 직접 할 필요는 없을 것입니다. 예를 들어 크기가 조정되거나 회전된 객체를 그려야 하는 경우 아핀 변형을 구성할 필요는 없습니다. 그리기를 생성하기 위해 가장 직접적인 방법(이동, 크기 조정 혹은 회전 등에 상관없이)은 translateBy(x:y:), scaleBy(x:y:), rotate(by:)와 같은 메소드를 호출하는 것입니다. 아핀 변형을 이후에 재사용하길 원하는 경우에만 아핀 변형을 생성해야 합니다.

0개의 댓글