Mô Hình Giấy (Paper Model)#

Tham Chiếu (Reference)

Hạng Mục (Category):

Nhập-Xuất Khẩu (Import-Export)

Trình Đơn (Menu):

Tập Tin (File) ‣ Xuất Khẩu (Export) ‣ Mô Hình Giấy (Paper Model [.pdf/.svg])

Panel (Bảng):

Tính Chất (Properties) ‣ Khung Lưới (Mesh) ‣ Hải Đảo của Mô Hình Giấy (Paper Model Islands)

Trình Đơn (Menu):

Khung Lưới (Mesh) ‣ Mở Gói (Unfold)

Trình bổ sung này tạo ra một bộ lưới phẳng của một khung lưới đã cho. Nó tạo ra các tập tin PDF hoặc SVG phù hợp để in ấn trực tiếp và tạo mô hình giấy. Mục tiêu chính là tự động hóa tối đa toàn bộ quá trình. Những tác vụ phổ biến như nướng chất liệu của mô hình vào tài liệu đầu ra cũng được hỗ trợ nữa.

Cách Sử Dụng (Usage)#

Để tránh các sự cố sau này xảy ra, xin hãy chuyển sang Chế Độ Đối Tượng. Sau đó, chọn khung lưới mà bạn muốn xuất khẩu để nó là khung lưới đang hoạt động. Nếu bạn muốn lấy được kết quả nhanh chóng thì chỉ cần thực thi trình bổ sung này từ trình đơn Tập Tin (File) ‣ Xuất Khẩu (Export). Nó sẽ đòi hỏi một tên tập tin và sẽ tự động thực hiện mọi thao tác khác. Tất cả các cài đặt có liên quan đều nằm ở góc dưới bên trái. Dưới đây là các miêu tả chi tiết hơn.

Nếu bạn không hài lòng với mạng lưới được tạo ra thì bạn có thể chỉnh sửa nó một cách thủ công. Để làm được việc này, trước tiên bạn phải thực thi công cụ "Mở Gói" (thẻ Khung Lưới có sẵn trong Tính Chất). Các cạnh sẽ được cắt đi để làm phẳng mạng lưới, tức cái phải được đánh dấu là các đường khâu của Chế Độ Biên Soạn. Bạn có thể sử dụng các công cụ "Xóa Đường Khâu" và "Đánh Dấu Đường Khâu" để sắp xếp chúng theo ý muốn hoặc sử dụng nút trợ giúp "Xóa Toàn Bộ các Đường Khâu" trong Chế Độ Đối Tượng để bắt đầu lại từ đầu. Khi bạn xuất khẩu mô hình thì nó sẽ sử dụng toàn bộ các đường khâu đã cho và cho thêm một số vết cắt nếu cần.

Bạn cũng có thể sử dụng công cụ "Mở Gói" để xem trước mạng lưới. Nó sẽ liệt kê toàn bộ các hải đảo của mạng lưới được tạo ra trong bảng điều khiển và nếu bạn bật tính năng này lên trong cài đặt của công cụ thì nó cũng sẽ tạo một bố trí UV, hiển thị các hải đảo nữa. Lưu ý rằng, các vị trí của hải đảo sẽ không được tính toán trong giai đoạn này đâu, do đó, toàn bộ chúng sẽ chỉ nằm chồng lên nhau. Bạn có thể sử dụng công cụ "Đóng Gói Hải Đảo" của Blender để sắp xếp chúng.

Chúng ta có một số thể loại cấu trúc liên kết có thể thực hiện được trong Blender, song không có trong thực tế trên giấy:

  • Mặt N-gon (mọi thứ trừ hình tam giác) không hoàn toàn phẳng.

  • Các cạnh có độ dài bằng 0 (hai điểm đỉnh nằm chính xác ở cùng một điểm và được kết nối với nhau bằng một cạnh)

  • Các mặt không có diện tích (thường các điểm đỉnh của chúng nằm thẳng trên một đường)

Nếu phát hiện thấy bất kỳ trường hợp nào trong số này thì trình bổ sung sẽ đưa ra thông báo lỗi và không xuất khẩu nữa. Thông báo lỗi sẽ hướng dẫn bạn cách khắc phục sự cố.

Xuất Khẩu các Khung Lưới có Chất Liệu (Exporting Textured Meshes)#

