Для перекоса / сдвига вы можете использовать:
CGAffineTransform CGAffineTransformMakeShear( CGFloat inX , CGFloat inY ) {
return CGAffineTransformMake( 1 , inY , inX , 1 , 0 , 0 );
}
Для перспективы, аффинное преобразование 2D недостаточно. Вы можете применить трехмерное аффинное преобразование к слою и получить результаты, которые пытается эмулировать перспектива.
myView.layer.transform = CATransform3DMakeRotation( ... );