[REVIT API Task] Tạo Addin RebarBeam - Phần 4: Truy xuất tọa độ tiết diện | Vietbimcoder.com

[REVIT API TASK] TẠO ADD-IN REBAR BEAM – TẠO THÉP DẦM TỰ ĐỘNG (PHẦN 4: TRUY XUẤT TỌA ĐỘ TIẾT DIỆN)

Tiếp tục series add-in Rebar Beam, ở phần 4 mình sẽ hướng dẫn cách truy xuất các điểm tọa độ của dầm.

Các bài còn lại trong series:

Phần 1: Chọn đối tượng

Phần 2: Truy xuất hình học

Phần 3: Truy xuất trục tọa độ

Kích thước hình học:

Width, Heigth, Length đại hiện cho chiều rộng, chiều cao và chiều dài của dầm.

Hệ tọa độ địa phương:

Kiểu dữ liệu XYZ chứa 3 giá trị X, Y, Z đại diện cho giá trị tọa độ một điểm, hoặc xác định một vector chỉ phương trong không gian ba chiều.

Origin: Gốc tọa độ của dầm

VectorX: Vector chỉ phương từ gốc tọa độ, song song với chiều dài dầm, có chiều dài là 1 đơn vị.

VectorY: Vector chỉ phương từ gốc tọa độ, song song với chiều rộng dầm, có chiều dài là 1 đơn vị.

VectorZ: Vector chỉ phương từ gốc tọa độ, song song với chiều cao dầm, có chiều dài là 1 đơn vị.

Ở phần 4, ta tìm hiểu cách để truy xuất các điểm tọa độ địa phương đối tượng.

XYZ

XYZ là kiểu dữ liệu định nghĩa một điểm hoặc một vector chỉ phương trong không gian mô hình Revit. Kiểu dữ liệu XYZ dùng để định nghĩa các thông tin tọa độ, vector chỉ phương của các đối tượng hình học trong Revit.

Định nghĩa XYZ trong thư viện Revit API:

Các thuộc tính tĩnh đại diện cho kiễu dữ liệu XYZ có thể truy xuất để lấy thông tin hệ tọa độ gốc của mô hình dự án.

Ngoài ra, thư viện Revit API còn cung cấp các toán tử và phương thức để hỗ trợ việc tính toán các đối tượng XYZ như:

Truy xuất các giá trị tọa độ X, Y, Z theo các phương trong hệ trục XYZ:

Truy xuất chiều dài Vector:

Di chuyển một điểm theo (hoặc ngược chiều) vector cho trước:

Phóng to, thu nhỏ độ lớn của một vector với một số:

Tích vô hướng, tích có hướng giữa hai vector:

StartPoint

Ở phần 3, ta đã truy xuất được đường dóng của dầm bằng thuộc tính Curve có trong LocationCurve.

Đường dóng của dầm thẳng là một đường thẳng gồm 2 điểm đầu và cuối. Truy xuất điểm đầu của Line bằng phường thức GetEndPoint(), truyền vào tham số giá trị là 0. (Lưu ý: giá trị là 1 sẽ trả về điểm cuối của Line).

zJustification

Tham biến zJustification quy định vị trí thực tế của dầm so với đường dầm.

Các giá trị của tham biến và giải thích:

–  Top: đường dóng nằm ở mặt trên dầm.

– Center, Origin: đường dóng nằm giữa dầm.

– Bottom: đường dóng nằm ở mặt dưới dầm.

Lấy giá trị của tham biến zJustification của đối tượng dầm:

Origin

Để di chuyển điểm đầu của đường dóng về gốc tọa độ địa phương được định nghĩa, ta cần di chuyển điểm ngược phương Y một đoạn bằng nửa chiều rộng, ngược phương Z một đoạn bằng chiều cao nhận với x (nếu giá trị tham biến zJustification là Top – x = 1; Center hoặc Origin – x=1/2; Bottom – x=0)

Tính toán hệ số x:

Tính toán gốc tọa độ:

Tọa độ tiết diện dầm

Từ hệ tọa độ, và kích thước các phương, ta có thể xác định tọa độ các tiết diện dầm như sau:

Kết quả

Sử dụng TaskDialog.Show() để xuất kết quả qua hộp thoại trong giao diện Revit, tương tự các phần trước.

 

Phần tiếp theo bắt đầu vẽ thép rồi nhé, các bạn nhớ theo dõi và ủng hộ series nhé.

Đoạn code hoàn chỉnh:

 

Bài viết liên quan