簡體   English   中英

如何在MATLAB中計算線與平面之間的角度?

[英]How to compute angle between a line and a plane in MATLAB?

在ℝ³中給出了五個點ABCDE 如何計算線DEABC定義的平面之間的角度?

我理解這個問題,但不知道如何在MATLAB中進行編程。 我是MATLAB的新手,所以詳細的信息將非常有幫助。 這是我嘗試過的,但是給了我錯誤的輸出:

point1 = cross(B-A, C-A);
point2 = cross(D, E);
point3 = cross(point1, point2);
point4 = sqrt(A.*A + B.*B + C.*C);
point5 = sqrt(D.*D + E.*E)

point6 = point4*point5;
final  = point3 / point6

你去:

%// normal vector to plane ABC
N = cross(B-A, C-A);

%// angle between plane and line, equals pi/2 - angle between D-E and N
alpha = abs( pi/2 - acos( dot(E-D, N)/norm(N)/norm(E-D) ) );

%// you probably want it in degrees: 
alpha = rad2deg(alpha);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM