2013-07-02 107 views
0

我开始与kinect的旅程,我有一些问题,我尝试从教程学习,我选择了这一个here,但我有DrawTrackedBoneLine和DrawClipedEdges的声明应该如何应对被声明为正常工作Kinect正确绘图功能

private void DrawBone(Joint jointFrom, Joint jointTo) 
    { 
     Brush bone = null; 
     Brush TrackedBone = new SolidColorBrush(Color.FromArgb(132, 54, 63, 78)); 
     Brush NonTracked = new SolidColorBrush(Color.FromArgb(45, 36, 23, 12)); 
     if (jointFrom.TrackingState == JointTrackingState.NotTracked || 
     jointTo.TrackingState == JointTrackingState.NotTracked) 
     { 
      return; // nothing to draw, one of the joints is not tracked 
     } 

     if (jointFrom.TrackingState == JointTrackingState.Inferred || 
     jointTo.TrackingState == JointTrackingState.Inferred) 
     { 

      DrawNonTrackedBoneLine (jointFrom.Position, jointTo.Position); // Draw thin lines if either one of the joints is inferred 
     } 

     if (jointFrom.TrackingState == JointTrackingState.Tracked && 
     jointTo.TrackingState == JointTrackingState.Tracked) 
     { 
      DrawTrackedBoneLine(jointFrom.Position, jointTo.Position); // Draw bold lines if the joints are both tracked 
     } 
    } 

    private void RenderClippedEdges(Skeleton skeleton) 
    { 

     if (skeleton.ClippedEdges.HasFlag(FrameEdges.Bottom)) 
     { 
      DrawClippedEdges(FrameEdges.Bottom); // Make the border red to show the user is reaching the border 
     } 

     if (skeleton.ClippedEdges.HasFlag(FrameEdges.Top)) 
     { 
      DrawClippedEdges(FrameEdges.Top); 
     } 

     if (skeleton.ClippedEdges.HasFlag(FrameEdges.Left)) 
     { 
      DrawClippedEdges(FrameEdges.Left); 
     } 

     if (skeleton.ClippedEdges.HasFlag(FrameEdges.Right)) 
     { 
      DrawClippedEdges(FrameEdges.Right); 
     } 
    } 

我选址和用刷子努力,但它不能正常工作,它说:“这个名字‘DrawTrackedBoneLine’不在当前情况下存在”其明显的视觉是正确的,但如何解决它

回答

0

您还没有声明函数DrawTrackedBoneLine,因此它'不存在于当前情境“。我认为msdn上的代码只是一个例子,你必须自己研究如何完成绘图。

开始通过声明功能:

private void DrawTrackedBoneLine(SkeletonPoint positionFrom, SkeletonPoint positionTo) 
{ 
    // Code goes here 
} 

private void DrawNonTrackedBoneLine(SkeletonPoint positionFrom, SkeletonPoint positionTo) 
{ 
    // Code goes here 
}