public DrawingImage DrawSkeleton(SkeletonEventArgs jointPositions) { DrawingGroup drawingGroup = new DrawingGroup(); DrawingImage image = new DrawingImage(drawingGroup); var leftHand = jointPositions.LeftHandPosition; var rightHand = jointPositions.RightHandPosition; using (DrawingContext dc = drawingGroup.Open()) { dc.DrawRectangle(Brushes.Transparent, null, new Rect(0.0, 0.0, 640, 480)); var actionPointsToDraw = ActionPoints.GetActionPoints(); foreach (var actionPoint in actionPointsToDraw) { dc.DrawEllipse(_actionPointBrush, null, new Point(actionPoint.X, actionPoint.Y), actionPoint.Radius, actionPoint.Radius); } if (leftHand != null && rightHand != null) { dc.DrawEllipse(_rightHandBrush, null, PointToScreen(rightHand), HandCenterThickness, HandCenterThickness); dc.DrawEllipse(_leftHandBrush, null, PointToScreen(leftHand), HandCenterThickness, HandCenterThickness); } } return(image); }
public PositionChecker(IKinectService kinectService) { _kinectService = kinectService; _kinectService.SkeletonUpdated += _kinectService_SkeletonUpdated; _actionPointsToCheck = ActionPoints.GetActionPoints(); }