2014-01-28 122 views
4

我想用3D繪製不同厚度的線條。是否有可能做到這一點(即一行)? 到目前爲止,我能夠在繪製3D固定厚度的線路,例如:繪製不同厚度的線條

path_width = 5; 
plot3(path(:,1), path(:,2), path(:,3), '-', 'LineWidth', path_width); 

理想情況下,我想是因爲它是繪製線條的粗細變化。我有一個矢量(path_widths),其中包含我想要爲線條中的每個點顯示的厚度。任何建議是最受歡迎的

+4

我懷疑這是可能的。您應該將線段拆分爲段並分別爲每個段指定寬度。 – Mikhail

+0

是的 - 你必須拆分你的線。我會建議將所有片段放入一個'hggroup'中。 – sebastian

回答

1

這不是理想的,但你看這個:

hold on 
for k = 1:size(path,1) 
    plot3(path(k,1), path(k,2), path(k,3), 'o', 'LineWidth', path_widths(k)); 
end 

否則可能:

hold on 
for k = 1:size(path,1)-1 
    plot3(path(k:k+1,1), path(k:k+1,2), path(k:k+1,3), '-', 'LineWidth', path_widths(k)); 
end