Дуга между двумя 3d векторами - PullRequest
1 голос
/ 28 февраля 2012

Как я могу просто сделать дугу с меткой на 3D-графике Matlab?У меня есть два 3D-вектора (plot :: Arrow3d), и я хочу назвать угол между ними и показать его на 3D-графике.

Edit1: Я использую MuPad для рендеринга моегорисуя, я предполагаю нарисовать дугу между двумя векторами сюжетом :: Arc3d (1, [0,0,0], n, al..bet).где n просто найти.Но я совершенно не понимаю, где начинается угол дуги в 3D.Может ли кто-то показать мне, как найти нулевой угол.

1 Ответ

0 голосов
/ 28 февраля 2012

Краткий ответ, используйте функцию 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...