Theo quy ước của đồ họa hai chiều đồ trong WPF, tăng giá trị của Y đi xuống. Đây là đối ngược của chế độ xem theo trục Y trong 3D, một sự khác biệt đó là có khả năng gây nhầm lẫn lúc đầu tiên.
Để tô một vật thể ba chiều bằng cọ vẽ hai chiều, bạn phải thiết lập một tương ứng giữa các đỉnh ba chiều và mối quan hệ của cọ vẽ trong tọa độ hai chiều. Bạn làm điều này bằng cách sử dụng một thuộc tính của MeshGeometry3D có tên là TextureCoordinates, thuộc tính này là
Trang 67
Như bạn đã biết, mỗi tam giác trong hình được xác định b i ba chỉ số liên tiếp trong bộ sưu tập TriangleIndices của đối tượng MeshGeometry3D. Những chỉ số này được khai báo để xác
định vị trí tọa độ 3D của các đỉnh của tam giác đó. Những chỉ số này cũng được khai báo trong bộ sưu tập TextureCoordinates (nếu có) để có được cọ vẽ ba chiều trong tọa độ hai chiều. Nếu bạn có đỉnh trùng lặp trong bộ sưu tập Position, bạn có thể kết hợp chúng với các điểm khác nhau trong bộ sưu tập TextureCoordinates.
Giả sử bạn đã xác định một LinearGradientBrush như thế này:
<LinearGradientBrush>
<GradientStop Offset="0" Color="Yellow" /> <GradientStop Offset="1" Color="Brown" /> </LinearGradientBrush>
Mặc định StartPoint và EndPoint là các giá trị (0, 0) và (1, 1), gradient bắt đầu góc trên bên trái với màu vàng và kết thúc góc dưới bên phải với màu nâu. Bạn có thể sử dụng bất kỳ tập hợp tam giác của bàn cọ vẽ để tô màu sắc cho một tam giác trong lưới 3D. Giả sử bạn muốn lập bản đồ sau đây: