Chúng tôi không có một thách thức nào về việc vẽ một khối 3 chiều thực sự, vì vậy đây là:
Thử thách
Nhiệm vụ của bạn là vẽ một hình khối xoay, có phối cảnh. Nó có thể ở trong một cửa sổ riêng biệt hoặc dưới dạng hình ảnh.
Đầu vào
Đầu vào của bạn là 3 số riêng biệt trong khoảng từ 0 đến 359,99 ... Chúng đại diện cho xoay quanh trục x, y và z theo độ.
0 0 0
30 0 40
95 320 12
Đầu ra
Bạn có thể hiển thị nó trong một cửa sổ riêng biệt hoặc lưu hình ảnh. Bạn có thể sử dụng bất kỳ loại màn hình nào (dựa trên vector, rasterized, v.v.).
Chỉnh sửa: ASCII cũng được cho phép, để cho phép các ngôn ngữ chơi gôn chỉ có đầu ra văn bản.
Đầu ra cho đồ họa rasterized hoặc ASCII phải có ít nhất 50 * 50 (pixel cho rasterization, ký tự cho ASCII)
Thông tin thêm
Trục z dương chỉ ra từ cửa sổ, trục x nằm ngang và trục y thẳng đứng. Về cơ bản là tiêu chuẩn OpenGL.
Các vòng quay ngược chiều kim đồng hồ nếu bạn nhìn vào khối theo hướng tiêu cực của một trục cụ thể, ví dụ như nhìn xuống trục y.
Máy ảnh phải nằm trên trục z ở khoảng cách hợp lý với khối lập phương theo hướng z âm, khối phải ở (0; 0; 0). Các. khối lập phương cũng cần phải được nhìn thấy đầy đủ, và chiếm ít nhất 50% khung vẽ. Máy ảnh nên nhìn theo hướng z dương tại khối lập phương.
Các phép quay của khối được áp dụng theo thứ tự x-> y-> z.
Khối lập phương được xoay quanh trung tâm của nó, nó không di chuyển.
Để chiếu một khối trong không gian 2d, bạn cần chia tọa độ x và y của khối với khoảng cách song song với trục z giữa điểm và máy ảnh.
Quy tắc
Thư viện kết xuất được cho phép, nhưng các đỉnh cần được xác định trong mã. Không có mô hình khối lập phương 3d.
Các trường hợp thử nghiệm
google will tell you the formula.
Không , các thách thức nên chứa càng nhiều tài liệu và thông tin cần thiết để giải quyết chúng càng tốt, bao gồm trong phần thân bài . Tôi không cần phải đi tìm hoặc Wikipedia chỉ để bắt đầu hiểu.