plotting normal vector in 3d

25 次查看(过去 30 天)
I have three points P0=[x0,y0,z0], P1=[x1,y1,z1] P2=[x2,y2,z2] and I want to calculate the normal out of them what I did is
normal = cross(P0-P1, P0-P2);
and then I wanted to plot the normal so what I did is,
c = normal + P0 %end position of normal vector
quiver3(P0(1), P0(2), P0(3), c(1), c(2), c(3)); but it didn't work any suggestions please
%......Edited

采纳的回答

Matt Kindig
Matt Kindig 2013-7-30
  11 个评论
Matt Kindig
Matt Kindig 2013-7-31
Then what I said above is correct. Your dot product is as close to zero as you'll be able to calculate. In other words, your calculated vector (from the cross product) is as close to normal to the plane as you'll be able to get.
I'm not really sure what else to say. Your code is correct, your answer is correct, and that's that. Read http://docs.oracle.com/cd/E19957-01/806-3568/ncg_goldberg.html for why exact floating-point calculations are not possible with a computer.
Jack_111
Jack_111 2013-8-1
Thank you for your support

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Floating-Point to Fixed-Point Conversion 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by