Để xuất khẩu mô hình của bạn với chất liệu vẽ tay thì bạn phải mở gói mô hình, vẽ một hình ảnh và ấn định nó vào mô hình để nó có hiệu ứng trong quá trình kết xuất. Bạn có thể sử dụng bất kỳ công cụ nào bạn thích cho những tác vụ này. Chức năng của trình bổ sung này chỉ đơn giản là nó sử dụng quá trình nướng ở chế độ "Chất Liệu".

Chuyển sang Chế Độ Đối Tượng và hủy chọn bất kỳ đối tượng nào, ngoại trừ đối tượng sẽ được xuất khẩu. Sau đó, thực hiện "Xuất Khẩu Mô Hình Giấy" và trong Trình Duyệt Tập Tin, chuyển trình lựa chọn "Chất Liệu" thành "Từ Nguyên Vật Liệu".

Nếu bạn chọn xuất khẩu một tập tin SVG thì bạn sẽ có một số tùy chọn về phương pháp đính kèm các hình ảnh nữa. Toàn bộ các tùy chọn được giải thích chi tiết hơn ở phần Tính Chất (Properties).

Chất liệu thu được không phụ thuộc vào bất kỳ cài đặt cảnh nào cả, ngoại trừ nguyên vật liệu đã cho, và bên cạnh đó, toàn bộ các cài đặt phải được giữ nguyên sau khi thực hiện việc xuất khẩu.

Phương Pháp Đọc Mạng Lưới (How to Read the Net)#

Hầu hết hình thức của tài liệu đều có thể được tùy chỉnh trong quá trình xuất khẩu (xem dưới đây). Song, kiểu cách mặc định được cho là quen thuộc với những người lập mô hình giấy: các đường đứt nét biểu thị sự gấp ra ngoài, các đường chấm chấm biểu thị sự gấp vào trong (tức là để tạo thành các hình lõm). Ranh giới từng phần của mạng lưới sẽ được hiển thị bằng các đường nét đặc. Các thẻ để dính thì có màu xám, hòng dễ phân biệt với các phần khác của mạng lưới.

Một nhãn tên sẽ được viết trên thẻ khi cạnh mục tiêu của nó có thể là không rõ ràng. Cụ thể là, nhãn tên sẽ bị bỏ qua nếu cạnh bị tắc kẹt ở cùng một vị trí với cả hai cạnh của nó, hoặc nếu một trong hai cạnh đó chính là bản thân mục tiêu. Định dạng của nhãn tên là "viết tắt tên hải đảo: số cạnh". Tên viết tắt của hải đảo được viết trong dấu ngoặc vuông, bên dưới hải đảo tương ứng, trước tên đầy đủ của hải đảo. Số cạnh sẽ được viết dưới dạng một mũi tên tam giác, ngay bên đường cạnh mục tiêu ấy, bên ngoài mạng lưới.

Nếu "Kiến Tạo Mép Dán" bị tắt đi thì định dạng tương tự sẽ được sử dụng cho các nhãn tên dọc theo từng cạnh liên quan, bên trong mạng lưới. Phương pháp này được thiết kế để tạo mô hình từ các nguyên vật liệu cứng và/hoặc dày, tức cái mà việc dán các thẻ lại là một việc khá vô nghĩa. Nếu "Tạo Số" bị tắt đi thì các nhãn tên sẽ bị bỏ qua; việc làm này có thể cần thiết đối với các mô hình có độ chi tiết cao.

Phương Pháp In Ấn Mạng Lưới (How to Print the Net)#

Tập tin PDF có thể được in ra trực tiếp ở hầu hết mọi nơi. Song, mọi việc sẽ trở nên khó khăn nếu bạn cần thay đổi mạng lưới bằng tay.

Nếu bạn chọn định dạng SVG thì bạn có thể chỉnh sửa các tập tin đã xuất khẩu trong trình chỉnh sửa đồ họa vector như Inkscape chẳng hạn. Một lý do khiến bạn có thể muốn làm là đóng gói các hải đảo một cách thủ công hòng tiết kiệm giấy. Một lý do khác là các thẻ và các con số thường tạo ra nhiều sự lộn xộn xung quanh mô hình và việc loại bỏ một số chúng đi bằng tay có thể là một việc hữu ích.

