OneBIM.vn
Kết Nối và Chia Sẻ

Bài 7 : Hình học và tọa độ trong Dynamo

Mình biết những bài hướng dẫn đầu tiên này mọi người đọc có thể cảm thấy nhàm chán , toàn chữ là chữ , lí thuyết xuông …v.v . Đại đa số nhiều người đều có ý muốn là sẽ được hướng dẫn ngay các việc cụ thể như mình giới thiệu trong bài 0 . Mình cũng đã cố gắng hướng dẫn cho một số người cách làm cụ thể của một số việc thực tế nhưng đến cuối cùng họ chỉ làm được những việc đó mà không có khả năng tư duy phát triển vấn đề , không có khả năng tư duy khi gặp 1 vấn đề mới . Vì thế hy vọng những ai mới bắt đầu chịu khó 1 chút với những bài đầu tiên này để có được nền tảng thì mới làm chủ được Dynamo. Sau này mình sẽ cố gắng bổ sung những bài hướng dẫn cụ thể và chỉ ra tác dụng của các bài các bạn đã học .

A. Tổng quan về hình học trong Dynamo

Trong các phần mềm đồ họa nói chung hay Dynamo nói riêng thì hình học giống như một ngôn ngữ để ta có thể thiết kế trong môi trường máy tính và cũng là những đối tượng các KS ,KTS dùng nói chuyện với nhau  để hiểu rõ thiết kế của nhau . Cơ bản như :

-Như các bạn thấy , hình học trong Dynamo cũng tuân theo những quy luật rất cơ bản mà chúng ta đã được học ở cấp học phổ thông như  :  qua 2 điểm bất kì tạo thành 1 đường thẳng, qua 3 điểm không thẳng hàng bất kì tạo thành mặt phẳng …. hay những định lý có tính ứng dụng cao hơn trong làm việc thực tế với Dynamo như  : Giao tuyến giữa 2 mặt phẳng (nếu có) là 1 đường thẳng , Giao giữa đường thẳng và mặt phẳng (nếu có) là 1 điểm …

–  Nhìn chung hình học có thể phân làm 2 loại chính là loại Trừu Tượng hay Abstract và loại Không Trừu Tượng ,tất cả trong Dynamo có thể gọi là đối tượng Geometry.Nói thế chắc nhiều bạn đọc xong muốn chém mình ngay :v . Nói nôm na Trừu Tượng” là 1 loại hình học không quan sát được  mà ta chỉ hình dung hay tưởng tượng nó ở trong đầu ví dụ như Vector, “Không Trừu Tượng” là loại ta  quan sát được thấy ngay ví dụ như khi ta vẽ 1 đường Line chả hạn.Bạn nào có cách giải thích hay hơn thì góp ý cho mọi người nhé !

-Như chúng ta đã biết thì cái gì nhìn thấy được thì thường không hấp dẫn và quan trong bằng những gì không nhìn thấy được .Các lỗi sai do các đối tượng trừu tượng gây ra thường nhiều hơn và khó phát hiện hơn loại không trừu tượng .  Vì thế chú ý nhiều đến loại hình học Trừu tượng sẽ giúp các bạn tránh được nhiều lỗi sai và giải quyết được nhiều bài toán khó .

B. Vector, Mặt Phẳng, Hệ Tọa Độ trong Dynamo

1.Vector

– Hiểu một cách đơn giản Vector dùng để xác định phương và chiều trong không gian . Việc xác định đúng Vector  trong Dynamo là cục kì quan trọng khi làm việc với các Model trong Revit . Có rất nhiều các để xác định 1 Vector ,sau đây là 1 số node hay dùng trong thực tế công việc , hiểu và sử dụng tốt Vector là chìa khóa cho những bài toán khó :

Vector là “Trừu Tượng” ,chúng ta tạo ra nó nhưng không sờ mó gì được nó , nên bạn thường phải tưởng tượng ra hướng của nó , tuy vậy nếu bạn muốn nhìn thấy nó 1 cách tương đối thì có thể biến nó trở nên hữu hình hơn bằng mẹo tạo ra 1 đường Line trong Dynamo :

2. Point,Curve,Surface,Solid…

– Chúng ta quan sát 1 đối tượng rất đơn giản là dầm có tiết diện hình chữ nhật và bóc tách nó   :

-Dầm là 1 hình khối (thể hiện bằng đối tượng solid trong Dynamo)

– 6 mặt (Face) tạo khép kín tạo thành khối

– Mỗi mặt được tạo thành từ 4 cạnh(Edge) nối kín .

– Mỗi cạnh được tạo thành từ 2 điểm (Point) đầu và cuối

Hình học trong Revit và Dynamo là khác nhau , cái bạn nhìn thấy trong hình trên thực chất là 1 bản sao của cái dầm bạn chọn trong Revit , Node Element.Geometry thực tế là chuyển kiểu dữ liệu từ Revit sang Dynamo hay có thể nói là tạo ra 1 bản sao trong môi trường Dynamo để chúng ta có thể dùng các Node trong Dynamo để thao tác với hình học này .  Nếu để nguyên kiểu dữ liệu trong Revit thì sẽ không dùng được 1 số Node trong Dynamo ,các Node Select.Face,Select.Edgle thực tế đã tự chuyển Face,Edge trong Revit thành Surface và Curve cho chúng ta nên ta không cần chuyển .

