绘制3维人体模型的matlab代码
生活随笔
收集整理的這篇文章主要介紹了
绘制3维人体模型的matlab代码
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
繪制頭-軀干-腿-臂可以獨(dú)立控制角度和姿態(tài)的代碼,待下一步加入肢體聯(lián)動(dòng)功能。
r0=1; %% radius h0=6; %% height自已調(diào)整高度 NN=25; cla [X,Y,Z]=cylinder(r0,NN); Z=h0*Z; XX=X(2,: ); YY=Y(2,: ); Z1=Z(1,: ); Z2=Z(2,: ); N=6; %自己修改數(shù)目 % rotate this cylinders by Euler angles (th1,th2,th3) 自己改傾斜角 TH1 = [0,0,0,0,0,90]/180 *pi; TH2 = [150,-150,0,80,-80,30]/180 *pi; TH3 = [0,0,0,0,0,0,0]/180 *pi; %%% centers of the cylinders,自已修改柱中心坐標(biāo) %x=[-4*cos(TH2(2))-6*cos(TH2(1)),-4*cos(TH2(2)),4*cos(TH2(3))]; %y=[0,2,4]; %z=[-4*sin(TH2(2))-6*sin(TH2(1)),-4*sin(TH2(2)),4*sin(TH2(3))]; x=[0,0,0,0,0,0]; y=[-2,2,0,-2,2,0]; z=[-4,-4,-3,3,3,4]; hold off; for k=1:N th1=TH1(k);th2=TH2(k);th3=TH3(k); R1=[cos(th1),-sin(th1),0;sin(th1),cos(th1),0;0,0,1]; R2=[1,0,0;0,cos(th2),-sin(th2);0,sin(th2),cos(th2)]; R3=[cos(th3),-sin(th3),0;sin(th3),cos(th3),0;0,0,1]; A=R1*R2*R3; for i=1:NN+1 r=[X(1,i),Y(1,i),Z(1,i)]'; rT=A*r; XC(1,i)=rT(1);YC(1,i)=rT(2);ZC(1,i)=rT(3); r=[X(2,i),Y(2,i),Z(2,i)]'; rT=A*r; XC(2,i)=rT(1);YC(2,i)=rT(2);ZC(2,i)=rT(3); r=[XX(i),YY(i),Z1(i)]'; rT=A*r; XX1C(i)=rT(1);YY1C(i)=rT(2);Z1C(i)=rT(3); r=[XX(i),YY(i),Z2(i)]'; rT=A*r; XX2C(i)=rT(1);YY2C(i)=rT(2);Z2C(i)=rT(3); end hold on;fill3(XX1C+x(k),YY1C+y(k),Z1C+z(k),[0.1 0.1 0.1+k/(5*N)],'EdgeColor','none'); hold on;fill3(XX2C+x(k),YY2C+y(k),Z2C+z(k),[0.1 0.1 0.1+k/(5*N)],'EdgeColor','none'); hold on;XC=XC+x(k);YC=YC+y(k);ZC=ZC+z(k); surf(XC,YC,ZC,'FaceColor','green','EdgeColor','none'); end grid on; daspect([1 1 1]) view(3); axis equal camlight lighting gouraud x1=xlabel('X'); %#x軸標(biāo)題 x2=ylabel('Y'); %#y軸標(biāo)題 x3=zlabel('Z'); %#z軸標(biāo)題 set(x1,'Rotation',30); %#x軸名稱旋轉(zhuǎn) set(x2,'Rotation',-30); %#y軸名稱旋轉(zhuǎn)總結(jié)
以上是生活随笔為你收集整理的绘制3维人体模型的matlab代码的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 路由器密码太弱,IP 被黑客利用发虐童图
- 下一篇: java 使用mediainfo_使用m