كيف يمكنني العثور على ناقل الوحدة بين نقطة وخط؟

StackOverflow https://stackoverflow.com/questions/3646181

سؤال

لدي ثلاثة معروفة 3 الأبعاد نقاط: A, B, ، و C.

الإضافة ، لدي نقطة رابعة ، X.

X يكمن على المتجه AB هذا المتجه CX عمودي على المتجه AB. لذا AB · CX = 0

كيف أجد وحدة ناقلات CX؟


حالة الاستخدام هنا هي أنني أقوم ببناء مصفوفة دورانية (مترجمة) ، حيث يكون الأصل A ، يمر المحور z عبر B ، ويمر بلان XZ thtough C ، والمحاور متعامدة

لديّ أيضًا كائن متجه يوفر وظائف منتج ونقاط متشابكة تحت تصرفي.

هل كانت مفيدة؟

المحلول

يترك

U = (B-A)/||(B-A)||

كن متجهًا على طول الخط من A إلى B ، حيث ||X|| يدل على طول المتجه X. الآن يمكننا تحديد الخط بأكمله بواسطة

A + tU

ونريد

((A + tU) - C)*U = 0

لهذا السبب.

A*U - C*U + t = 0
t = C*U - A*U

لذلك قمنا بحل ل t, والآن ندعنا

V = (A+tU - C)/||A+tU - C||

ولدينا متجه الوحدة على طول الخط ، U, ، وواحد متعامد لذلك ، V.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top