Как построить купол в MATLAB с разными радиусами?

Мне нужно построить купол (или полусферу) с разными радиусами. Мне сказали, как нанести шпере на предыдущий вопрос:

[x,y,z] = sphere;      %# Makes a 21-by-21 point sphere 
x = x(11:end,:);       %# Keep top 11 x points 
y = y(11:end,:);       %# Keep top 11 y points 
z = z(11:end,:);       %# Keep top 11 z points 
r = 3;                 %# A radius value 
surf(r.*x,r.*y,r.*z);  %# Plot the surface 
axis equal;            %# Make the scaling on the x, y, and z axes equal 

Кто-нибудь знает, как построить купол (полусфера) в MATLAB ... или на любом другом языке программирования?

Но мне нужна высота x Компоненты Y и Z должны быть разными.

Как мне изменить код?

1
задан Community 23 May 2017 в 11:48
поделиться

1 ответ

Назовем радиус по x, y и z rx, ry и rz соответственно.

Затем вы вызываете функцию следующим образом

[x,y,z] = sphere;      %# Makes a 21-by-21 point unit sphere 
x = x(11:end,:);       %# Keep top 11 x points 
y = y(11:end,:);       %# Keep top 11 y points 
z = z(11:end,:);       %# Keep top 11 z points 
rx = 3;ry = 4;rz = 9;  %# Define rx, ry, rz
surf(rx*x,ry*y,rz*z);  %# Plot the surface, multiplying unit coordinates with radii 
axis equal;            %# Make the scaling on the x, y, and z axes equal 
2
ответ дан 2 September 2019 в 21:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: