Я пытаюсь построить двойной конус, который имеет определенную апертуру / угол апекса (скажем, тета) в MATLAB, как показано на рисунке ниже:
Моя попытка:
Конус описывается параметрически как:
F (s, t, u) = (u tan (s) cos (t), u tan (s) sin (t), u)
где s проходит от 0 до тета (диафрагма 2 * тета), t проходит от 0 до 2 * пи и u от 0 до h (высота).
s = linspace(0,theta);
t = linspace(0,2*pi);
[S,T] = meshgrid(s,t);
X = tan(S).*cos(T);
Y = tan(S).*sin(T);
Z = tan(S);
surf(X,Y,Z)
Я не был уверен, как добавить u ко всему этому, поэтому я просто сделал Z = tan (S). Это делает меня конусом, но я не уверен в том, что я здесь сделал ...
Помощь будет высоко ценится.