Trung Tâm Revit Thực Hành NPD 4.2.1-Chọn đối tượng bằng chuột 601/1 Lô A, CMT8, P15, Q10, TP.HCM 6,000,000VND/Khóa +84-913-875-375 Trung Tâm Revit Thực Hành NPD

Ths.KTS NGUYỄN PHƯỚC DỰ

Tài liệu học Revit, Tác giả : ThS.KTS.Nguyễn Phước Dự

PHƯƠNG THỨC CHỌN ĐỐI TƯỢNG BẰNG CHUỘT

 
Vài phương thức cơ bản chọn đối tượng bằng chuột mà chương trình yêu cầu người dùng thực hiện bằng chuột.
  1. Chọn đối tượng:

Trên màn hình, chúng ta có hai cách dùng chuột cơ bản để chọn đối tượng là dùng chuột Click vào đối tượng:

  • Click chuột vào đối tượng để chọn.

Khi thực hiện lệnh, phần mềm yêu cầu người dùng bằng dòng lệnh và hiển thị dòng nhắc bên dưới thanh trạng thái góc trái màn hình "Chọn một đối tượng". Chuột hiển thị trạng thái sẵn sàn để Click vào và chọn một đối tượng duy nhất. Nếu bấm vào vùng trống phần mềm sẽ nhắc tiếp cho đến khi chúng ta chọn được một đối tượng. Khi đó dữ liệu trả về là một đối tượng duy nhất nhưng chưa"phân" loại rõ ràng gọi là tham chiếu "Reference", Ví dụ:

[Code]
Reference elem = uiApp.ActiveUIDocument. Selection.PickObject( "Chọn một đối tượng.");
[/Code]

Sau khi nhận được đối tượng chưa phân loại là Reference, chúng ta thử ép nó thuộc loại ta mong muốn. Ví dụ ta muốn nó phài là Floor,Ví dụ::

[Code]
Floor floor = (Floor)doc. GetElement(elem.ElementId);
[/Code]

Tất nhiên muốn người dùng chọn loại đối tượng nào thì chúng ta phải thông báo rõ trong dòng nhắc, ví dụ:

[Code]
Reference elem = uiApp.ActiveUIDocument. Selection.PickObject( "Chọn một đối tượng sàn.");
[/Code]

  • Vẽ một hình chữ nhật bằng cách Clich chuột trái vào vùng trống của hai điểm trên màn hình để chọn:

Khi thực hiện lệnh, phần mềm sẽ nhắc người dùng chọn nhiều đối tượng bằng phương thức vẽ cửa sổ hình chữ nhật. Tùy theo cách vẽ từ trái qua hay từ phải qua, các đối tượng được chọn sẽ trả về cho chương trình thành một tập hợp. Khi đó kiểu dữ liệu khai báo phải là Ilist, tức là một danh sách đối tượng.Ví dụ:

[Code]
IList DSDoiTuongChon  = uiApp.ActiveUIDocument. Selection. PickElementsByRectangle( "Chọn các đối tượng...");
[/Code]

​Trong nhiều trường hợp, chúng ta cần chọn một tập hợp nhiều đối tượng hay muốn việc chọn đối tượng linh hoạt hơn là chọn tùng đối tượng, thì nên dùng cửa sổ hình chữ nhật để quét. Lúc đó đối tượng sẽ là một tập hợp và chúng ta dùng hàm foreach duyệt qua từng đối tượng để xử lý. Ví dụ:

[Code]
foreach (elem element in DSDoiTuongChon  )
    {     
  Floor floor = (Floor)doc. GetElement(elem.ElementId);   
// Phần xử lý tiếp theo...
}
[Code]
  • Chọn trong một tập hợp đã chọn trước khi thực hiện lệnh:
[Code]
ICollection selectedIds = uidoc. Selection.GetElementIds();
[/Code]

Nếu muốn sử dụng các phương thức chọn linh hoạt mà người dùng thông thạo trong giao diện mà Revit cung cấp, hay chỉnh sủa một số đối tượng, hãy cứ để cho người dùng chọn trước, sau đó mới thực hiện lệnh. Việc này thường là thuận theo thói quen người dùng là: Khi muốn sửa một hay nhiều đối tượng nào thì chọn đối tượng đó trước khi thực hiện lệnh.

Tất nhiên sau đó chúng ta dùng lệnh foreach như ví dụ trên để duyệt và xử lý đối tượng.

  1. Chọn điểm

Ngoài việc chọn đối tượng, nhiều lệnh cần xác định một điềm để xử lý. Người dùng được yêu cầu chọn điểm. Ví dụ:

[Code]
XYZ pt = uiApp.ActiveUIDocument. Selection.PickPoint( "Chọn một điểm");
[/Code]
Khi đó dữ liệu trả về cho chương trình là một điểm với loại dữ liệu XYZ.
 
XYZ là loại dữ liệu chứa các thuộc tính của điểm pt(x,y,z) và nhiều thuộc tính liên quan khác.
 
 

 


Sách học Revit, Tác giả : ThS.KTS.Nguyễn Phước Dự

(Nhấn Ctrl+V để Paste ảnh từ Clipboard)
Khách Đăng nhập