– Như vậy khi tạo 1 cái gì đó trong Revit mà muốn chuyển vào Dynamo ,hay tạo trong Dynamo mà muốn chuyển vào Revit thì luôn luôn cần những Node giúp ta chuyển đổi , vị dụ như ta tạo các đường Curve rồi chuyển thành thép trong Revit chả hạn . Điều mình nói ở đây sẽ trở nên nhảm nhí với những người mới bắt đầu , nhưng những kiểu hình học trong Dynamo như Point,Curve,Surface mới là gốc dễ của các vấn đề , hiểu được cấu tạo đối tượng sẽ giúp các bạn giải quyết các bài toán cực khó ,tối ưu hóa được Revit.

3 .Điểm trong Dynamo (Point)

Điểm là gốc dễ của mọi vấn đề , đơn giản như chúng ta cần 2 điểm để có được 1 đường Line, chúng ta cần 3 điểm để xác định một mặt phẳng ….Điểm trong Dynamo thường có có các thông số X,Y,Z trong hệ tọa độ chuẩn Euclide mà chúng ta vẫn hay dùng . Ngoài ra điểm còn được xác định theo hệ tọa độ tham số đường và hệ tọa độ tham số mặt sẽ được nói tới ngay sau đây.

1.Điểm trong hệ tọa độ trực giao XYZ

2 .Điểm theo tham số đường

3.Điểm theo tham số mặt

4. Đường trong Dynamo (Curve)

Curve trong Dynamo là tên gọi đại diện cho tất cả các loại đường cong như cung tròn , Elip,đường tròn,đường Parapol ………….đường thẳng cũng chỉ là 1 dạng đặc biệt của đường cong mà thôi .

-Điều cần lưu ý trong Dynamo khi làm việc với Curve là 2 điểm đầu cuối của Curve đang làm việc và kiểu tọa độ tham số đường dùng để xác định 1 điểm bất kì trên Curve đó . Cho dù Curve của chúng ta hình dạng  gì thì điểm đầu của nó có giá trị tham số đường là 0, điểm cuối có giá trị tham số đường là 1 . Như vậy dễ dàng suy ra tham số của các điểm ở giữa nằm trong khoảng 0 đến 1 . Nếu bạn thấy hình như nó tỉ lệ với chiều dài đường Curve thì bạn đúng rồi đấy !

  Vậy ứng dụng của kiểu tọa độ tham số này thế nào ?

Hãy thử tưởng tượng bạn cần chia điểm cho một đường cong để định vị tim thanh thép hay thứ gì đó chả hạn  :

Một lưu ý rằng các điểm được chia sẽ vẫn mang tọa độ theo hệ trực chuẩn , các bạn hạy thử tìm hiểu cách chuyển qua lại giữa các hệ tọa độ xem sao nhé !

5. Mặt trong Dynamo (Surface)

– Surface là dạng đối tượng đại diện cho bề mặt của đối tượng trong Dynamo , nó có một số thông số cần chú ý là : Vector pháp tuyến mặt ,hệ tọa độ mặt U,V của mặt đó .

 

1.Đường bao kín của mặt

2.Đường biểu diễn theo tọa độ mặt U

3.Đường biểu diễn theo tọa độ mặt V

4.Điểm xác định bởi giao giữa 2 đường U,V

5.Mặt phẳng vuông góc với Vector tại điểm xác định bới tọa độ U,V

6.Vector pháp tuyến của cả 2 đường U,V tại giao điểm 2 đường U,V

-Để dễ hình dung tọa độ U,V bạn quan sát hình sau :

-Thực ra còn có cả tọa độ W hình thành hệ U,V,W nhưng thực tế ít dùng .  Ứng dụng hay dùng nhất của phần này là xác định vector vuông  góc với mặt tại 1 điểm nào đó , nếu mặt đó phẳng thì bạn lấy điểm nào cũng được vì các vector song song mà .

Ứng dụng :Thường thì ta sẽ dùng 1 điểm trên mặt để phân biệt các mặt với nhau khi làm việc.

6. Mặt phẳng trong Dynamo (Plane)

-Như chúng ta đã biết thì mặt phẳng là vô hạn ,tuy vậy mặt phẳng cũng có điểm gốc (Origin) ,từ điểm gốc này chúng ta có thể định nghĩa 2 Vector theo trục X và Y và tất nhiên mặt phẳng cũng có Vector pháp tuyến của nó chính là trục Z theo hệ tọa độ người dùng tự định nghĩa . Bạn có thể dùng điểm Origin làm gốc tọa độ hoặc chọn 1 điểm khác trên mặt phẳng tiện cho việc xác định các điểm khác.

Bạn có thể cần đến node này để xác định điểm theo hệ tọa độ mới rồi chuyển sang hệ tọa độ thực tế sau  :

– Nhưng mình nói thế để làm gì mới được chứ  ?

