How can I generate a 3D torus taking a function as the torus shape?
13 ビュー (過去 30 日間)
古いコメントを表示
I'd like to graph a 3d surface with a torus like aspect from this function
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1512989/image.png)
This function generates the top half of an ellipse, I thought of an approach of revolving this function around the y-axis and then doing the same process with the same function multiplied by -1, but, I wouldn't know how to plot this inside Matlab.
Thanks.
3 件のコメント
Dyuman Joshi
2023 年 10 月 19 日
Please refer to this link - https://en.wikipedia.org/wiki/File:Ring_Torus_to_Degenerate_Torus_(Short).gif
You can see that there are two rings (red color ones) that define a torus.
Generally, the inner ring, the one that revolves around, is a circle. You can use a non-circular ellipse in place of it.
So, you can use the same ellipse for both the rings, but the outcome might not be aesthetic (for the lack of a better word).
回答 (1 件)
KSSV
2023 年 10 月 17 日
R1 = 3 ;
R2 = 1 ;
u = linspace(0,2*pi-eps) ;
v = linspace(0,2*pi-eps) ;
[u,v] = meshgrid(u,v) ;
X = (R1+R2*cos(v)).*cos(u) ;
Y = (R1+R2*cos(v)).*sin(u) ;
Z = R2*sin(v) ;
surf(X,Y,Z)
axis equal
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Annotations についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!