两个3d矢量之间的弧

时间:2012-02-28 17:12:22

标签: matlab vector 3d plot

如何在3D Matlab图中简单地制作带标签的圆弧?我有两个3D矢量(plot :: Arrow3d),我想在它们之间命名一个角度,我想在3D图上显示它。

EDIT1: 我使用MuPad渲染我的绘图,我想通过plot :: Arc3d(1,[0,0,0],n,al..bet)绘制两个矢量之间的弧。其中n很容易找到。但我完全不明白弧形角度在3D处开始的位置。是否有人可以告诉我如何找到零角度。

1 个答案:

答案 0 :(得分:0)

简短回答,使用text功能。

看看这是否可以让你开始:

%A couple of random points in 3 space
xyz1 = randn(3,1);
xyz2 = randn(3,1);

%Set up a figure, and create "arrow" plots within
figure(3781);
clf;
hold on
quiver3(0,0,0,xyz1(1), xyz1(2), xyz1(3),0,'b')
quiver3(0,0,0,xyz2(1), xyz2(2), xyz2(3),0,'r')
view(3)

%Add a line connecting teh arrows, and a text label
plot3([xyz1(1) xyz2(1)], [xyz1(2) xyz2(2)], [xyz1(3) xyz2(3)],'k:')
xyzCenter = mean([xyz1 xyz2],2);
h = text(xyzCenter(1), xyzCenter(2), xyzCenter(3), 'Label text here');
set(h,'Color','b')
get(h);  %For more properties to set