How to fill wing movement in 3d?

Hi,
I have a n-by-3 matrix of flapping wing tip path and a stationary base point (zeros(3,n)) - attached as 'wingtip.m'.
I want to use the 'fill3' function but I don't really understand how to use it in here.
I wish to fill the path in which the wing passes threw time.
The BAD way I did it so far is:
figure; hold on;
for i = 1:length(AA) % This is how the matrix in 'wingtip.m' is called
wing(1,1:3) = AA(i,1:3);
wing(2,1:3) = [0 0 0];
plot3(wing(:,1),wing(:,2),wing(:,3),'b','linewidth',10);
end

6 Commenti

DOesn't look like wing
load('wingtip.mat')
fill3(AA(:,1), AA(:,2), AA(:,3),'r')
img1.png
You missed the wing base...
darova
darova il 16 Giu 2019
What does it mean?
The wing that moves from t0 to t1 creates a triangle between AA(1,1:3), AA(1,4:6) and AA(2,1:3). This is the area I would like to use 'fill3' on. If you'll do it for an hellicopter, you will see a disk like shape from above (the aerea between blade tip and base, in time).
KSSV
KSSV il 17 Giu 2019
What coodinates correspond to wing?
AA(:,1:3) are wing tip trajectory, AA(:,4:6) is wing base that is stationary.

Accedi per commentare.

 Risposta accettata

Just made it happen:
for i = 1:length(AA)-1
fill3([AA(i,1);AA(i,4);AA(i+1,1)],...
[AA(i,2);AA(i,5);AA(i+1,2)],...
[AA(i,3);AA(i,6);AA(i+1,3)],'r','edgecolor','none')
hold on;
end
axis equal; grid on;
Thank you

2 Commenti

darova
darova il 17 Giu 2019
Modificato: darova il 17 Giu 2019
no need for loop
x = AA(:,1);
y = AA(:,2);
z = AA(:,3);
h = surf([x x*0]', [y y*0]', [z z*0]');
alpha(h,0.5)
set(h,'EdgeColor','none')
set(h,'FaceLighting','phong',...
'AmbientStrength',0.5)
light('Position',[1 0 0],'Style','infinite');
#EDITED
Even better,
Thanks,
Ziv

Accedi per commentare.

Più risposte (1)

KSSV
KSSV il 17 Giu 2019
This is what you are looking for?
load 'wingtip.mat'
t = AA(:,1:3) ;
wing = AA(:,4:6) ;
patch(t(:,1),t(:,2),t(:,3))

Categorie

Prodotti

Release

R2017a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by