Nếu tài liệu in bị cắt xén xung quanh viền trang giấy thì điều đó có nghĩa là bạn nên tăng cài đặt Lề lên trong khi xuất khẩu.

Đánh Dấu trên Mạng Lưới (Placing Marks on the Net)#

Các cạnh có một Dấu Chỉ PCTD (Cạnh (Edge) ‣ Đánh Dấu Cạnh PCTD (Mark Freestyle Edge)) sẽ được đánh dấu trên mạng lưới với màu sắc và kiểu vẽ do người dùng xác định. Việc làm này đặc biệt hữu ích khi sử dụng trên các cạnh phẳng, thường là hoàn toàn không được vẽ ra. Nếu bạn vẽ một hình bằng công cụ "Dao" và sau đó đánh dấu một số cạnh là các cạnh Phong Cách Tự Do thì bạn có thể tạo một đường vẽ đơn giản trên mô hình.

Khi sử dụng trên các cạnh gấp lại thì đường nêu bật sẽ được vẽ bên dưới đường gấp. Vì vậy, bạn có thể sẽ phải thay đổi kiểu vẽ "Đường Nét Phong Cách Tự Do" để làm cho nó rộng hơn, chứ không phải là màu đen, để các đường vẫn có thể phân biệt được.

Các Sắp Đặt (Settings)#

Hải Đảo của Mô Hình Giấy (Paper Model Islands)#

Thẻ "Hải Đảo của Mô Hình Giấy" trong thẻ Khung Lưới cung cấp hai nút để gọi các công cụ "Mở Gói" và "Xuất Khẩu Mô Hình Giấy" một cách thuận tiện. Nó cũng đồng thời cung cấp các nút để đánh dấu và xóa các đường khâu đi, tùy vào ngữ cảnh và chức năng thử nghiệm "Giới Hạn Kích Cỡ của Hải Đảo".

Khi công cụ "Mở Gói" được kích hoạt thì mô hình sẽ được chia thành các phần phẳng bẹt và chúng được trình bày trong danh sách có tên là "Các Hải Đảo" bên dưới. Danh sách cho phép bạn thay đổi nhãn của từng hải đảo. Nếu "Tạo Số" được bật lên trong khi xuất khẩu thì chữ viết tắt của các nhãn này sẽ được sử dụng để miêu tả mép dán nào sẽ được gắn vào hải đảo nào. Sau khi chạy công cụ "Mở Gói", các nhãn hải đảo này sẽ được tính toán lại sao cho càng nhiều mặt nằm dưới cùng một nhãn càng tốt.

Nếu bạn chọn một hải đảo và bật nút "Nêu Bật Hải Đảo đã được Lựa Chọn" (và khung lưới bạn mở gói ra là khung lưới đang hoạt động) thì hải đảo đó sẽ được đánh dấu bằng màu da cam trong Cổng Nhìn 3D. Sử dụng thanh trượt bên dưới, bạn có thể thay đổi độ đục của phần nêu bật.

Mở Gói (Unfold)#

Tùy chọn đầu tiên từ trên xuống là "Kiến Tạo Ánh Xạ UV". Nếu được bật thì bản đồ UV mới sẽ được tạo để hiển thị toàn bộ các hải đảo. Song, vị trí của chúng vẫn chưa được tính toán tại thời điểm này của quá trình xuất khẩu, nên toàn bộ chỉ được đặt ở góc dưới cùng bên trái mà thôi. Tùy chọn này rất hữu ích khi chỉnh sửa đường cắt bằng tay. Bạn có thể sử dụng công cụ "Mở Gói" và lấy được kết quả tương tự.

Công cụ này có ba thanh trượt, tất cả đều điều chỉnh mức độ ưu tiên cắt cạnh (cụ thể là: "Góc Mặt Lồi", "Góc Mặt Lõm", "Độ Dài Cạnh"). Giá trị cao sẽ làm cho cạnh có tính chất tương ứng có khả năng bị cắt cao hơn. Do đó, tốt hơn hết bạn nên đặt Độ Dài Cạnh thành giá trị âm, để các cạnh dài vẫn được kết nối. Việc sửa đổi ngẫu nhiên các giá trị này thường có thể giúp giảm số lượng hải đảo trong mạng lưới. Để biết thông tin về ý nghĩa của các giá trị này, xin hãy đọc phần Mở Gói trong Chi Tiết Kỹ Thuật (Technical Details).

Tính Chất (Properties)#

Khi quá trình xuất khẩu khởi động thì trình bổ sung sẽ âm thầm mở gói khung lưới (không đánh dấu bất kỳ đường khâu nào cả) và chia toàn bộ các mặt thành các hải đảo, quá trình này có thể mất vài giây đối với các khung lưới phức tạp. Sau đó, Trình Duyệt Tập Tin sẽ được hiển thị. Với định dạng SVG, tên tập tin bạn chọn sẽ có "_trang<số>.svg" hậu tố, ngay cả khi chỉ cần một trang mà thôi.

Cài đặt của trình xuất khẩu này được hiển thị ở góc dưới bên trái của Trình Duyệt Tập Tin.

Sắp Đặt Sẵn (Preset)

Trình đơn "Sắp Đặt Sẵn" cho phép nhanh chóng lưu và lấy lại toàn bộ các cài đặt bên dưới nó, bao gồm cả tỷ lệ mô hình và kiểu cách màu sắc.

Tỷ Lệ Mô Hình (Model Scale)

Tỷ Lệ Mô Hình có thể được sử dụng để đổi tỷ lệ toàn bộ mạng lưới. Nếu bạn muốn có mô hình ở tỷ lệ 1:72 thì chỉ cần đặt giá trị này thành 72. Đây cũng là một tùy chọn quan trọng vì trình bổ sung thường tạo ra các hải đảo lớn hơn trang.

Theo mặc định, giá trị này được đặt sao cho ngay cả hải đảo lớn nhất cũng vừa khít với trang. Nếu được đặt thành một thì mô hình thực sẽ có cùng kích thước với mô hình ảo.

Kiến Tạo Ánh Xạ UV (Create UV Map)

Có tác dụng tương tự như tùy chọn có tên tương tự của công cụ "Mở Gói", song không giống nhau. Nó sẽ tạo ra một bản đồ UV mới phản ánh chính xác vị trí của tất cả các hải đảo trong mô hình. Thật không may là các hải đảo từ toàn bộ các trang sẽ được đặt chồng chéo lên nhau, và rất khó để phân biệt chúng.

Các Sắp Đặt về Tài Liệu (Document Settings)#

Các cài đặt liên quan chặt chẽ đến định dạng của tài liệu đầu ra nằm trong bảng điều khiển phụ Các Sắp Đặt về Tài Liệu.

Định Dạng/Hình Thức (Format)

Trình lựa chọn đầu tiên cho phép chuyển đổi giữa các định dạng tài liệu PDF và SVG.

Cỡ Trang (Page Size)

Một trình chọn lựa khác bên dưới cho phép bạn chọn một trong những khổ giấy phổ biến nhất một cách nhanh chóng. Nếu bạn cần một khổ giấy khác thì xin hãy chọn "Người Dùng Định Nghĩa" và đặt kích thước một cách thủ công.

Mép Lề của Trang (Page Margin)

Giúp xuất khẩu mô hình theo tỷ lệ chính xác dễ dàng hơn (nếu bạn đặt thanh trượt "Tỷ Lệ Mô Hình" thành 1).

Bạn có thể đặt nó theo chiều rộng của đường viền không in được của máy in để có thể in được tài liệu SVG mà không cần đổi tỷ lệ thêm. Song, việc xuất khẩu các mô hình theo tỷ lệ vẫn gặp khó khăn vì trình bổ sung không tự động tách phân các hải đảo quá khổ.

Dots per inch: Số Điểm Mỗi In-Sơ Anh

Giá trị tiếp theo là DPI, xác định độ phân giải tổng thể của mạng lưới. Nghĩa là, không chỉ độ phân giải của hình ảnh đã nướng (nếu có) mà còn cả độ dày của đường kẻ.

Kiến Tạo Mép Dán (Create Tabs)

Điều khiển xem các mép dán có được tạo hay không. Ví dụ: bỏ chọn mục này nếu bạn muốn dán mô hình bằng băng dính chẳng hạn.

Kiến Tạo Số Mã (Create Numbers)

