Cung Hilbert
![](http://178.128.105.246/content-http-upload.wikimedia.org/wikipedia/commons/4/46/Hilbert_curve.gif)
Một cung Hilbert (còn gọi là cung phủ đầy không gian Hilbert) là các đoạn thẳng liền nhau phủ đầy không gian Hilbert theo mô tả của David Hilbert năm 1891.
Cách vẽ
[sửa | sửa mã nguồn]Cung Hilbert được vẽ bằng phương pháp truy hồi (đệ quy). Sau đây là cách vẽ theo luật sinh thường dùng trong ngành toán máy tính.
- Ký hiệu: L,R
- Tác vụ: F,+,-
- Ký hiệu bắt đầu: L
- Luật sinh:
- L → +RF−LFL−FR+
- R → −LF+RFR+FL−
- Với F nghĩa là "vẽ thẳng tới", + nghĩa là "quay sang trái 90⁰", - nghĩa là "quay sang phải 90⁰"
Trong ngành Đồ họa máy tính, người ta thường sử dụng 2 phương thức của lớp Canvas là forward(dist:Real) và turn(angle:Real) (đơn vị của angle là độ). Đó là 2 phương thức cơ bản nhất của đồ thị con rùa
Ứng dụng khác
[sửa | sửa mã nguồn]Người ta thường dùng đường cong Hilbert làm một trong các tùy chọn quỹ đạo cho các ô tính toán kết xuất (rendering buckets) khi kết xuất ảnh 3D (Vùng nào trên bức ảnh được kết xuất trước, tiếp theo đến vùng vào và thứ tự từ đầu đến cuối cho tới khi xong quá trình). Vì tính chất lấp đầy bề mặt của cung hilbert (dữ liệu 3D kết xuất ra hình ảnh kết quả 2D) nên nó cũng là một trong các cách tốt (cả về thời gian lẫn hiệu quả) khi dùng làm quỹ đạo cho các ô tính toán trong việc lấp đầy hình ảnh cần xử lý.
Chẳng hạn như trong phần mềm V-Ray, mục setting có phần Region sequence với nhiều tùy chọn, trong đó có Triangulation, Hilbert curve, Spiral, Top-bottom,... Phần mềm khác cũng có các tùy chọn quỹ đạo render như Mental Ray, Corona,...