이 것은 까다 롭습니다!수퍼 뷰를 회전 한 후 CGAffineTransform 행렬을 계산하십시오.
보기 A의 하위보기 인보기 A와보기 B가 있습니다. 두보기의 프레임은 일정합니다. 시각적 위치와 회전 이동 안 동일한 즉 B가 유지되도록
viewA.transform = CGAffineTransformMakeRotation(angle);
은 이제 뷰 B의 변환 매트릭스를 조정할 :
는 I는 변환 행렬을 변경하여도 A를 회전/A의 회전 각도를 바꾸면서 회전 함.
분명히 반대 방향으로보기 B를 회전해야하지만 충분하지 않습니다.
나는이 시도하지만 B는 여전히 주변에 흔들 리게 :viewB.transform = CGAffineTransformTranslate(CGAffineTransformMakeRotation(-angle), viewA.bounds.size.width, viewA.bounds.size.height);
어쩌면 올바른 매트릭스도 ... viewB의 프레임에 따라 어쩌면 내가 사인 및 코사인을 사용할 필요가 ...?
나는 B를 A 형제의 관점으로 간단하게 만들 수는 있지만, 나는 원하지 않는다.
이'viewB.transform = CGAffineTransformMakeRotation (-angle)'때문에'CGAffineTransformInvert (CGAffineTransformMakeRotation (각도)) '와 동일하다 'CGAffineTransformMakeRotation (-angle)'는 완전히 똑같습니다. 앞서 언급했듯이 회전만으로는 충분하지 않습니다. – Felix
나는 UR 대답을 이해하지 못한다. 무엇을 마침내 성취하고 싶니? –