Calculate the angle between plane normal and a point it cuts
3 次查看(过去 30 天)
显示 更早的评论
I am trying to write a script that will calculate the angle between two 3D vectors. Specifically I have a plane cutting through a model where the centre of the plane cuts a point along the centreline of the model as shown in the attached image. One 3D vector is the plane normal e.g [0.21 0.98 0], the other 3D vector is the position of the point it cuts e.g [4.05 5.35 3.96]. By having this angle I will be able to adjust the plane to be perpendicular to the inlet of the model!
Any suggestions on how to achieve this are welcome!
Thanks
1 个评论
James Tursa
2019-10-9
编辑:James Tursa
2019-10-9
How can you determine the angle of the plane to the inlet by just knowing the centerline point of the inlet that it intersects? Seems like you need another point or something to give the direction of the inlet. Then you can find the angle between these vectors.
回答(1 个)
Fabio Freschi
2019-10-9
using the definition of dot product:
% angle function in radians
ang = @(u,v)acos(dot(u,v)/(norm(u)*norm(v)));
% data
u = [0.21 0.98 0];
v = [4.05 5.35 3.96];
% calculation
myangle = ang(u,v)
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!