Thêm các con số vào một số các cặp cạnh được cho là sẽ dính vào nhau. Những con số này sẽ bị loại trừ nếu điểm dán vào có thể dễ dàng đoán ra từ các cạnh lân cận. Trong các mô hình phức tạp hơn, chúng có thể chồng chéo lên nhau và lên cả chính bản thân mạng lưới rất nhiều. Việc tắt tùy chọn này có thể giúp giải quyết những vấn đề như vậy. Nếu "Kiến Tạo Mép Dán" bị tắt đi thì các con số sẽ được hiển thị bên trong mạng lưới.

Kích Thước Mép Dán và Cỡ Văn Bản (Tabs and Text Size)

Đặt chiều rộng tối đa của các mép dán xung quanh các hải đảo. Kích thước thực tế của mỗi mép dán được điều chỉnh tối đa bằng một nửa chiều dài của cạnh tương ứng. Trong một số trường hợp đặc biệt, các mép dán được tạo ra để không chồng gối với mặt, song cái này vẫn chưa hoạt động đáng tin cậy lắm. Nếu "Kiến Tạo Mép Dán" bị tắt đi thì thanh trượt này sẽ điều khiển kích thước của các con số trên các cạnh.

Góc Độ Cạnh Ẩn Khuất (Hidden Edge Angle)

Các cạnh có góc gấp bên dưới Góc Độ Cạnh Ẩn Khuất thì sẽ không được vẽ ra. Việc tăng giá trị này có thể tạo ra kết quả đẹp hơn khi xuất khẩu các bề mặt nhẵn, chẳng hạn như hình trụ: nó sẽ loại bỏ được nhiều đường không cần thiết. Giảm nó đi thì có thể giúp ích trong một số trường hợp đặc biệt.

Chất Liệu (Textures)

Trình đơn chọn "Chất Liệu" liệt kê các tùy chọn để xuất khẩu các khung lưới có chất liệu.

Không Có Chất Liệu (No Texture)

Chỉ cần tạo mạng lưới trên một nền trắng (trước đây gọi là "Khung Lưới Thuần Túy"). Các tùy chọn còn lại là để kích hoạt nướng chất liệu và do đó chậm hơn đáng kể.

Từ Nguyên Vật Liệu (From Materials)

Xuất khẩu hình ảnh vốn được ấn định cho từng mặt của mô hình trong nguyên vật liệu đang hoạt động của chúng.

Kết Xuất Toàn Phần, cái Được Chọn sang cái đang Hoạt Động (Full Render, Selected to Active)

Tương ứng với các tùy chọn "Thể Loại Nướng" tương ứng. Cả hai đều kết xuất toàn bộ các nguyên vật liệu và ánh sáng: "Kết Xuất Toàn Phần" chỉ kết xuất mô hình mà thôi, trong khi "Cái được Chọn sang cái đang Hoạt Động" phóng chiếu các đối tượng được chọn nằm lân cận khác lên mô hình. Chức năng này có thể hữu ích cho việc tạo các họa tiết như lông lá hoặc lá cây một cách quy trình.

Hình Ảnh (Images)

Trình đơn chọn "Hình Ảnh" cho phép bạn chọn phương pháp đưa hình ảnh đã nướng vào tập tin SVG. Nếu bạn muốn chỉnh sửa bố trí của mạng lưới trong trình chỉnh sửa SVG thì xin hãy chọn "Kết Nối" hoặc "Được Nhúng Sẵn".

Được Nhúng Sẵn (Embedded)

Tạo các tập tin SVG độc lập, làm cho chúng lớn hơn song khả di động.

Đơn Kết Nối (Single Linked)

Còn lại chủ yếu là vì lý do tương thích mà thôi.

Màu Sắc và Phong Cách (Colors and Style)#

Các tùy chọn liên quan đến phong cách vẽ được đóng gói trong bảng phụ "Màu Sắc và Phong Cách". Chúng khá hiển nhiên, không cần lý giải thêm.

Chi Tiết Kỹ Thuật (Technical Details)#

Mở Gói (Unfold)#

Trước tiên, thuật toán sẽ ấn định cho mỗi cạnh một mức độ "ưu tiên", tùy thuộc vào góc và độ dài của nó. Các cạnh có mức độ ưu tiên cao hơn sẽ có nhiều khả năng bị cắt rời ra trong mạng lưới kết thúc hơn.lên c cạnh ngắn hơn có mức độ ưu tiên cao hơn (chúng dễ dán lên hơn) và các góc sắc nét hơn (điều đó làm cho mạng lưới nhìn dễ hiểu hơn về mặt trực quan).