-Có lẽ ai sử dụng Revit cũng đã từng Set mặt phẳng làm việc để vẽ rồi , việc Set mặt phẳng giúp ta vẽ chính xác theo âm mưu ban đầu , trong Dynamo cũng thế , trước khi vẽ bạn cần biết chắc chắn đối tượng mình vẽ thuộc mặt phẳng nào thì mới có thể vẽ chính xác .

–  Ứng dụng đơn giản nhất bạn có thể nghĩ ra là có thể đặt các đối tượng Tag, Dim , Text theo ý mình trên 1 View, để tiện cho việc này bạn nên định nghĩa 1 hệ tọa độ riêng. Như vậy muốn đặt chính xác ta cần tọa độ X,Y,Zmặt phẳng View, bạn có thể định nghĩa 1 hệ tọa độ riêng để các tọa độ X,Y,Z tiện cho việc đặt kiểu như (100,150,0) thay vì cố gắng tính toán theo tọa độ thực kiểu như (234523424,565353453,53534), rồi dùng phép chuyển trục để chuyển về hệ tọa độ thực tế trong Dynamo , bạn lưu ý rằng các đối tượng 2d tuy chỉ hiện trên mặt phẳng nó được vẽ nhưng vẫn có tọa độ 3d như thường ,tức là có đủ X,Y,Z. Phần chuyển hệ tọa độ bạn có thể xem ở phần dưới.

– Vẫn còn nè : Sheet cũng là 1 mặt phẳng được định nghĩa trước ,điểm gốc của nó thường là ở dưới cùng bên trái khung bản vẽ , nó có nghĩa với 1 trang A3 (420 x 297) thì vị trí một Viewport nào đó thì vị trì có tọa độ (210,150) sẽ nằm ở khoảng chính giữa của khung bản vẽ ,Bạn có thể tìm cách dàn 6 mặt cắt vào 1 trang Sheet bằng những gì mình chia sẻ chứ ?

Phần này có lẽ làm khó các bạn mới bắt đầu quá !

7. Hệ tọa độ trong Dynamo

– Mặc định điểm gốc (0,0,0) trong Dynamo chùng với điểm Project Point trong Revit ,  thường thì mình thấy nhiều bạn làm việc có vẻ không cần tọa độ thực tế hay sao mà thấy điểm Survey Point cũng chùng luôn . Tuy vậy phần này mình sẽ không nói đến vì nó là kiến thức về Revit mà các bạn phải biết .

– Điều mình muốn lưu ý trong phần này là về “ Hệ tọa độ trực giao của phần tử” . Đây mới chính là hệ tọa độ ta làm việc nhiều nhất để có thể tự động hóa chính xác được nhiều công việc như dải thép chả hạn .  Hệ tọa độ này bạn khong nhìn thấy nhưng nó vẫn luôn đi cùng phần tử khi bạn đặt nó vào Project Revit , dù bạn xoay , Move đối tượng thế nào đi nữa thì nó vẫn vuông góc giống như khi bạn thiết kế nó trong môi trường Family vậy :

– Bạn có thể thấy dù mình xoay cái móng thế nào trong Project thì hệ tọa độ phần tử X,Y,Z vẫn vuông góc với các cạnh .Bạn đã bao giờ thấy khó chịu khi phải ngồi cắt 1 mặt cắt vuông góc với một cạnh của 1 phần tử nào đó chưa ? Với hệ tọa độ phần tử này bạn có thể tự động cắt các mặt mà có thể chắc chắn nó vuông góc với đối tượng , bạn có thể đặt những cấu kiện khác theo hệ tọa độ này lên trên phần tử mà không cần phải tính toán xem tọa độ thực là thế nào .

-Hazzzi nói nhiều quá toàn sang Revit thế này , các bạn tải gói Bim4Struc mới nhất ,vào mục Productivity để dùng ngay Node gọi hệ tọa độ phần tử Element.LocationCoordinateSystem nhé !

Thôi quay về Dynamo , Bạn có thể tự định nghĩa hệ tọa độ của mình rồi chuyển tọa độ các phần tử về theo hệ tọa độ đã định nghĩa bằng cách sau :

-Có thể nhiều bạn mới dùng chưa thấy được tầm quan trong của việc chuyển hệ tọa độ nhưng nó là 1 bước hay làm trong công việc , mình sẽ lấy 1 ví dụ nhỏ ở cuối hướng dẫn này để các bạn hiểu hơn.

Mình biết phần này khá khó hiểu và cũng do cách diễn đạt của mình kém nhưng hy vọng những chia sẻ này có thể giúp được mọi người phần nào trong các bài toán tự động hóa. Nếu có bất kì ý kiến góp ý mong các bạn tích cực phản hồi để cùng nhau học hỏi . Bạn có thể trực tiếp góp ý tại bài viết hoặc tham gia diễn đàn https://forum.onebim.vn/ 

Nhóm Facebook : https://www.facebook.com/groups/871336123015913/

Khóa học do tác giả làm giảng viên các bạn tìm hiểu thêm tại  https://redy.vn/course/ung-dung-revit-dynamo-bim/

 

Comments
Loading...