Vì sao nên dùng Dynamo Script để tạo Level và View?
Với một dự án có nhiều tầng, việc nhập từng cao độ, tạo từng Level rồi tiếp tục tạo View tương ứng khá mất thời gian. Nếu phải lặp lại quy trình này nhiều lần, đây là một trong những công việc phù hợp để đưa vào quy trình tự động hóa với Dynamo.
Script Elevation Automation xử lý các bước này dựa trên những thông số bạn nhập vào, từ đó giảm bớt thao tác thủ công trong Revit.
Một số công việc có thể tự động hóa gồm:
- Tính cao độ các tầng: Dựa trên cao độ bắt đầu và chiều cao tầng để tạo danh sách cao độ.
- Đặt tên Level: Tạo tên theo quy tắc đã thiết lập, giúp hệ thống Level đồng nhất hơn.
- Tạo View tương ứng: Tạo các mặt bằng dựa trên những Level vừa được tạo.
- Giảm thao tác lặp lại: Thay vì tạo từng Level và View, bạn chỉ cần thiết lập thông số và chạy Script.
Đây cũng là cách đơn giản để bắt đầu ứng dụng BIM Automation với Dynamo, đặc biệt với những công việc trên phần mềm Autodesk như Revit có dữ liệu đầu vào và quy tắc xử lý rõ ràng.
Giao diện Dynamo với các tùy chọn tạo và mở Dynamo Script
Các thông số và Node chính trong Dynamo Script
Để chạy Script, bạn chỉ cần thiết lập một vài thông số phù hợp với dự án. Các giá trị này sẽ được dùng làm dữ liệu đầu vào để Script tính toán và tạo Level, View.
| Thông số | Mục đích |
|---|---|
| Số lượng tầng (Number of Stories) | Xác định tổng số Level cần tạo. |
| Chiều cao tầng (Floor Height) | Xác định khoảng cách giữa các Level. |
| Cao độ chuẩn (Base Elevation) | Xác định cao độ bắt đầu, chẳng hạn ±0.00. |
| Tiền tố/Hậu tố (Prefix/Suffix) | Thiết lập quy tắc đặt tên cho Level và View. |
Sau khi nhận dữ liệu đầu vào, các Node trong Dynamo sẽ xử lý từng phần để tính cao độ, tạo Level và thiết lập View tương ứng.
| Node chính | Chức năng |
|---|---|
Sequence / Range |
Tạo chuỗi dữ liệu phục vụ việc tính toán cao độ cho các tầng. |
Level.ByElevationAndName |
Tạo Level dựa trên cao độ và tên được cung cấp. |
StructuralPlanView.ByLevel / FloorPlanView.ByLevel |
Tạo View tương ứng từ các Level đã tạo. |
Dynamo Script Elevation Automation tự động tạo Level và Structural Plan View trong Revit
Hướng dẫn chi tiết các bước Dynamo Script tạo Level và View trong Revit
Sau khi chuẩn bị các thông số cần thiết, bạn có thể chạy Script Elevation Automation trực tiếp từ Dynamo Player. Quy trình gồm 4 bước, từ nhập dữ liệu, tính cao độ đến tạo Level và View trong Revit.
Bước 1: Mở Dynamo Player và thiết lập thông số đầu vào
Trong Autodesk Revit, vào Manage > Dynamo Player và tìm đến thư mục chứa Script Elevation Automation.
Chọn Script cần chạy, sau đó nhấn Edit Inputs để nhập các thông số của dự án:
- Số tầng:
10 - Chiều cao tầng:
3500 mm - Cao độ bắt đầu:
0
Các giá trị này sẽ được Script sử dụng để tính cao độ và tạo danh sách Level tương ứng.
Bước 2: Tính cao độ và thiết lập tên Level
Sau khi nhận dữ liệu đầu vào, Script sẽ tự động tính cao độ cho từng tầng dựa trên chiều cao tầng và cao độ bắt đầu.
Cao độ của mỗi Level được tính theo quy luật:
Elevationn=Elevationn−1+Floor Height
Ví dụ, với cao độ bắt đầu là 0 và chiều cao tầng 3500 mm, kết quả sẽ lần lượt là:
F1 = ±0.00 → F2 = 3500 → F3 = 7000 → F4 = 10500...
Song song với việc tính cao độ, các Node xử lý chuỗi như String.Concat sẽ ghép dữ liệu để tạo tên Level theo quy tắc đã thiết lập trong Script.
Bước 3: Chạy Script để tạo Level và View
Sau khi kiểm tra các thông số, nhấn Run trong Dynamo Player.
Lúc này, Node Level.ByElevationAndName sẽ sử dụng danh sách cao độ và tên đã được tạo để tạo các Level trong Revit.
Tiếp đó, StructuralPlanView.ByLevel hoặc FloorPlanView.ByLevel sẽ sử dụng những Level này để tạo các View tương ứng.
Như vậy, thay vì lần lượt tạo từng Level rồi tạo View thủ công, toàn bộ quy trình có thể được thực hiện trong một lần chạy Script.
Bước 4: Kiểm tra kết quả trong Revit
Sau khi Script chạy xong, chuyển sang Elevation View để kiểm tra cao độ và vị trí của các Level vừa tạo.
Tiếp theo, mở Project Browser để kiểm tra danh sách View. Đối chiếu số lượng, tên và Level tương ứng để đảm bảo kết quả đúng với các thông số đã nhập.
Nếu mọi dữ liệu đều chính xác, bạn có thể tiếp tục sử dụng hệ thống Level và View này cho các bước triển khai tiếp theo của dự án.
Một số lỗi thường gặp khi chạy Script
Nếu kết quả không như mong muốn, bạn có thể kiểm tra một số vấn đề thường gặp dưới đây trước khi chỉnh lại graph.
| Lỗi thường gặp | Cách xử lý |
|---|---|
Trùng tên Level (Level name already exists) |
Kiểm tra các Level đã có trong file Revit. Bạn có thể đổi Prefix/Suffix trong phần Input hoặc xử lý các Level bị trùng trước khi chạy lại Script. |
| Sai cao độ do đơn vị mm và m | Kiểm tra đơn vị đang được sử dụng trong Script. Nếu nhập 3500 nhưng Level được tạo ở vị trí bất thường, hãy kiểm tra bước chuyển đổi đơn vị trước khi đưa dữ liệu vào Node tạo Level. |
| Node báo lỗi hoặc chuyển màu vàng | Kiểm tra dữ liệu đầu vào và các Node đang kết nối. Nếu Script sử dụng Package bên ngoài, hãy kiểm tra xem Package cần thiết đã được cài đặt hay chưa. |
Nếu lỗi liên quan đến Package, bạn có thể mở Packages > Search for a Package trong Dynamo để tìm và cài đặt thư viện mà Script yêu cầu.
Dynamo Script này hỗ trợ BIM Automation như thế nào?
Elevation Automation chỉ là một ví dụ nhỏ cho cách Dynamo có thể hỗ trợ BIM Automation trong Revit.
Thay vì tự động hóa toàn bộ dự án ngay từ đầu, bạn có thể bắt đầu với những công việc có tính lặp lại cao và quy tắc xử lý rõ ràng. Khi đã xác định được Input, quy trình xử lý và kết quả cần tạo, những công việc này thường phù hợp để xây dựng thành Dynamo Script.
Trong trường hợp này, quy trình có thể hình dung đơn giản như sau:
Thông số dự án → Tính cao độ → Tạo Level → Tạo View → Kiểm tra kết quả
Cách tiếp cận này giúp giảm các thao tác thủ công và tạo tiền đề để xây dựng những workflow Revit Automation phức tạp hơn trong quá trình triển khai BIM.
Video demo Dynamo Script tự động tạo Level và View trong Revit
Xem thêm:
Với Dynamo Script tự động tạo Level và View trong Revit, bạn có thể giảm đáng kể các thao tác lặp lại khi thiết lập dự án, đặc biệt với những dự án có nhiều tầng hoặc thường xuyên sử dụng cùng một quy trình. Đây cũng là một ví dụ đơn giản về cách ứng dụng Dynamo vào BIM Automation, giúp chuẩn hóa một phần workflow và hạn chế sai sót khi xử lý dữ liệu trong Revit. VietCAD hy vọng Script được chia sẻ trong bài viết sẽ giúp bạn có thêm một giải pháp thực tế để tự động hóa những công việc BIM hằng ngày và từng bước xây dựng quy trình làm việc hiệu quả hơn với Revit.
