2015-05-15 194 views
-4

我想在matlab中使用plot3绘制锥体的线条或边缘。请帮忙吗?我不需要表面。我只需要边缘。所以我可以在上面补上一些东西。一个有用的链接。但我需要在底部的圆: https://patentimages.storage.googleapis.com/US8514658B2/US08514658-20130820-D00021.png如何在matlab中绘制锥体的线条或边缘

很少水平线是好的。但没有倾斜的线,因为我需要修补里面的东西。

+0

这不是一个重复请仔细阅读。 – Creator

+0

我意识到这一点。如果您严格使用'plot3',那么这不是严格的重复。我正在收回我的投票,但另一个“黄金徽章”会员将其标记为重复。所以它关闭了。我已投票决定重新开放。 –

+0

那里有人吗?强制它重复... – Creator

回答

2

我认为这为w你想要的帽子。大部分答案直接来自@RTL的上述答案。

numRings = 2; 
numPointsAround = 100; 
[x,y,z] = cylinder(linspace(-1,0,numRings),numPointsAround); 
plot3(y.',x.',z.','-k') 
hold on;line([-0.5878;0], [0.809;0],[0;1]); 
hold on;line([0.9511;0], [-0.309;0],[0;1]); 
axis square 
+0

完美。非常感谢。 – Creator

3

cylinder是你的朋友在这里...
你只需要通过它的半径向量*和转输出* ...

*负半径趋向于零的将翻转的顺序,以便顶点在顶部...
*所以它吸引环不是线从底部到顶部

numRings = 10; 
numPointsAround = 100; 

[x,y,z] = cylinder(linspace(-1,0,nlines),numPointsAround); 
plot3(y.',x.',z.','-k') 

example output

+0

谢谢你的回答。它可能会帮助我,但实际上我需要在底部和侧面的两条直线。这就像从后面或前面看锥体。整个圆锥中的圆圈可能很好,但不是那么多。无论如何,谢谢你,我会将其标记为正确答案,以便你能得到积分。但你能帮我做我想做的事吗? – Creator

+0

@RTL我认为你的意思是'numRings'而不是'nlines'。 –