Các mặt tạo thành một góc lõm nếu pháp tuyến của chúng hướng vào nhau. Những góc như vậy thậm chí còn có mức độ ưu tiên cao hơn một chút, điều này được cho là sẽ hữu ích đối với các mô hình thông dụng. Nếu một số pháp tuyến mặt bị đảo ngược thì thuật toán sẽ luôn luôn cho rằng góc giữa chúng là góc lồi.

Nếu có nhiều hơn hai mặt được nối bằng một cạnh, thì hai trong số chúng được chỉ định là các mặt chính, và toàn bộ các mặt còn lại sẽ phải được dán lại. Các mặt chính được chọn sao cho chúng tạo thành góc nhỏ nhất có thể.

Hiệu ứng ưu tiên thực tế của góc so với chiều dài có thể thay đổi mạng lưới kết quả rất nhiều. Các giá trị mặc định được chọn bằng cách thử nghiệm đối với một số mô hình cơ bản, song có thể là một lựa chọn tồi đối với các mô hình khác. Nếu bạn muốn điều chỉnh chúng thì công cụ "Mở Gói" cho phép bạn: chúng là ba cài đặt duy nhất của công cụ.

Thuật toán cắt khởi đầu với toàn bộ các mặt được tách biệt ra và cố gắng kết nối chúng để tạo thành các hải đảo lớn hơn, được sắp xếp theo mức độ ưu tiên của cạnh kết nối. Nếu mặt nào đó của hải đảo kết quả bị chồng chéo lên nhau thì thao tác sẽ bị hủy bỏ và thuật toán tiếp tục với một cạnh khác. Nếu điểm đỉnh hoặc cạnh nào đó nằm gần nhau đúng mức thì chúng sẽ được hợp nhất làm một. Trong quá trình này, mỗi cạnh được truy cập đúng một lần mà thôi.

Quá trình kiểm tra sự chồng chéo về cơ bản là thuật toán Bentley-Ottmann về sự giao cắt của phân đoạn đường thẳng, được áp dụng cho ranh giới của hải đảo kết quả. Để xử lý một số trường hợp đặc biệt thì thuật toán sẽ tự động chuyển đổi giữa phiên bản nhanh hơn một chút và phiên bản bền bỉ hơn, của chính bản thân nó. Một kiểm tra khác được áp dụng để phát hiện xem đường ranh giới có giao cắt chính bản thân nó ở một điểm đỉnh của hải đảo kết quả hay không - những trường hợp như vậy phải được thử nghiệm rõ ràng, vì chúng đáng ra không được gây ra các phân đoạn giao cắt nhau.

Bố Trí Mạng Lưới trên các Trang (Positioning the Nets on Pages)#

Do các mạng lưới không chỉ bao gồm các mặt mà thôi, mà còn bao gồm cả các mép dán xung quanh, nên chúng không thể được định vị bằng công cụ Blender nội tại ("Đóng Gói Hải Đảo"). Vì vậy, một thuật toán độc lập đã được viết ra.

Để đơn giản hóa quy trình, tất cả các mạng lưới được đóng gói lại thành các hình chữ nhật viền khung (nhỏ nhất có thể). Sau đó, chúng được sắp xếp theo kích thước (lớn nhất trước) và theo thứ tự này, thuật toán sẽ cố gắng định vị chúng trên một trang giấy. Các vị trí thử nghiệm cho góc dưới bên trái được đưa ra bởi một khung lưới đồ thị n × n, kết quả từ toàn bộ các góc của các hải đảo đã được định vị. Một vị trí được chấp nhận, hoặc từ chối, là bằng cách kiểm tra khả năng chồng chéo với mỗi hình chữ nhật viền khung hải đảo.

Khi còn lại bất kỳ hải đảo nào không thể đặt được vào trang thì một trang trống mới sẽ được tạo ra.

Thuật toán này đúng ra sẽ hoạt động một cách đáng tin cậy và khá nhanh chóng. Song, nó hiển nhiên là không hiệu quả nếu các hình chữ nhật viền khung có chứa nhiều không gian trống. Ngoài ra, việc đóng gói phụ thuộc rất nhiều vào thứ tự các hải đảo được xử lý, và điều này không hề tối ưu một tí nào.