function  [Ref,centromassa]=DH_Direita(manip_D,Angulos,n_inc,inc,cmassa,Ref,centromassa);
n_elos=size(manip_D,1);                                                 % numero de elos deste "manipulador"
inicio=24;                                                              % posiçao "deste manipulador" (pernas) no "manipulador global" (robot)
manip_D(:,1)=manip_D(:,1)+Angulos(inicio:n_elos+inicio-1,1)+(Angulos(inicio:n_elos+inicio-1,2)-Angulos(inicio:n_elos+inicio-1,1))*inc/(n_inc+1);
centromassa_D(1:4,1:n_elos)=0;                                          % centros de massa locais
                                                                        %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% CALCULO DE TODO O MANIPULADOR
Ref_D(:,:,1)=Ref(:,:,20);                                               % o referencial inicial ´e no tronco a altura dos ombros
for i=1:n_elos;                                                         % determino DH para todos os elos (i->numero do elo)
	        theta=manip_D(i,1);                                         %   "
	        alfa=manip_D(i,2);                                          %   "
	        l=manip_D(i,3);                                             %   "
	        d=manip_D(i,4);                                             %   "
	        DH_D(1,1,i)=cos(theta);                                     %   "
        	DH_D(1,2,i)=-sin(theta)*cos(alfa);                          %   "
        	DH_D(1,3,i)=sin(theta)*sin(alfa);                           %   "
        	DH_D(1,4,i)=l*cos(theta);                                   %   "
        	DH_D(2,1,i)=sin(theta);                                     %   "
        	DH_D(2,2,i)=cos(theta)*cos(alfa);                           %   "
        	DH_D(2,3,i)=-cos(theta)*sin(alfa);                          %   "
        	DH_D(2,4,i)=l*sin(theta);                                   %   "
        	DH_D(3,1,i)=0;                                              %   "
        	DH_D(3,2,i)=sin(alfa);                                      %   "
        	DH_D(3,3,i)=cos(alfa);                                      %   "
        	DH_D(3,4,i)=d;                                              %   "
        	DH_D(4,1,i)=0;                                              %   "
        	DH_D(4,2,i)=0;                                              %   "
        	DH_D(4,3,i)=0;                                              %   "
        	DH_D(4,4,i)=1;                                              %   "
            Ref_D(:,:,i+1)=Ref_D(:,:,i)*DH_D(:,:,i);                    % Obtenho o referencial seguinte
            centromassa_D(:,i)=Ref_D(:,:,i+1)*cmassa(:,i+inicio-1);     % centros de massas locais
end;                                                                    %   
                                                                        %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% DESENHO DE MANIPULADOR 
        Camara=Ref_D(:,:,n_elos+1)*[0 0 0;0 -30 0;-10 0 10;1 1 1];      % Mao (configuraçao)
        fill3(Camara(1,:),Camara(2,:),Camara(3,:),'y');                 % desenha Mao
        aux(:,:)=Ref_D(:,4,:);                                          % auxiliar para desenho
        plot3(aux(1,:),aux(2,:),aux(3,:));                              % desenho os elos
        plot3(aux(1,2:n_elos),aux(2,2:n_elos),aux(3,2:n_elos),'bo');    % desenha juntas
        plot3(centromassa_D(1,1:n_elos),centromassa_D(2,1:n_elos),centromassa_D(3,1:n_elos),'rx'); %desenha centros de massa (locais)
                                                                        %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% VALORES DE SAIDA                                                                           
Ref(:,:,inicio:inicio-1+n_elos)=Ref_D(:,:,2:n_elos+1);                  % Referenciais
centromassa(:,inicio:inicio-1+n_elos)=centromassa_D(:,1:n_elos);        % Centros de massa