Như MSN đã nói, chúng được sử dụng trong các trường hợp khác nhau. CGAffineTransform được sử dụng cho thao tác 2-D của NSViews, UIViews và các phần tử đồ họa lõi 2 chiều khác.
CATransform3D là cấu trúc Hoạt ảnh cốt lõi có thể thực hiện các thao tác phức tạp hơn 3-D của CALayers. CATransform3D có cùng cấu trúc bên trong như một ma trận khung nhìn mô hình OpenGL, điều này có ý nghĩa khi bạn nhận ra rằng Core Animation được xây dựng trên OpenGL (CALayers là các trình bao bọc cho các kết cấu OpenGL, v.v.). Tôi đã thấy rằng sự giống nhau về cấu trúc bên trong, kết hợp với một số chức năng trợ giúp tốt đẹp mà Apple cung cấp, có thể cho phép bạn thực hiện một số tối ưu hóa OpenGL gọn gàng, như tôi đăng here.
Khi chọn tùy chọn sử dụng, hãy tự hỏi xem bạn có đang làm việc trực tiếp với chế độ xem trong không gian 2 chiều (CGAffineTransform) hay với lớp Lõi hoạt hình cơ bản trong 3-D (CATransform3D). Tôi sử dụng CATransform3D thường xuyên hơn, nhưng đó là vì tôi dành rất nhiều thời gian với Core Animation.
Nguồn
2009-02-20 01:09:45
2D Ảnh hưởng thường rộng 3 x 2 cao (với danh tính ngụ ý ẩn trong hàng dưới cùng). – plinth
Tôi gặp sự cố với tốc độ khung hình nhấp nháy/giảm tốc và sửa lỗi này! –