code: public void setLocalMatrix(int boneindex, Matrix4f mtx)
      {
          Bone	  bone = mBones[boneindex];
          int		  parentid = mSkeleton.getParentBoneIndex(boneindex);
  
          bone.LocalMatrix.set(mtx);
          bone.Changed = Bone.LOCAL_ROT;
          if (parentid < 0)
          {
              bone.WorldMatrix.set(bone.LocalMatrix);
          }
          else
          {
              mNeedSync = true;
          }
          if (sDebug)
          {
  
              Log.d("BONE",
                    "setLocalMatrix: %s %s",
                    mSkeleton.getBoneName(boneindex),
                    bone.toString());
          }
      }
docs: Set the local matrix for this bone (relative to parent bone).
  <p>
  All bones in the skeleton start out at the origin oriented along the bone axis (usually 0,0,1).
  The pose orients and positions each bone in the skeleton with respect to this initial state.
  The local bone matrix expresses the orientation and position of the bone relative
  to the parent of this bone.
  @param boneindex	zero based index of bone to set matrix for.
  @param mtx		new bone matrix.
  @see #getLocalRotation
  @see #setWorldRotation
  @see #getWorldMatrix