public static void DesenharEsqueletoUsuario( this SkeletonFrame pQuadro, KinectSensor pKinectSensor, Canvas pCanvasParaDesenhar) { if (pKinectSensor == null) throw new ArgumentNullException("kinectSensor"); if (pCanvasParaDesenhar == null) throw new ArgumentNullException("canvasParaDesenhar"); Skeleton lEsqueleto = ObterEsqueletoUsuario(pQuadro); if (lEsqueleto != null) { EsqueletoUsuarioAuxiliar lEsqueletoUsuarioAuxiliar = new EsqueletoUsuarioAuxiliar(pKinectSensor); foreach (BoneOrientation lOsso in lEsqueleto.BoneOrientations) { lEsqueletoUsuarioAuxiliar.DesenharOsso( lEsqueleto.Joints[lOsso.StartJoint], lEsqueleto.Joints[lOsso.EndJoint], pCanvasParaDesenhar); lEsqueletoUsuarioAuxiliar.DesenharArticulacao( lEsqueleto.Joints[lOsso.EndJoint], pCanvasParaDesenhar); } } }
public static void DesenharEsqueletoUsuario (this SkeletonFrame quadro, KinectSensor kinectSensor, Canvas canvasParaDesenhar) { if (kinectSensor == null) { throw new ArgumentNullException("kinectSensor"); } if (canvasParaDesenhar == null) { throw new ArgumentNullException("canvasParaDesenhar"); } Skeleton esqueleto = ObterEsqueletoUsuario(quadro); if (esqueleto != null) { EsqueletoUsuarioAuxiliar esqueletoUsuarioAuxiliar = new EsqueletoUsuarioAuxiliar(kinectSensor); foreach (BoneOrientation osso in esqueleto.BoneOrientations) { esqueletoUsuarioAuxiliar .DesenharOsso(esqueleto.Joints[osso.StartJoint], esqueleto.Joints[osso.EndJoint], canvasParaDesenhar); esqueletoUsuarioAuxiliar.DesenharArticulacao(esqueleto.Joints[osso.EndJoint], canvasParaDesenhar); } } }
private void DesenharEsqueletoUsuario(SkeletonFrame quadro) { if (quadro == null) { return; } using (quadro) { Skeleton[] esqueletos = new Skeleton[quadro.SkeletonArrayLength]; quadro.CopySkeletonDataTo(esqueletos); IEnumerable <Skeleton> esqueletosRastreados = esqueletos.Where(esqueleto => esqueleto.TrackingState == SkeletonTrackingState.Tracked); if (esqueletosRastreados.Count() > 0) { Skeleton esqueleto = esqueletosRastreados.First(); EsqueletoUsuarioAuxiliar funcoesEsqueletos = new EsqueletoUsuarioAuxiliar(kinect); funcoesEsqueletos.DesenharArticulacao(esqueleto.Joints[JointType.HandRight], canvasKinect); funcoesEsqueletos.DesenharArticulacao(esqueleto.Joints[JointType.HandLeft], canvasKinect); } } }