Microsoft.Samples.Kinect.RecordAndPlaybackBasics.KinectBodyView.DrawBone C# (CSharp) Метод

DrawBone() приватный Метод

Draws one bone of a body (joint to joint)
private DrawBone ( Joint>.IReadOnlyDictionary joints, Point>.IDictionary jointPoints, JointType jointType0, JointType jointType1, System.Windows.Media.DrawingContext drawingContext, System.Windows.Media.Pen drawingPen ) : void
joints Joint>.IReadOnlyDictionary joints to draw
jointPoints Point>.IDictionary translated positions of joints to draw
jointType0 JointType first joint of bone to draw
jointType1 JointType second joint of bone to draw
drawingContext System.Windows.Media.DrawingContext drawing context to draw to
drawingPen System.Windows.Media.Pen specifies color to draw a specific bone
Результат void
        private void DrawBone(IReadOnlyDictionary<JointType, Joint> joints, IDictionary<JointType, Point> jointPoints, JointType jointType0, JointType jointType1, DrawingContext drawingContext, Pen drawingPen)
        {
            Joint joint0 = joints[jointType0];
            Joint joint1 = joints[jointType1];

            // If we can't find either of these joints, exit
            if (joint0.TrackingState == TrackingState.NotTracked ||
                joint1.TrackingState == TrackingState.NotTracked)
            {
                return;
            }

            // We assume all drawn bones are inferred unless BOTH joints are tracked
            Pen drawPen = this.inferredBonePen;
            if ((joint0.TrackingState == TrackingState.Tracked) && (joint1.TrackingState == TrackingState.Tracked))
            {
                drawPen = drawingPen;
            }

            drawingContext.DrawLine(drawPen, jointPoints[jointType0], jointPoints[jointType1]);
        }