Bài viết này BCDD sẽ giúp cho bạn đọc tìm hiểu cơ bản về Python node trong Dynamo Revit, phân tích sơ lược các dòng code mặc định khi mở Python Script trong Dynamo.
Trước tiên, Python node nằm ở đâu? Nó nằm ngay dưới Script > Editor > Python Script
Cách thức hoạt động của Python node khá giống với node “List Create” trong Dynamo. Khi mà nó có thể có nhiều đầu vào phía bên trái của node bằng cách lick vào dấu “+” hoặc lick vào dấu “-” nếu muốn giảm đi và duy nhất một đầu ra phía bên phải của node.
Giờ thì khám phá xem nó có gì bên trong?
Như bạn có thế thấy đây là những dòng code mặc định của Python node trong Dynamo Revit. Lúc nào bạn mở một Python node lên từ Dynamo cũng sẽ thấy những dòng code này.
- 4 dòng code đầu tiên (dòng 2-5) là để import mô-đun sys, clr và Geometry như: Arc, Bounding Box, Circle, Coordinate System, Cuboid, Curve, Face, Line, Mesh, Nurbs Curve, Nurbs Surface, Plane, Point, Rectangle, Solid, Sphere, Surface, Topology, UV, Vector….
- Sử dụng biến “IN” để đưa dữ liệu vào Python node
- Đưa dữ liệu ra khỏi Python node bằng biến “OUT” như dòng code cuối cùng, ở đây dữ liệu được đưa ra là giá trị 0
Bạn có thể có nhiều đầu ra bằng cách sử dụng dấu “phẩy”, khi đó đầu ra sẽ là những list riêng biệt.
Với Dynamo 2.5 bạn có thể Run nhanh để test code bằng cách click ngay vào Run. Save Changes để lưu code còn Revert có nghĩa là đóng lại bảng Python Script. Và trả lại những dòng code trước đó (trước khi mở Python Script ra).
Tiếp theo, bạn có để ý đến những dòng code bị mờ. Đó là ghi chú trong Python bắt đầu bằng dấu “#”. Python script sẽ không đọc những dòng này khi chạy lệnh.
Đặc biệt từ phiên bản Dynamo 2.0 trở đi bạn có thể bật nhiều cửa sổ Python Node cùng một lúc. Thế nên việc copy code qua lại sẽ thuận tiện hơn cho việc test code.
Điều cuối cùng, khi có vấn đề xảy ra trong quá trình chạy code thì Python node cũng sẽ thông báo lỗi cho chúng ta. Đây là một tính năng tuyệt vời của Dynamo để người dùng có thể dễ dàng phát hiện và “fix bugs”.
Nếu thấy bài viết này hữu ích, hãy cân nhắc việc follow BCDD tại đây
Bài viết được biên soạn bởi đội ngũ BCDD
Xem thêm các bài viết:
Python BIM và một số khái niệm cơ bản
Chuyển Dynamo Scripts sang Python Dynamo
Boilerplate Code Python Dynamo
Lập trình Revit API: Cách đọc hiểu Revit API
Dynamo 01: Tạo sheets từ dữ liệu Drawings List bên Excel
Dynamo 02: Lọc Views và View Template của mô hình Revit
Dynamo 03: Ẩn Revit Category hàng loạt trong View Templates
Dynamo 04: Loại bỏ những View Filter không được sử dụng bằng Dynamo
Dynamo 05: Load Revit Families bằng Python Dynamo
Dynamo 06: Đổi tag hàng loạt bằng Dynamo