Sử dụng OpenGL Tôi đang cố vẽ sơ đồ cơ sở của mình.Cách phóng to, xoay và xoay công việc?
Bất cứ ai có thể giải thích cho tôi cách xoay, thu phóng và xoay thường được triển khai?
Ví dụ: khi xoay và thu phóng, điều đó có đơn giản là tôi điều chỉnh chế độ xem của mình không? Vì vậy, tôi vẽ và vẽ tất cả các đường của tôi tạo bản đồ của tôi và sau đó khi người dùng nhấp và kéo nó điều chỉnh chế độ xem của tôi?
Để di chuyển, nó có thay đổi giá trị x/y của chế độ xem của tôi và để thu phóng không, tăng/giảm chế độ xem của tôi theo một số tiền? Còn về luân chuyển thì sao?
Để quay, tôi có phải thực hiện các biến đổi affine cho mỗi polyline đại diện cho bản đồ khuôn viên của tôi không? Sẽ không tốn kém để làm trên bay trên một bản đồ có kích thước phong nha?
Hoặc, chế độ xem có bị giữ nguyên và xoay/thu phóng/xoay được thực hiện ở một số đường khác không?
Ví dụ, nếu bạn đi đến link này, bạn sẽ thấy anh ấy diễn tả panning và phóng to chính xác làm thế nào tôi có ở trên, bằng cách thay đổi khung nhìn.
Điều này có đúng không?
Hãy để tôi thêm rằng không có điểm nào "khung nhìn" (như được đặt qua glViewport) đi vào quá trình này. Khung nhìn xác định vùng nào của cửa sổ bạn sẽ hiển thị (điều này không thực sự đúng, nhưng hãy nghĩ về nó theo cách này) và thường sẽ kéo dài toàn bộ cửa sổ. – Thomas