| changeset 7 | 8a21bec5d45f |
| parent 6 | 93dfb08dcc97 |
| child 8 | e4e7db2435f8 |
| 6:93dfb08dcc97 | 7:8a21bec5d45f |
|---|---|
116 */ |
116 */ |
117 public KinectMain() |
117 public KinectMain() |
118 { |
118 { |
119 //On fait appel au gestionnaire de ressources. |
119 //On fait appel au gestionnaire de ressources. |
120 rm = new ResourceManager("Trakers.Properties.resources", Assembly.GetExecutingAssembly()); |
120 rm = new ResourceManager("Trakers.Properties.resources", Assembly.GetExecutingAssembly()); |
121 //On crée la fenêtre de debug. |
|
122 debug = new Debug.DebugWindow(this); |
|
123 |
121 |
124 //On tente de charger les paramètres du fichier params.ini. |
122 //On tente de charger les paramètres du fichier params.ini. |
125 //Si on n'y arrive pas, on affiche une erreur et on charge les paramètres par défaut. |
123 //Si on n'y arrive pas, on affiche une erreur et on charge les paramètres par défaut. |
126 if (!loadParameters()) |
124 if (!loadParameters()) |
127 { |
125 { |
134 zeroPoint = 1.7f; |
132 zeroPoint = 1.7f; |
135 connexionHost = "127.0.0.1"; |
133 connexionHost = "127.0.0.1"; |
136 connexionPort = 80; |
134 connexionPort = 80; |
137 timerElapsing = 1000; |
135 timerElapsing = 1000; |
138 } |
136 } |
137 |
|
138 //On crée la fenêtre de debug. |
|
139 debug = new Debug.DebugWindow(this); |
|
139 |
140 |
140 //On crée les détecteurs de gestes. |
141 //On crée les détecteurs de gestes. |
141 swipeDetector = new SwipeDetector(debug); |
142 swipeDetector = new SwipeDetector(debug); |
142 pushDetector = new PushDetector(debug); |
143 pushDetector = new PushDetector(debug); |
143 jumpDetector = new JumpDetector(debug); |
144 jumpDetector = new JumpDetector(debug); |
393 else |
394 else |
394 { |
395 { |
395 RightHandQuitEventArgs rightHandQuitEvent = new RightHandQuitEventArgs(handRight, handRight.Position.Z, debug, server); |
396 RightHandQuitEventArgs rightHandQuitEvent = new RightHandQuitEventArgs(handRight, handRight.Position.Z, debug, server); |
396 OnRightHandQuitEvent(rightHandQuitEvent); |
397 OnRightHandQuitEvent(rightHandQuitEvent); |
397 } |
398 } |
398 |
399 |
399 //Si l'utilisateur effectue un swipe left. |
400 //Si l'utilisateur effectue un swipe left. |
400 if (swipeDetector.CheckForSwipeLeft()) |
401 if (swipeDetector.CheckForSwipeLeft()) |
401 { |
402 { |
402 SwipeEventArgs swipeEvent = new SwipeEventArgs(debug, server, SwipeDetector.Direction.LEFT); |
403 SwipeEventArgs swipeEvent = new SwipeEventArgs(debug, server, SwipeDetector.Direction.LEFT); |
403 OnSwipeEvent(swipeEvent); |
404 OnSwipeEvent(swipeEvent); |
432 OnJumpEvent(jumpEvent); |
433 OnJumpEvent(jumpEvent); |
433 }*/ |
434 }*/ |
434 |
435 |
435 //Si l'utilisateur se déplace dans la zone de détection. |
436 //Si l'utilisateur se déplace dans la zone de détection. |
436 //On traite le problème en plusieurs limites, on discrétise la zone. |
437 //On traite le problème en plusieurs limites, on discrétise la zone. |
437 if(first.TrackingState == SkeletonTrackingState.Tracked) |
438 if (first.TrackingState == SkeletonTrackingState.Tracked) |
438 { |
439 { |
439 float proximity = userPositionDetector.CalcProximity(first.Position.Z); |
440 float proximity = userPositionDetector.CalcProximity(first.Position.Z); |
440 /*if (proximity > 0f && proximity < 25f) |
|
441 { |
|
442 Console.Out.WriteLine("1/4"); |
|
443 |
|
444 } |
|
445 else if (proximity > 25f && proximity < 50f) |
|
446 { |
|
447 Console.Out.WriteLine("1/2"); |
|
448 |
|
449 } |
|
450 else if (proximity > 50f && proximity < 75f) |
|
451 { |
|
452 Console.Out.WriteLine("3/4"); |
|
453 |
|
454 } |
|
455 else if (proximity == 100f) |
|
456 { |
|
457 Console.Out.WriteLine("TRUE"); |
|
458 |
|
459 }*/ |
|
460 |
441 |
461 if (proximity > 0f) |
442 if (proximity > 0f) |
462 { |
443 { |
463 UserPositionEventArgs userPositionEvent = new UserPositionEventArgs(debug, server, proximity); |
444 UserPositionEventArgs userPositionEvent = new UserPositionEventArgs(debug, server, proximity); |
464 OnUserPositionEvent(userPositionEvent); |
445 OnUserPositionEvent(userPositionEvent); |
465 } |
446 } |
466 else |
447 else |
448 { |
|
467 Console.Out.WriteLine("FAIL"); |
449 Console.Out.WriteLine("FAIL"); |
450 debug.hideSkeleton(); |
|
451 } |
|
468 } |
452 } |
469 |
453 |
470 //Dessine le squelette dans le debug. |
454 //Dessine le squelette dans le debug. |
471 debug.drawJoints(first.Joints, first); |
455 debug.drawJoints(first.Joints, first); |
472 debug.showSkeleton(hipCenter, spine, shoulderCenter, head, shoulderLeft, elbowLeft, wristLeft, handLeft, shoulderRight, elbowRight, wristRight, handRight, hipLeft, kneeLeft, ankleLeft, footLeft, hipRight, kneeRight, ankleRight, footRight); |
456 debug.showSkeleton(hipCenter, spine, shoulderCenter, head, shoulderLeft, elbowLeft, wristLeft, handLeft, shoulderRight, elbowRight, wristRight, handRight, hipLeft, kneeLeft, ankleLeft, footLeft, hipRight, kneeRight, ankleRight, footRight); |
473 } |
457 } |
458 else |
|
459 debug.hideSkeleton(); |
|
474 } |
460 } |
475 |
461 |
476 /* |
462 /* |
477 * Change l'échelle des coordonnées d'un noeud pour qu'en X et Y il corresponde à la résolution et en Z à la distance à la Kinect. |
463 * Change l'échelle des coordonnées d'un noeud pour qu'en X et Y il corresponde à la résolution et en Z à la distance à la Kinect. |
478 */ |
464 */ |