Dot Product And Cross Product In Dynamo | Hồ Văn Chương

Mở đầu

Hôm nay mình sẽ nói về một dạng nho nhỏ để các bạn hiểu hơn về node Vector.DotVector.Cross trong Dynamo hay nói cụ thể hơn chính là Dot ProductCross Product trong RevitAPI mà mình đang tác chiến thực tế.

Nói nôm na theo tiếng việt thì nó chính là tích vô hướng(Dot Product) và tích có hướng(Cross Product) của hai vectơ.

Tích vô hướng được tính với một hàm cos còn tích có hướng được tính với một hàm sin.Thay vì mình đi tìm hiểu sâu hơn thì tốt hơn hết thì mình nên học cách áp dụng công thức đã chứng minh sẽ tốt hơn.Bài này mình sẽ nói về mặt phẳng không gian nhé.Còn muốn chọc sâu coi thử tại sao lại sin và tại sao lại là cos thì có thể xem tại đây

Tích vô hướng trả về một đại lượng góc hợp giữa hai vectơ còn có hướng thì trả về một giả vectơ mới với điều kiện là vuông góc với hai vectơ ban đầu.

Định nghĩa Dot Product

  • Định nghĩa được túm váy lại như sau:

  • Ví dụ về mặt phẳng 2D :

Từ ví dụ trên mà ta có thể biết luôn một tính chất của nó là hai vectơ vuông góc thì kết quả sẽ ra bằng 0 vì Cos(90) bằng 0, hehe.

  • Ví dụ với không gian 3 chiều Oxyz :

  • Thử đưa vô Dynamo coi có đúng không nhỉ :

Ở kết quả này ta thấy thêm một thông số nữa là chiều dài của tổng vectơ kia, chính là căn bậc hai bình phương của công thức trên mà ra.Vậy là hiểu rồi nhé 😁

Code thực tế sẽ như thế này để các bác dễ hình dung hơn :

This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode charactersShow hidden characters///

/// Return DotProduct of two Vector///

/// /// /// public static double Dot(Autodesk.DesignScript.Geometry.Vector vector,Autodesk.DesignScript.Geometry.Vector other){return vector.X * other.X + vector.Y * other.Y + vector.Z * other.Z;}view rawDotProduct.cshosted with ❤ by GitHubThis file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode charactersShow hidden characters///

/// Obtains the dot product of two vectors.///

/// Vector3./// Vector3./// The dot product.public static double DotProduct(this XYZ u, XYZ v){return u.X * v.X + u.Y * v.Y + u.Z * v.Z;}view rawDotProduct2.cshosted with ❤ by GitHub

Định nghĩa Cross Product

Tích có hướng là một phép toán nhị nguyên trên các vectơ trong không gian vectơ ba chiều. Nó là một trong hai phép nhân thường gặp giữa các vectơ (phép toán kia là nhân vô hướng). Nó khác nhân vô hướng ở chỗ là kết quả thu được là một giả vectơ thay cho một vô hướng. Kết quả này vuông góc với mặt phẳng chứa hai vectơ đầu vào của phép nhân.

Đọc cái trên là đọc chơi cho biết chứ mà mình không áp dụng thì sớm muộn gì cũng bay theo gió mà thôi, cái mà hồi xưa mình đi học bị gọi là nước đổ đầu vịt ấy 😁.

  • Cùng xem một ví dụ không gian 3 chiều thử có gì vui không :

  • Kiếm tra trên Dynamo luôn cho nóng 😁 :

Kết quả thành công mĩ mãn mà không cần phải ngồi bấm máy tính nữa rồi.Vậy là giờ hiểu tại sao lại có kết quả như trên rồi nhé.

Code thực tế sẽ như thế này :

This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode charactersShow hidden characters///

/// Cross Product Vector///

/// /// /// public static Autodesk.DesignScript.Geometry.Vector Cross(Autodesk.DesignScript.Geometry.Vector vector,Autodesk.DesignScript.Geometry.Vector other){var x = vector.Y * other.Z – vector.Z * other.Y;var y = vector.Z * other.X – vector.X * other.Z;var z = vector.X * other.Y – vector.Y * other.X;Autodesk.DesignScript.Geometry.Vector v = Autodesk.DesignScript.Geometry.Vector.ByCoordinates(x, y, z);return v;}view rawCrossProduct.cshosted with ❤ by GitHubThis file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.Learn more about bidirectional Unicode charactersShow hidden characters///

/// Obtains the cross product of two vectors.///

/// Vector3./// Vector3./// Vector3.public static XYZ CrossProduct(this XYZ u, XYZ v){double a = u.Y * v.Z – u.Z * v.Y;double b = u.Z * v.X – u.X * v.Z;double c = u.X * v.Y – u.Y * v.X;return new XYZ(a, b, c);}view rawCrossProduct2.cshosted with ❤ by GitHub

Mở rộng

Chuyện kể rằng : Anh vô hướng còn được gọi là Anh vô bờ bến không có nhà cửa và vợ con như ông có gia đình kia.Một ngày nọ, hai Anh vô hướng gặp lại nhau và ngồi tâm sự, và rồi câu chuyện thực tế bắt đầu từ đây.

Một ví dụ đơn giản là kiểm tra hai Vectơ đó là cùng hướng hay ngược hướng để các bác tự nghiệm mà làm thử nhé, nếu nó cùng hướng với nhau thì góc thu hẹp nhỏ nhất là 0 và ngược hướng thì góc thu hẹp là 180 độ.

Chúc các bác thành công.

Bên trên chỉ là vắn tắt nhỏ của mình lại để mọi người đọc sơ cũng có thể hiểu, còn muốn chuyên sâu hơn thì các bác xem thêm tại các link bên dưới nhé.Cám ơn các bác đã đọc bài viết.

Tham khảo

Cross Product

Dot Product

apecceosummit2017

loigiaihay.com

Related Posts

Xét nghiệm Giải phẫu bệnh – Dẫn đường cho việc điều trị

Xét nghiệm giải phẫu bệnh được thực hiện trên những mẫu bệnh phẩm tế bào, bệnh phẩm mô từ các cơ quan trong cơ thể được sinh…

Phương pháp điều trị tủy răng tại nha khoa hiện nay

Viêm tủy răng là một trong những vấn đề về sức khỏe răng miệng nghiêm trọng. Người mắc viêm tủy răng không chỉ phải chịu đựng những…

Mỹ thuật ứng dụng là gì? (cập nhật 2023)

Khi những giá trị thẩm mỹ ngày càng được chú trọng thì các phẩm mỹ thuật ứng dụng ngày càng đi sâu vào đời sống của mọi…

Bát quái đồ là gì? Ý nghĩa và vai trò của bát quái trong phong thủy

Bát quái đồ là vật phẩm phong thủy được sử dụng khá rộng rãi và phổ biến trong văn hoá phương Đông, nhằm mang lại những niềm…

Du học ngành khoa học ứng dụng và cơ bản

>> Du học ngành khoa học đại cương >> Các trường có đào tạo ngành Khoa học ứng dụng và cơ bản Khoa học Ứng dụng và…

Trồng răng implant là gì? Những điều cần phải biết trước khi chọn trồng răng implant

Trồng răng implant là phương pháp trồng răng cấy trụ kim loại vào xương hàm để thay thế cho răng đã mất. Chính vì vậy trụ implant…