Blog chia sẽ kinh nghiệm lập trình và Technical VN. Nơi mà các bạn có thể học tập và tham khảo về những công nghệ mới nhất hiện nay về .NET
Thứ Ba, 26 tháng 5, 2015
WPF vượt trội hơn Winform về khoản Drawing, trong đó đặc biệt WPF hỗ trợ đồ họa rất tốt vì nó tương tác trực tiếp đến GPU. Hôm nay chúng ta sẽ hiểu cơ bản về các thành phần đi kèm phục vụ xử lý 3D trong WPF.

I> Tổng Quan
Nội dung đồ họa 3-D trong WPF được gói gọn trong một phần tử là Viewport3D , nó được hiểu như một khung cửa mà ở đó các đối tượng 3-D được load lên và cho ta thấy lần lượt cáchình chiếu của đối tượng. Nếu là 2-D, Viewport3D được hiểu như là một Canvas, Grid, StackPanel...
Trong không gian 3-D chúng ta có hệ trục tọa độ gồm Oxyz, tâm O nằm ở vị trí trung tâm của Viewport3D trong khi tâm O trong không gian 2-D chúng ở góc TRÁI-TRÊN.
Ngoài ra một Camera là không thể thiếu trong khái niệm không gian 3-D. Camera mặc định được đặt trong Viewport3D ngay trên trục Oz+.

Sau Camera, Model3D là hết sức quan trọng vì đó chứa thứ mà bạn sẽ thấy, hiện nay WPF hỗ trợ một mô hình 3D hình học với tên gọi là GeometryModel3D.
- GeometryModel3D.Geometry thể hiện một đối tượng 3-D hoàn chỉnh là MeshGeometry3D; trong đó MeshGeometry3D chứa tập các Point3D, khi nối các điểm này lại ta có một mô hình 3-D.

- GeometryModel3D.Material thể hiện vật liệu của MeshGeometry3D.
Phần làm cho mô hình 3-D trở nên thật hơn đó là ĐÈN bởi vì nó góp phần tạo ra hiệu ứng bóng, mờ, sáng-tối, độ phản chiếu, độ sâu...

Translation. giúp chúng ta có thể xoay khối mô hình 3-D trong không gian 3 chiều, translation có thể được thay đổi lúc RealTime để điều khiển như điều khiển một cánh tay Robot 3D.

Sau đây là cấu trúc một cửa sổ Viewport3D
II> Demo
Các bạn có thể tải về một số Demo để tham khảo tại đây, dùng chuột TRÁI hoặc chuột PHẢI để xoay đối tượng.

Ở bài viết sau tôi sẽ hướng dẫn các bạn cách để điều khiển một chú Robot như thế này

Cảm ơn các bạn đã quan tâm, mọi thắc mắc xin để lại Comment
Phạm Tuân WPF
Search
Popular Posts
-
Phong cách thiết kế Material Design nhắm đến những đường nét đơn giản, sử dụng nhiều mảng màu đậm nổi bật, các đối tượng đồ họa trong giao ...
-
Hôm nay tôi sẽ giới thiệu với các bạn một Framework đến từ Microsoft - framework này không quá lớn nhưng là khá mạnh khi các bạn làm việc vớ...
-
WPF vượt trội hơn Winform về khoản Drawing , trong đó đặc biệt WPF hỗ trợ đồ họa rất tốt vì nó tương tác trực tiếp đến GPU. Hôm nay chúng t...
-
Hôm nay chúng ta sẽ tìm hiểu cách tạo ra các menu chuột phải trên ứng dụng WPF của mình. Ở bài này chúng ta xoay quanh việc tìm hiểu cách tạ...
-
Để dễ hiểu, các bạn hãy hình dung rằng: cùng một tập tin thực thi *.EXE nhưng bạn DoubleClick 10 lần cách quãng vào nó thì chuyện gì sẽ sảy ...
-
Trong bài viết trước tôi có giới thiệu về Extension Methods trong nguôn ngữ lập trình C#; hôm nay tôi sẽ nói về một vấn đề có ý nghĩa tương...
-
Hôm nay chúng ta sẽ thử đo xem thời gian query Data của "Foreach vs LinQ vs LinQasParallel" như thế nào. Tôi tạo một tool nhỏ để l...
-
Data Binding là kĩ thuật dùng để tạo gắn kết giữa phần giao diện ( UI ) và dữ liệu thông qua phần business logic hoặc giữa các đối tượng UI...
-
LOG4NET là một thư viện mã nguồn mở cho phép chúng ta tạo ra một hoặc nhiều tập tin log, kiểu log cũng như nội dung log một cách linh hoạt v...
-
Sau hai bài giới thiệu về Caliburn.Micro framework, hôm nay chúng ta sẽ cùng bắt tay vào làm một dự án nhỏ - HelloWorld. Step 1: Add referen...


demo không có code mà chỉ có file exe thì đâu có tham khảo được *((
Trả lờiXóa